DNS - NSLOOKUP Quel est le sens de la réponse ne faisant pas autorité?

117

Pour certains domaines, nslookupme donne une Non-authoritative answersection. Qu'est-ce que ça veut dire?

Got answer:
    HEADER:
        opcode = QUERY, id = 3, rcode = NXDOMAIN
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 0,  authority records = 1,  additional =

    QUESTIONS:
        www.ssss.com.SME, type = AAAA, class = IN
    AUTHORITY RECORDS:
    ->  (root)
        ttl = 1787 (29 mins 47 secs)
        primary name server = a.root-servers.net
        responsible mail addr = nstld.verisign-grs.com

------------
Non-authoritative answer:
------------

------------
Name:    example.com
Address:  93.184.216.34
Aliases:  www.example.com
utilisateur1179459
la source
14
www.xxx.com n'est pas vraiment un exemple de nom de domaine haha;) ... RFC vous suggère d'utiliser exemple.com. voir iana.org/domains/reserved
Mzn

Réponses:

99

Fondamentalement, c'est ce que son nom l'indique. Une réponse faisant autorité provient d'un serveur de noms considéré comme faisant autorité pour le domaine pour lequel il renvoie un enregistrement (l'un des serveurs de noms de la liste du domaine sur lequel vous avez effectué une recherche), et une réponse ne faisant pas autorité provient de n'importe où serveur de noms ne figurant pas dans la liste du domaine sur lequel vous avez effectué une recherche).

Il s’agit essentiellement d’une distinction entre un serveur de noms qui est un serveur de noms officiel pour le domaine que vous interrogez et un serveur de noms qui ne l’est pas. Les serveurs de noms qui ne font pas autorité obtiennent leurs réponses en deuxième (ou troisième ou quatrième ...) main - il suffit de relayer les informations d'un autre endroit.

Ainsi, par exemple, si je faisais un nslookup maps.google.comdès maintenant, je recevrais une réponse de l’un de mes serveurs de noms configurés. (Soit de mon fournisseur de services Internet, soit de mon domaine.) Cela ne reviendrait pas comme faisant autorité car ni les serveurs de noms de mon fournisseur de services Internet, ni le mien ne figurent dans la liste des serveurs de noms pour google.com. Ils ne sont pas les serveurs de noms de Google. Ils ne sont donc pas la source faisant autorité qui crée les enregistrements NS.

La liste des serveurs de noms faisant autorité pour Google est présentée ci-dessous (à partir de whois.internic.net).

Nom de domaine: GOOGLE.COM

Bureau d'enregistrement: MARKMONITOR INC.

Serveur Whois: whois.markmonitor.com

Serveur de noms: NS1.GOOGLE.COM

Serveur de noms: NS2.GOOGLE.COM

Serveur de noms: NS3.GOOGLE.COM

Serveur de noms: NS4.GOOGLE.COM

Date de mise à jour: 20 juillet 2011

Date de création: 15-sep-1997

Date d'expiration: 14-Sep-2020

Si je remplaçais mon serveur DNS configuré par l'un de ceux figurant dans cette liste et que je faisais ensuite un nslookupcontre maps.google.com, je recevrais une réponse faisant autorité. Ces serveurs constituent l'autorité (ou la source) pour ce qui est un nom valide dans le domaine de Google et ce qui ne l'est pas. Tous les autres serveurs de noms, serveurs de noms non faisant autorité, extraient leurs enregistrements NS des serveurs faisant autorité quelque part dans la ligne.

HopelessN00b
la source
35

La réponse que vous avez reçue est essentiellement une réponse mise en cache ou transférée de votre serveur DNS local. Fondamentalement, un serveur de noms ne faisant pas autorité est un serveur qui ne contient pas les enregistrements de la zone interrogée; votre DNS local n’aura probablement pas d’enregistrements de noms Google, par exemple.

Vous pouvez obtenir les serveurs de noms faisant autorité pour un domaine donné en exécutant l' host -t ns example.comextraction de l'enregistrement NS pour example.com.

Dans le cas de Google, on voit:

$ host -t ns google.com
google.com name server ns4.google.com.
google.com name server ns1.google.com.
google.com name server ns2.google.com.
google.com name server ns3.google.com.

Si vous exécutez ensuite votre nslookupcommande sur l’un de ces serveurs, vous obtiendrez la réponse faisant autorité:

