web-dev-qa-db-fra.com

Processus de résolution DNS utilisant nslookup à partir de serveurs de noms racine

Je comprends en gros la théorie de la manière dont un résolveur DNS parcourt la hiérarchie des domaines pour interroger des serveurs de noms afin de résoudre un nom de domaine à partir de l’espace de noms racine. autre nom de domaine à titre d'exemple). Je comprends que je peux juste faire:

nslookup -type=ns google.com

qui renverra tous les serveurs de noms de google.com tels que ns1.google.com, ns2.google.com etc.

Cependant, ce que je veux faire à la place, c'est d'aller du domaine de niveau racine et d'accéder récursivement aux serveurs de noms de Google, comme ce qu'un résolveur DNS ferait normalement (en supposant qu'il n'y ait pas d'accès au cache).

Voici le processus que j'ai essayé:

  1. Commencez par obtenir les serveurs de noms de niveau racine:

    nslookup -type = ns.

    Cela renvoie les 13 serveurs racine et j'ai choisi l'un d'entre eux: 192.36.148.17

  2. Maintenant, j'interroge le serveur de noms racine du .com gTLD comme suit:

    nslookup -type = ns com 192.36.148.17

    Ceci retourne une liste de serveurs de noms, ie IP: 199.212.0.73

  3. J'utilise maintenant l'adresse IP du premier serveur de noms pour interroger les serveurs de noms du SLD:

    nslookup -type = ns google.com 199.212.0.73

Ici, j'aurais pensé que cela renverrait les serveurs de noms de google.com, mais je reçois des serveurs de noms tels que v.arin.net, u.arin.net, etc. Qu'est-ce qui me manque ici?

3
neodymium

Cela semble être dû au fait que vous utilisez l'adresse IP d'un arpa et non d'un serveur gtld à l'étape 3, vous trouverez ci-dessous ce que j'ai fait et semble bien fonctionner, utiliser n'importe quelle adresse IP de l'arpa renvoie le même résultat que celui rencontré.

1) nslookup -type = ns.

nslookup -type=ns .
Server:  google-public-dns-a.google.com
Address:  8.8.8.8

Non-authoritative answer:
(root)  nameserver = a.root-servers.net
(root)  nameserver = b.root-servers.net
(root)  nameserver = c.root-servers.net
(root)  nameserver = d.root-servers.net
(root)  nameserver = e.root-servers.net
(root)  nameserver = f.root-servers.net
(root)  nameserver = g.root-servers.net
(root)  nameserver = h.root-servers.net
(root)  nameserver = i.root-servers.net
(root)  nameserver = j.root-servers.net
(root)  nameserver = k.root-servers.net
(root)  nameserver = l.root-servers.net
(root)  nameserver = m.root-servers.net

2) Résoudre IP

Pinging i.root-servers.net [192.36.148.17] with 32 bytes of data:
Reply from 192.36.148.17: bytes=32 time=30ms TTL=53
Reply from 192.36.148.17: bytes=32 time=27ms TTL=53
Reply from 192.36.148.17: bytes=32 time=27ms TTL=53
Reply from 192.36.148.17: bytes=32 time=30ms TTL=53

Ping statistics for 192.36.148.17:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 27ms, Maximum = 30ms, Average = 28ms

) nslookup -type = ns com 192.36.148.17

nslookup -type=ns com 192.36.148.17
in-addr.arpa    nameserver = e.in-addr-servers.arpa
in-addr.arpa    nameserver = c.in-addr-servers.arpa
in-addr.arpa    nameserver = d.in-addr-servers.arpa
in-addr.arpa    nameserver = b.in-addr-servers.arpa
in-addr.arpa    nameserver = f.in-addr-servers.arpa
in-addr.arpa    nameserver = a.in-addr-servers.arpa
a.in-addr-servers.arpa  internet address = 199.212.0.73
a.in-addr-servers.arpa  AAAA IPv6 address = 2001:500:13::73
b.in-addr-servers.arpa  internet address = 199.253.183.183
b.in-addr-servers.arpa  AAAA IPv6 address = 2001:500:87::87
c.in-addr-servers.arpa  internet address = 196.216.169.10
c.in-addr-servers.arpa  AAAA IPv6 address = 2001:43f8:110::10
d.in-addr-servers.arpa  internet address = 200.10.60.53
d.in-addr-servers.arpa  AAAA IPv6 address = 2001:13c7:7010::53
e.in-addr-servers.arpa  internet address = 203.119.86.101
e.in-addr-servers.arpa  AAAA IPv6 address = 2001:dd8:6::101
f.in-addr-servers.arpa  internet address = 193.0.9.1
f.in-addr-servers.arpa  AAAA IPv6 address = 2001:67c:e0::1
Server:  UnKnown
Address:  192.36.148.17

com     nameserver = j.gtld-servers.net
com     nameserver = i.gtld-servers.net
com     nameserver = g.gtld-servers.net
com     nameserver = e.gtld-servers.net
com     nameserver = h.gtld-servers.net
com     nameserver = m.gtld-servers.net
com     nameserver = b.gtld-servers.net
com     nameserver = d.gtld-servers.net
com     nameserver = k.gtld-servers.net
com     nameserver = a.gtld-servers.net
com     nameserver = l.gtld-servers.net
com     nameserver = f.gtld-servers.net
com     nameserver = c.gtld-servers.net
a.gtld-servers.net      internet address = 192.5.6.30
a.gtld-servers.net      AAAA IPv6 address = 2001:503:a83e::2:30
b.gtld-servers.net      internet address = 192.33.14.30
b.gtld-servers.net      AAAA IPv6 address = 2001:503:231d::2:30
c.gtld-servers.net      internet address = 192.26.92.30
d.gtld-servers.net      internet address = 192.31.80.30
e.gtld-servers.net      internet address = 192.12.94.30
f.gtld-servers.net      internet address = 192.35.51.30
g.gtld-servers.net      internet address = 192.42.93.30
h.gtld-servers.net      internet address = 192.54.112.30
i.gtld-servers.net      internet address = 192.43.172.30
j.gtld-servers.net      internet address = 192.48.79.30
k.gtld-servers.net      internet address = 192.52.178.30
l.gtld-servers.net      internet address = 192.41.162.30
m.gtld-servers.net      internet address = 192.55.83.30

4) nslookup -type = ns google.com 192.5.6.

nslookup -type=ns google.com 192.5.6.30
(root)  nameserver = a.root-servers.net
(root)  nameserver = b.root-servers.net
(root)  nameserver = c.root-servers.net
(root)  nameserver = d.root-servers.net
(root)  nameserver = e.root-servers.net
(root)  nameserver = f.root-servers.net
(root)  nameserver = g.root-servers.net
(root)  nameserver = h.root-servers.net
(root)  nameserver = i.root-servers.net
(root)  nameserver = j.root-servers.net
(root)  nameserver = k.root-servers.net
(root)  nameserver = l.root-servers.net
(root)  nameserver = m.root-servers.net
Server:  UnKnown
Address:  192.5.6.30

google.com      nameserver = ns2.google.com
google.com      nameserver = ns1.google.com
google.com      nameserver = ns3.google.com
google.com      nameserver = ns4.google.com
ns2.google.com  internet address = 216.239.34.10
ns1.google.com  internet address = 216.239.32.10
ns3.google.com  internet address = 216.239.36.10
ns4.google.com  internet address = 216.239.38.10
1
Simon Hayter