Nslookup und CMD

Notizen zum ausführen von nslookup in der Windows CLI

Mit dem Befehl “nslookup” kann ein DNS Namen aufgelöst werden. Wenn eine Liste von Hosts abgefragt werden sollen, kann das in der Windows CLI “CMD” mit dem Befehl For elegant gelöst werden.

Bei der Abfrage über Nslookup muss berücksichtigt werden, ob man lokale Admin hat und die CS DNS Subdomains hinzufügen konnte. Andernfalls muss jede Hostabfrage mit der Subdomain ergänzt werden. Beispiel mit dem Hostname “zuerich1351”.

nslookup zuerich1351
nslookup zuerich1351.link.haus.net

Eine Eingabe darf die maximale Länge von 255 Byte nicht überschreiten. D.h. das ist die Limite, wie viele Hosts in einem Befehl geprüft werden können.

Maximale Länge überschreiten

Um die Limite von 255 Byte pro Eingabe zu umgehen, schreibt man die Namen in eine Textdatei. Z.B. mit dem Namen «device.txt». Mit diesen Parametern werden die Hosts geprüft und das Ergebnis in die Datei «results.txt» geschrieben. In dieser Konstellation müssen es zwei «»» Umleitungszeichen sein, da sonst jeder Durchgang die Datei überschreibt.

for /f "delims=" %a in (device.txt) do NSLOOKUP %a >> results.txt

Natürlich funktioniert dieses Prinzip mit der Forward-Lookup-Zone als auch Reverse-Lookup-Zone. Und den verschiedenen Parametern von nslookup:

for /f "delims=" %a in (domains.txt) do nslookup -type=cname %a >> results.txt
for /f "delims=" %a in (domains.txt) do nslookup -q=cname %a >> results.txt

Für “For” muss beachtet werden, dass wenn man den Befehl in einer Batchdatei verwendet, muss das Prozentzeichen vor dem Parameter verdoppelt werden:

for /f "delims=" %%a in (device.txt) do NSLOOKUP %%a >> results.txt

Ausgabe

Mit dem Befehl «find» nach einem Pipe ( | ) kann die Ausgabe gefiltert werden. Fehlermeldungen werden nicht unterdrückt. Wie hier sieht, sollen nur Zeilen ausgegeben werden, die den Text «zuerich13» beinhalten:

for /f "delims=" %a in (device.txt) do NSLOOKUP %a | find "zuerich13" >> results.txt

“Find” differenziert zwischen Gross- Kleinschreibung. Kann über den Parameter “-i” ausgeschalten werden.
Fehlermeldungen werden auf dem Bildschirm trotz Filter angezeigt. Jedoch nicht in die Textdatei geschrieben.

Resourcen

Written on August 31, 2021