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.com
nachschlagen hostname.example.com
und 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 ( hostname
ist eine, CNAME
wenn es darauf ankommt). Ich konnte das nicht verstehen, also suchte ich herum und fand den dig
Befehl:
dig @ns1.example-nameserver.com hostname.example.com
Soweit ich das beurteilen kann, funktioniert dies genauso wie der host
Befehl - 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 host
und 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
dig
und host
Bericht NXDOMAIN
. Mit dig
können Sie es in der Kopfzeile (5. nicht leere Zeile der Ausgabe) sehen und mit ist host
es offensichtlicher. NXDOMAIN
bedeutet, dass die Domain nicht existiert. Im CNAME
Antwortbereich wird jedoch a zurückgegeben! Ich glaube, das ist ein Fehler im DNS-Server!
dig
und host
beide senden genau die gleiche Abfrage - Paket, erhält genau die gleiche Antwortpaket (abgesehen von irgendwelchen Zeitstempeln), aber es anders interpretieren? Wird host
gerettet, sobald es sieht NXDOMAIN
?