Ich habe diesen Befehl verwendet, um zu überprüfen, ob ich die Einstellungen bei einem DNS-Anbieter korrekt vorgenommen habe:
host hostname.example.com ns1.example-nameserver.com
Soweit ich das beurteilen kann, fragt diese ns1.example-nameserver.comnachschlagen hostname.example.comund meldet die Antwort. Ich erhielt eine Antwort, die vom Host nicht gefunden wurde, und dachte, ich hätte es falsch gemacht. Ohne Angabe des Nameservers (damit der Nameserver meines ISP nachschlagen kann) erhielt ich jedoch die richtige Antwort ( hostnameist eine, CNAMEwenn es darauf ankommt). Ich konnte das nicht verstehen, also suchte ich herum und fand den digBefehl:
dig @ns1.example-nameserver.com hostname.example.com
Soweit ich das beurteilen kann, funktioniert dies genauso wie der hostBefehl - fordert einen bestimmten Nameserver auf, einen Host nachzuschlagen. Ich komme daher zu dem Schluss, dass sie es irgendwie anders machen müssen und dass das Zwischenspeichern von Nameservern dieselbe Methode wie verwenden muss dig.
Meine Schlussfolgerung ist entweder richtig oder falsch, wenn es richtig ist:
Was ist der Unterschied zwischen diesen beiden Suchmethoden?
Wenn es falsch ist:
Was sind meine Missverständnisse über DNS und die Befehle hostund dig, die mich zu dieser Schlussfolgerung geführt haben?
Beispielausgabe:
$ host cardiff.tzmchapters.org ns1.livedns.co.uk
Using domain server:
Name: ns1.livedns.co.uk
Address: 213.171.192.250#53
Aliases:
Host cardiff.tzmchapters.org not found: 3(NXDOMAIN)
$ dig @ns1.livedns.co.uk cardiff.tzmchapters.org
; <<>> DiG 9.8.3-P1 <<>> @ns1.livedns.co.uk cardiff.tzmchapters.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 23620
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;cardiff.tzmchapters.org. IN A
;; ANSWER SECTION:
cardiff.tzmchapters.org. 3600 IN CNAME ghs.google.com.
;; AUTHORITY SECTION:
google.com. 3600 IN SOA ns1.livedns.co.uk. admin.google.com. 1354213742 10800 3600 604800 3600
;; Query time: 27 msec
;; SERVER: 213.171.192.250#53(213.171.192.250)
;; WHEN: Mon Apr 22 23:47:05 2013
;; MSG SIZE rcvd: 128
digund hostBericht NXDOMAIN. Mit digkönnen Sie es in der Kopfzeile (5. nicht leere Zeile der Ausgabe) sehen und mit ist hostes offensichtlicher. NXDOMAINbedeutet, dass die Domain nicht existiert. Im CNAMEAntwortbereich wird jedoch a zurückgegeben! Ich glaube, das ist ein Fehler im DNS-Server!
digund hostbeide senden genau die gleiche Abfrage - Paket, erhält genau die gleiche Antwortpaket (abgesehen von irgendwelchen Zeitstempeln), aber es anders interpretieren? Wird hostgerettet, sobald es sieht NXDOMAIN?