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.comde rechercher hostname.example.comet 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 ( hostnameest un CNAMEsi elle importe). Je ne pouvais pas comprendre cela, j'ai donc cherché et trouvé la digcommande:
dig @ns1.example-nameserver.com hostname.example.com
Pour autant que je sache, cela fait la même chose que la hostcommande - 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 hostet digqui 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
          diget hostsignalez NXDOMAIN. Avec digvous pouvez le voir dans l'en-tête (5ème ligne non vierge de la sortie) et avec hostc'est plus évident. NXDOMAINsignifie que le domaine n'existe pas. Pourtant, un CNAMEest retourné dans la section réponse! Je crois que c'est un bug dans le serveur DNS!
                digque les hostdeux 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? hostRenfloue- t-il dès qu'il voit NXDOMAIN?