$ nslookup www.google.com ns1.google.com
Server:         ns1.google.com
Address:        216.239.32.10#53

www.google.com  canonical name = www.l.google.com.
Name:   www.l.google.com
Address: 173.194.43.49
Name:   www.l.google.com
Address: 173.194.43.50
Name:   www.l.google.com
Address: 173.194.43.48
Name:   www.l.google.com
Address: 173.194.43.52
Name:   www.l.google.com
Address: 173.194.43.51

Si vous utilisez nslookup, pour obtenir le type d'enregistrement NS, vous pouvez exécuter quelque chose comme ceci en mode interactif:

$ nslookup
> set querytype=ns
> google.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
google.com      nameserver = ns3.google.com.
google.com      nameserver = ns4.google.com.
google.com      nameserver = ns1.google.com.
google.com      nameserver = ns2.google.com.

Authoritative answers can be found from:
ns1.google.com  internet address = 216.239.32.10

Donc, définir querytype=nsfait ce que la hostcommande ci-dessus a fait.

cjc
la source
juste curieux ... que #signifie- Address: 127.0.0.1#53t-il?
cwhsu
Devinez à cause du port d'écoute, n'est-ce pas? Comme ce qui est dit ici nlp.stanford.edu/IR-book/html/htmledition/dns-resolution-1.html
cwhsu
24

Une réponse ne faisant pas autorité signifie simplement que la réponse n'est pas extraite du serveur DNS faisant autorité pour le nom de domaine demandé.

Vous devez d’abord comprendre le fonctionnement du système DNS. Le système DNS peut être divisé en trois niveaux. Elles sont:

  • serveurs DNS racine
  • serveurs DNS de domaine de premier niveau
  • serveurs DNS faisant autorité

Il existe une autre classe de serveurs DNS, généralement appelée serveur DNS local, dont l'adresse IP est spécifiée sur votre système d'exploitation.

Lorsque votre navigateur se connecte à un site Web, par exemple exemple.com, le navigateur interroge d'abord votre serveur DNS local pour obtenir l'adresse IP de exemple.com.

  • Si le serveur DNS local ne possède pas l'enregistrement A de example.com, il interrogera l'un des serveurs DNS racine.

  • Le serveur DNS racine dira: Je n'ai pas l'enregistrement A mais je connais le serveur DNS de domaine de niveau supérieur responsable des domaines .com.

  • Ensuite, votre serveur DNS local interroge le serveur DNS de domaine de niveau supérieur responsable des domaines .com. Le serveur DNS TLD répondra: je ne sais pas non plus, mais je sais quel serveur DNS fait autorité pour example.com.

  • Votre serveur DNS local interroge donc le serveur DNS faisant autorité. Parce que l'enregistrement DNS réel est stocké sur ce serveur DNS faisant autorité, il donnera donc une réponse à votre serveur DNS local.

Ensuite, le résultat de la requête est mis en cache sur votre serveur DNS local, mais il peut être obsolète. Une fois le délai TTL écoulé, votre serveur DNS local met à jour le résultat de la requête à partir du serveur DNS faisant autorité. Chaque fois que vous interrogez un enregistrement DNS sur votre serveur DNS local, une réponse non officielle (non officielle) est renvoyée. Si vous souhaitez une réponse faisant autorité, vous devez spécifier explicitement le serveur DNS faisant autorité lorsque vous utilisez nslookup ou d'autres utilitaires. Je pense qu'un serveur DNS local devrait s'appeler la mise en cache du serveur DNS.

Lorsque quelqu'un enregistre un nom de domaine, il / elle peut spécifier quel serveur DNS est le serveur DNS faisant autorité. Cette information s'appelle un enregistrement NS. L'enregistrement NS indiquera au serveur DNS du domaine de niveau supérieur quel serveur de noms contient l'enregistrement A du domaine, l'enregistrement MX, etc.

LinuxBabe
la source
4
Cela explique beaucoup plus que toutes les autres réponses combinées. Expliquer la topologie du fonctionnement de DNS est extrêmement utile pour fournir un contexte à ce problème.
Levi Roberts
1

De Wireshark Lab: DNS v6.01 :However, nslookup also indicates that the answer is “non-authoritative,” meaning that this answer came from the cache of some server rather than from an authoritative MIT DNS server

TheLogicGuy
la source