Domain Name System/Server/Rekursiv: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
| (3 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
| Zeile 3: | Zeile 3: | ||
== Beschreibung == | == Beschreibung == | ||
Die Hauptaufgabe eines rekursiven DNS-Servers besteht darin, '''einen Domainnamen in eine IP-Adresse umzuwandeln''', indem alle erforderlichen Suchschritte durchgeführt und dem Client eine Antwort gegeben werden. | |||
* Bearbeitet die Anfrage des Kunden vollständig | |||
* Wendet sich selbstständig an andere DNS-Server (Root-, TLD- und autoritative Server), um die gewünschte IP-Adresse zu finden | |||
* Gibt dem Kunden eine endgültige Antwort zurück | |||
== Funktionsweise == | |||
# Der Server erhält eine Anfrage vom Client (z. B. einem Browser) zur Übersetzung eines Domainnamens in eine IP-Adresse. | |||
# Zunächst überprüft er seinen Cache-Speicher. Wenn die Informationen gefunden werden, sendet der Server sie sofort an den Client zurück. | |||
# Wenn die Daten nicht im Cache vorhanden sind, startet der Server eine vollständige Suche: | |||
#:* Zunächst wendet er sich an den Root-Server. | |||
#:* Der Root-Server leitet ihn an den Server für Top-Level-Domains (TLD) weiter. | |||
#:* Der TLD-Server verweist auf den autoritativen DNS-Server, der die erforderlichen Informationen über die Domain enthält. | |||
# Der autoritative Server sendet die IP-Adresse an den rekursiven Server zurück. | |||
# Der rekursive Server sendet diese IP-Adresse an den Client zurück, damit dieser eine Verbindung zur gewünschten Website herstellen kann. | |||
== Manual == | |||
Um den Resolving-Prozess bei fehlenden Daten im DNS-Cache zu veranschaulichen, wird im Folgenden die Methode des manuellen rekursiven Resolving der Domain '''drive.google.com''' mit Hilfe von '''nslookup''' gezeigt. | |||
1.nbsp;Zunächst muss die Liste der Root-Server (Root-Hints) präzisiert werden. Der Parameter ''-q'' gibt den Typ der Anfrage an, und `.` bedeutet die Root-Domäne. | |||
<syntaxhighlight lang="bash" highlight="1" copy line"> | |||
nslookup -q=ns . | |||
</syntaxhighlight> | |||
: Ausgang: | |||
<syntaxhighlight lang="console" highlight="" line> | |||
. nameserver = l.root-servers.net. | |||
. nameserver = m.root-servers.net. | |||
. nameserver = a.root-servers.net. | |||
. nameserver = b.root-servers.net. | |||
. nameserver = c.root-servers.net. | |||
. nameserver = d.root-servers.net. | |||
. nameserver = e.root-servers.net. | |||
. nameserver = f.root-servers.net. | |||
. nameserver = g.root-servers.net. | |||
. nameserver = h.root-servers.net. | |||
. nameserver = i.root-servers.net. | |||
. nameserver = j.root-servers.net. | |||
. nameserver = k.root-servers.net. | |||
d.root-servers.net internet address = 199.7.91.13 | |||
d.root-servers.net internet address = 199.7.91.13 | |||
</syntaxhighlight> | |||
* Die Antwort ist nicht autoritativ, da die Anfrage in diesem Fall an einen rekursiven DNS-Server (der Standard-DNS im System, auf dem nslookup ausgeführt wird) gesendet wird. | |||
2. Als Nächstes müssen Sie von einem der Root-Hints den Namen des Servers erfahren, der die Zone ''.com'' bedient: | |||
<syntaxhighlight lang="bash" highlight="1" copy line"> | |||
nslookup -q=ns com d.root-servers.net. | |||
</syntaxhighlight> | |||
: Ausgang: | |||
<syntaxhighlight lang="console" highlight="" copy line"> | |||
Server: d.root-servers.net. | |||
Address: 199.7.91.13#53 | |||
Non-authoritative answer: | |||
*** Can't find com: No answer | |||
Authoritative answers can be found from: | |||
com nameserver = a.gtld-servers.net. | |||
com nameserver = b.gtld-servers.net. | |||
com nameserver = c.gtld-servers.net. | |||
com nameserver = d.gtld-servers.net. | |||
com nameserver = e.gtld-servers.net. | |||
com nameserver = f.gtld-servers.net. | |||
com nameserver = g.gtld-servers.net. | |||
com nameserver = h.gtld-servers.net. | |||
com nameserver = i.gtld-servers.net. | |||
com nameserver = j.gtld-servers.net. | |||
com nameserver = k.gtld-servers.net. | |||
com nameserver = l.gtld-servers.net. | |||
com nameserver = m.gtld-servers.net. | |||
a.gtld-servers.net internet address = 192.5.6.30 | |||
b.gtld-servers.net internet address = 192.33.14.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 | |||
a.gtld-servers.net has AAAA address 2001:503:a83e::2:30 | |||
b.gtld-servers.net has AAAA address 2001:503:231d::2:30 | |||
</syntaxhighlight> | |||
3. Nun müssen Sie sich an einen beliebigen Server wenden, der die Zone ''.com'' bedient, um eine Liste der DNS-Server zu erhalten, die die Domain ''google.com'' bedienen. | |||
<syntaxhighlight lang="bash" highlight="1" copy line"> | |||
nslookup -q=ns google.com f.gtld-servers.net. | |||
</syntaxhighlight> | |||
: Ausgang: | |||
<syntaxhighlight lang="console" highlight="" copy line"> | |||
Non-authoritative answer: | |||
*** Can't find google.com: No answer | |||
Authoritative answers can be found from: | |||
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 has AAAA address 2001:4860:4802:34::a | |||
ns2.google.com internet address = 216.239.34.10 | |||
ns1.google.com has AAAA address 2001:4860:4802:32::a | |||
ns1.google.com internet address = 216.239.32.10 | |||
ns3.google.com has AAAA address 2001:4860:4802:36::a | |||
ns3.google.com internet address = 216.239.36.10 | |||
ns4.google.com has AAAA address 2001:4860:4802:38::a | |||
ns4.google.com internet address = 216.239.38.10 | |||
</syntaxhighlight> | |||
4. Schließlich muss noch eine direkte, nicht rekursive A-Eintrag-Abfrage für ''drive.google.com'' durchgeführt werden. | |||
<syntaxhighlight lang="bash" highlight="1" copy line"> | |||
nslookup -q=A -norecurse drive.google.com ns1.google.com. | |||
</syntaxhighlight> | |||
: Ausgang: | |||
<syntaxhighlight lang="console" highlight="" copy line"> | |||
Server: ns1.google.com. | |||
Address: 216.239.32.10#53 | |||
Name: wide-docs.l.google.com | |||
Address: 64.233.161.194 | |||
drive.google.com canonical name = wide-docs.l.google.com. | |||
</syntaxhighlight> | |||
Aktuelle Version vom 18. November 2025, 17:54 Uhr
Domain Name System/Server/Rekursiv - Beschreibung
Beschreibung
Die Hauptaufgabe eines rekursiven DNS-Servers besteht darin, einen Domainnamen in eine IP-Adresse umzuwandeln, indem alle erforderlichen Suchschritte durchgeführt und dem Client eine Antwort gegeben werden.
- Bearbeitet die Anfrage des Kunden vollständig
- Wendet sich selbstständig an andere DNS-Server (Root-, TLD- und autoritative Server), um die gewünschte IP-Adresse zu finden
- Gibt dem Kunden eine endgültige Antwort zurück
Funktionsweise
- Der Server erhält eine Anfrage vom Client (z. B. einem Browser) zur Übersetzung eines Domainnamens in eine IP-Adresse.
- Zunächst überprüft er seinen Cache-Speicher. Wenn die Informationen gefunden werden, sendet der Server sie sofort an den Client zurück.
- Wenn die Daten nicht im Cache vorhanden sind, startet der Server eine vollständige Suche:
- Zunächst wendet er sich an den Root-Server.
- Der Root-Server leitet ihn an den Server für Top-Level-Domains (TLD) weiter.
- Der TLD-Server verweist auf den autoritativen DNS-Server, der die erforderlichen Informationen über die Domain enthält.
- Der autoritative Server sendet die IP-Adresse an den rekursiven Server zurück.
- Der rekursive Server sendet diese IP-Adresse an den Client zurück, damit dieser eine Verbindung zur gewünschten Website herstellen kann.
Manual
Um den Resolving-Prozess bei fehlenden Daten im DNS-Cache zu veranschaulichen, wird im Folgenden die Methode des manuellen rekursiven Resolving der Domain drive.google.com mit Hilfe von nslookup gezeigt.
1.nbsp;Zunächst muss die Liste der Root-Server (Root-Hints) präzisiert werden. Der Parameter -q gibt den Typ der Anfrage an, und `.` bedeutet die Root-Domäne.
nslookup -q=ns .
- Ausgang:
. nameserver = l.root-servers.net.
. nameserver = m.root-servers.net.
. nameserver = a.root-servers.net.
. nameserver = b.root-servers.net.
. nameserver = c.root-servers.net.
. nameserver = d.root-servers.net.
. nameserver = e.root-servers.net.
. nameserver = f.root-servers.net.
. nameserver = g.root-servers.net.
. nameserver = h.root-servers.net.
. nameserver = i.root-servers.net.
. nameserver = j.root-servers.net.
. nameserver = k.root-servers.net.
d.root-servers.net internet address = 199.7.91.13
d.root-servers.net internet address = 199.7.91.13
- Die Antwort ist nicht autoritativ, da die Anfrage in diesem Fall an einen rekursiven DNS-Server (der Standard-DNS im System, auf dem nslookup ausgeführt wird) gesendet wird.
2. Als Nächstes müssen Sie von einem der Root-Hints den Namen des Servers erfahren, der die Zone .com bedient:
nslookup -q=ns com d.root-servers.net.
- Ausgang:
Server: d.root-servers.net.
Address: 199.7.91.13#53
Non-authoritative answer:
*** Can't find com: No answer
Authoritative answers can be found from:
com nameserver = a.gtld-servers.net.
com nameserver = b.gtld-servers.net.
com nameserver = c.gtld-servers.net.
com nameserver = d.gtld-servers.net.
com nameserver = e.gtld-servers.net.
com nameserver = f.gtld-servers.net.
com nameserver = g.gtld-servers.net.
com nameserver = h.gtld-servers.net.
com nameserver = i.gtld-servers.net.
com nameserver = j.gtld-servers.net.
com nameserver = k.gtld-servers.net.
com nameserver = l.gtld-servers.net.
com nameserver = m.gtld-servers.net.
a.gtld-servers.net internet address = 192.5.6.30
b.gtld-servers.net internet address = 192.33.14.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
a.gtld-servers.net has AAAA address 2001:503:a83e::2:30
b.gtld-servers.net has AAAA address 2001:503:231d::2:30
3. Nun müssen Sie sich an einen beliebigen Server wenden, der die Zone .com bedient, um eine Liste der DNS-Server zu erhalten, die die Domain google.com bedienen.
nslookup -q=ns google.com f.gtld-servers.net.
- Ausgang:
Non-authoritative answer:
*** Can't find google.com: No answer
Authoritative answers can be found from:
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 has AAAA address 2001:4860:4802:34::a
ns2.google.com internet address = 216.239.34.10
ns1.google.com has AAAA address 2001:4860:4802:32::a
ns1.google.com internet address = 216.239.32.10
ns3.google.com has AAAA address 2001:4860:4802:36::a
ns3.google.com internet address = 216.239.36.10
ns4.google.com has AAAA address 2001:4860:4802:38::a
ns4.google.com internet address = 216.239.38.10
4. Schließlich muss noch eine direkte, nicht rekursive A-Eintrag-Abfrage für drive.google.com durchgeführt werden.
nslookup -q=A -norecurse drive.google.com ns1.google.com.
- Ausgang:
Server: ns1.google.com.
Address: 216.239.32.10#53
Name: wide-docs.l.google.com
Address: 64.233.161.194
drive.google.com canonical name = wide-docs.l.google.com.
Anhang
Siehe auch