J'utilisais cette commande pour vérifier si j'avais configuré correctement les choses avec un fournisseur DNS:
host hostname.example.com ns1.example-nameserver.com
Pour autant que je sache, cela demande ns1.example-nameserver.com
de rechercher hostname.example.com
et de rapporter la réponse. J'obtenais une réponse d'hôte introuvable alors j'ai pensé que je l'avais mal fait. Cependant, sans préciser leur nom serveur (ce qui permet nom serveur de mon fournisseur d' accès Internet pour le rechercher) Je suis la bonne réponse ( hostname
est un CNAME
si elle importe). Je ne pouvais pas comprendre cela, j'ai donc cherché et trouvé la dig
commande:
dig @ns1.example-nameserver.com hostname.example.com
Pour autant que je sache, cela fait la même chose que la host
commande - demande à un serveur de noms spécifique de rechercher un hôte. Je conclus donc qu'ils doivent le faire différemment et que la mise en cache des serveurs de noms doit utiliser la même méthode que dig
.
Ma conclusion est bonne ou mauvaise, si elle est juste:
Quelle est la différence entre ces deux méthodes de recherche?
Si c'est faux:
Quels sont mes malentendus à propos du DNS et des commandes host
et dig
qui m'ont conduit à cette conclusion?
Exemple de sortie:
$ 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
et host
signalez NXDOMAIN
. Avec dig
vous pouvez le voir dans l'en-tête (5ème ligne non vierge de la sortie) et avec host
c'est plus évident. NXDOMAIN
signifie que le domaine n'existe pas. Pourtant, un CNAME
est retourné dans la section réponse! Je crois que c'est un bug dans le serveur DNS!
dig
que les host
deux envoient exactement le même paquet de requête, obtiennent exactement le même paquet de réponse (à part les horodatages), mais l'interprètent différemment? host
Renfloue- t-il dès qu'il voit NXDOMAIN
?