DNS - NSLOOKUP ¿cuál es el significado de la respuesta no autorizada?


117

Para algunos dominios nslookupme da una Non-authoritative answersección. ¿Qué significa esto?

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

14
www.xxx.com no es realmente un nombre de dominio de ejemplo jaja;) ... RFC sugiere que use example.com. ver iana.org/domains/reserved
Mzn

Respuestas:


99

Básicamente, es lo que el nombre dice que es. Una respuesta autorizada proviene de un servidor de nombres que se considera autorizado para el dominio para el que está devolviendo un registro (uno de los servidores de nombres en la lista para el dominio en el que realizó una búsqueda), y una respuesta no autorizada proviene de cualquier otro lugar (un el servidor de nombres no está en la lista para el dominio en el que realizó una búsqueda).

Básicamente es una distinción entre un servidor de nombres que es un servidor de nombres oficial para el dominio que está consultando y un servidor de nombres que no lo es. Los servidores de nombres que no tienen autoridad obtienen sus respuestas de segunda mano (o tercera o cuarta ...), simplemente transmitiendo la información desde otro lugar.

Entonces, por ejemplo, si hiciera una búsqueda n de maps.google.comahora, obtendría una respuesta de uno de mis servidores de nombres configurados. (Ya sea de mi ISP o de mi dominio). Volvería como no autorizado porque ni los servidores de nombres de mi ISP ni los míos están en la lista de servidores de nombres google.com. No son los servidores de nombres de Google, por lo que no son la fuente autorizada que crea los registros NS.

La lista de servidores de nombres autorizados para Google se encuentra a continuación (de whois.internic.net).

Nombre de dominio: GOOGLE.COM

Secretario: MARKMONITOR INC.

Servidor Whois: whois.markmonitor.com

Servidor de nombres: NS1.GOOGLE.COM

Servidor de nombres: NS2.GOOGLE.COM

Servidor de nombres: NS3.GOOGLE.COM

Servidor de nombres: NS4.GOOGLE.COM

Fecha de actualización: 20-jul-2011

Fecha de creación: 15-sep-1997

Fecha de vencimiento: 14-sep-2020

Si cambiara mi servidor DNS configurado a uno de los de esa lista, y luego hiciera una nslookupcontra maps.google.com, obtendría una respuesta autorizada. Esos servidores son la autoridad (o fuente) de lo que son nombres válidos en los dominios de Google y cuáles no. Todos los demás servidores de nombres, servidores de nombres no autorizados, obtienen sus registros NS de los servidores autorizados en algún lugar de la línea.


35

La respuesta que ha recibido es esencialmente una respuesta en caché o reenviada de su servidor DNS local. Básicamente, un servidor de nombres no autorizado es uno que no contiene los registros de la zona que se está consultando; es probable que su DNS local no tenga registros de nombres de Google, por ejemplo.

Puede obtener los servidores de nombres que tienen autoridad para un dominio determinado ejecutando host -t ns example.compara recuperar el registro NS por ejemplo.com.

En el caso de Google, vemos:

$ 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 posteriormente ejecuta su nslookupcomando contra uno de esos servidores, obtendrá la respuesta autorizada:

$ 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 está utilizando nslookup, para obtener el tipo de registro NS, puede ejecutar algo como esto en modo interactivo:

$ 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

Entonces, la configuración querytype=nshace lo que hizo el hostcomando anterior .


solo curiosidad ... ¿qué #significa en Address: 127.0.0.1#53?
cwhsu

Adivina por el puerto de escucha, ¿verdad? Como lo que se dice aquí nlp.stanford.edu/IR-book/html/htmledition/dns-resolution-1.html
cwhsu

24

La respuesta no autorizada simplemente significa que la respuesta no se obtiene del servidor DNS autorizado para el nombre de dominio consultado.

Primero tienes que entender cómo funciona el sistema DNS. El sistema DNS se puede dividir en tres niveles. Son:

  • servidores DNS raíz
  • servidores DNS de dominio de nivel superior
  • servidores DNS autorizados

Hay otra clase de Servidor DNS que generalmente se llama servidor DNS local cuya dirección IP se especifica en su sistema operativo.

Cuando su navegador se conecta a un sitio web, por ejemplo, example.com, primero consulta su servidor DNS local para obtener la dirección IP de example.com.

  • Si el servidor DNS local no tiene el registro A de example.com, consultará a uno de los servidores DNS raíz.

  • El servidor DNS raíz dirá: No tengo el registro A pero sé el servidor DNS de dominio de nivel superior que es responsable de los dominios .com.

  • Luego, su servidor DNS local consulta el servidor DNS de dominio de nivel superior que es responsable de los dominios .com. El servidor DNS de TLD responderá: yo tampoco lo sé pero sé qué servidor DNS tiene autoridad para example.com.

  • Entonces, su servidor DNS local consulta al servidor DNS autorizado. Debido a que el registro DNS real se almacena en ese servidor DNS autorizado, le dará una respuesta a su servidor DNS local.

Luego, el resultado de esta consulta se almacena en caché en su servidor DNS local, pero puede estar desactualizado. Cuando haya expirado el tiempo TTL, su servidor DNS local actualizará el resultado de la consulta desde el servidor DNS autorizado. Cada vez que consulta un registro DNS en su servidor DNS local, devuelve una respuesta no autorizada (no oficial). Si desea una respuesta autorizada, debe especificar explícitamente el servidor DNS autorizado cuando utiliza nslookup u otras utilidades. Creo que un servidor DNS local debería llamarse servidor DNS de almacenamiento en caché.

Cuando alguien registra un nombre de dominio, él / ella puede especificar qué servidor DNS es el servidor DNS autorizado. Esta información se llama registro NS. El registro NS le dirá a un servidor DNS de dominio de nivel superior qué servidor de nombres contiene el registro A del dominio, el registro MX, etc.


44
Esto explicaba mucho más que todas las otras respuestas combinadas. Explicar la topología de cómo funciona DNS es extremadamente útil para proporcionar contexto para este problema.
Levi Roberts

1

Desde 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

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.