web-dev-qa-db-de.com

Prozess der DNS-Auflösung mit nslookup von Root-Nameservern aus

Ich verstehe die Theorie, wie ein DNS-Resolver die Domänenhierarchie durchläuft und Nameserver abfragt, um einen Domänennamen vom Stamm-Namespace abwärts aufzulösen, im Allgemeinen andere Domain als Beispiel). Ich verstehe, dass ich einfach tun kann:

nslookup -type=ns google.com

damit werden alle Nameserver von google.com wie ns1.google.com, ns2.google.com usw. zurückgegeben.

Stattdessen möchte ich jedoch von der Root-Domain zu den Nameservern von Google wechseln, ähnlich wie dies bei einem DNS-Resolver normalerweise der Fall ist (vorausgesetzt, es liegt kein Cache-Treffer vor).

Hier ist der Prozess, den ich ausprobiert habe:

  1. Holen Sie sich zuerst die Root-Level-Nameserver:

    nslookup -type = ns.

    Dies gibt alle 13 Root-Server zurück und ich habe einen davon ausgewählt: 192.36.148.17

  2. Nun frage ich den Root-Nameserver für die gTLD .com wie folgt ab:

    nslookup -type = ns com 192.36.148.17

    Dies gibt eine Liste von Nameservern zurück, zB IP: 199.212.0.73

  3. Ich verwende jetzt die IP des ersten Nameservers, um die Nameserver des SLD abzufragen:

    nslookup -type = ns google.com 199.212.0.73

Hier hätte ich gedacht, dass dies die Nameserver von google.com zurückgeben würde, aber stattdessen erhalte ich Nameserver wie v.arin.net, u.arin.net usw. Was fehle ich hier?

3
neodymium

Das scheint daran zu liegen, dass Sie in Schritt 3 die IP von einem arpa und nicht von einem gtld-Server verwenden. Dies habe ich getan und es schien gut zu funktionieren. Wenn Sie eine beliebige IP von dem arpa verwenden, wird dieselbe zurückgegeben, auf die Sie gestoßen sind.

1) nslookup-Typ = 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) IP auflösen

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