DNS und Verständnis der Stammserver

608
john

Erstens: Ist diese Erklärung, wie DNS funktioniert, richtig?

Wenn wir eine Website besuchen (z. B. (www.example.com)), wird der Domänenname in eine IP-Adresse umgewandelt. Unser Computer prüft daher zuerst seinen internen DNS, um zu sehen, ob der Hostname vorhanden ist. Wenn der Hostname nicht vorhanden ist, wird er zu den Root-Nameservern (.) Geleitet. Nun erhalten die Root-Nameserver die Anfrage und teilen uns mit, dass sich die Anfrage bei den TLD-Servern befindet und geben die IP-Adresse der TLD-Server an. Wenn wir nun die TLD-Server abfragen, enthalten die TLD-Server die Erweiterung von Websites wie .com, .org, .net usw. Die TLD-Server leiten uns in diesem Fall zu den COM-Servern um, und wir erhalten die IP-Adresse des com-Server. Wenn wir die com-Server abfragen, haben sie "Beispiel" in ihrer Liste und leiten uns zu den DNS-Servern des Beispiels weiter. Wenn wir den Server von example.com abfragen, erhalten wir eine IP-Adresse und greifen auf das Internet zu.

Meine Frage ist zum Beispiel.com, der autorisierende Nameserver wäre der COM-Server, oder? da ist es der, der uns die Informationen gibt?

0
Der maßgebliche Namenserver ist derjenige, der die Datensätze enthält. Das ist der DNS-Server für example.com. Außerdem führen Computer keine Root-Lookups durch. Sie haben einen konfigurierten DNS-Server, normalerweise einen ISP, und fragen den ISP-DNS-Server ab. Wenn ein Root-Lookup erforderlich ist, wird dies vom ISP-DNS-Server ausgeführt. Nicht dein Computer. Es wäre sehr ineffizient und mühsam, wenn einzelne Computer Root-Lookups ausführen. Appleoddity vor 6 Jahren 0
Angenommen, meine DNS-Server haben überhaupt keine zwischengespeicherten Daten. Also geht es zum Root, dann zur TLD, dann zu den Com-Servern und schließlich zu den "example.com" -Servern. "Der autorisierende Nameserver ist derjenige, der die Datensätze enthält" Sind die autorisierenden Nameserver die COM-Server? john vor 6 Jahren 0
Warum wäre es ineffizient? Wäre es extrem zeitaufwändig? john vor 6 Jahren 0
Die DNS-Server, auf denen die Domäne example.com gehostet wird, sind autorisierend. Der Stammserver delegiert .com an einen zweiten Satz von DNS-Servern. Diese .com-DNS-Server delegieren .example.com an einen anderen Satz von DNS-Servern. Dies sind normalerweise die Server, die Sie bei der Registrierung der Domäne angeben würden. Dies sind die autorisierenden DNS-Server, die Sie bei der Registrierung der Domäne angeben. Siehe hier: https://docs.microsoft.com/de-de/windows-server/identity/ad-ds/plan/reviewing-dns-concepts Es ist ineffizient, da aus genau diesem Grund ein Zwischenspeichersystem vorhanden ist Internet DNS nicht zu überfordern. Appleoddity vor 6 Jahren 0
Sie sind beispielsweise nicht der einzige Kunde Ihres Internetdienstanbieters, der nach google.com fragt. Es ist äußerst ineffizient, Ihren Computer oder Ihre DNS-Server an Stammserver zu senden, um eine rekursive Suche durchzuführen. Nummer eins, Sie haben keine direkte Verbindung zum Backbone des Internets, wie Ihr ISP - also ist es langsamer. Zweitens können Sie zwischengespeicherte Ergebnisse nutzen, die andere für Sie ausgesät haben. Selbst wenn Sie, wie in Active Directory, ein eigenes DNS ausführen, sollte es für die Verwendung von Weiterleitungen bei Ihrem Internetdienstanbieter konfiguriert sein und nur Stammhinweise als ausfallsicher verwenden. Es ist schneller und effizienter, wenn Millisekunden wichtig sind. Appleoddity vor 6 Jahren 0
Ich habe noch einen Zweifel. Ich habe Captive Portal-Website und die Erweiterung ist ein "in". Der autorisierende Nameserver für diese Website ist ein Root-Server. Jetzt ist ein autorisierender Nameserver ein Server, der den Datensatz an den Client weitergibt. Was ich nicht verstehe ist, wie kann eine Website einen autorisierenden Nameserver als Root-Server haben? Der Root-Server sendet lediglich die Abfrage an einen Server, der die Aufgabe für Sie erledigen kann. Es ist nicht der, der Ihnen die IP-Adresse gibt, sondern leitet Sie einfach an den richtigen Server weiter. Sollte der autorisierende Nameserver nicht der DNS-Server der Websites sein? john vor 6 Jahren 0

2 Antworten auf die Frage

1
Alex

Meine Frage ist zum Beispiel.com, der autorisierende Nameserver wäre der COM-Server, oder?

Nein, lass diges:

# dig example.com SOA  ;; ANSWER SECTION: example.com. 3600 IN SOA sns.dns.icann.org. noc.dns.icann.org. 2018080109 7200 3600 1209600 3600  ;; AUTHORITY SECTION: example.com. 86400 IN NS a.iana-servers.net. example.com. 86400 IN NS b.iana-servers.net. 

Autorisierender Nameserver für example.comist:

a.iana-servers.net. b.iana-servers.net.  

Das sind die Server, für die DNS-Einträge vorhanden sind example.com

Jetzt können wir sie direkt abfragen:

dig @a.iana-servers.net example.com A  ;; ANSWER SECTION: example.com. 86400 IN A 93.184.216.34 

Der DNS-Resolver zerlegt den vollqualifizierten Domänennamen (Fully Qualified Domain Name) von rechts nach links.
Erste Abfrage geht DNS - Server zu verankern zu fragen, wer in autoritativen DNS - Server ist TLD für .com, dann Resolver - Abfrage bestimmte TLD für example.comvon diesen Servern.

# dnstracer -4 -r1 -s. example.com  Tracing to example.com[a] via A.ROOT-SERVERS.NET, maximum of 1 retries A.ROOT-SERVERS.NET [.] (198.41.0.4) |\___ d.gtld-servers.net [com] (192.31.80.30) | |\___ b.iana-servers.net [example.com] (2001:0500:008d:0000:0000:0000:0000:0053) Not queried | |\___ b.iana-servers.net [example.com] (199.43.133.53) Got authoritative answer | |\___ a.iana-servers.net [example.com] (2001:0500:008f:0000:0000:0000:0000:0053) Not queried | \___ a.iana-servers.net [example.com] (199.43.135.53) Got authoritative answer 

Versuchen wir jetzt eine andere Domain in der .com TLD :

 # dig google.com SOA   ;; AUTHORITY SECTION: google.com. 345600 IN NS ns3.google.com. google.com. 345600 IN NS ns4.google.com. google.com. 345600 IN NS ns1.google.com. google.com. 345600 IN NS ns2.google.com. 

Wir werden sehen, dass die autoritativen Nameserver für SLD google.com jetzt anders sind.

da ist es der, der uns die Informationen gibt?

Nein, es ist eine Kette von autorisierenden DNS-Servern.
Root - DNS - Server nur Top - Level - Zonen hält auch bekannt als TLD, - wie .com, .net wenn Resolver verantwortlich autorisierenden DNS - Server bekam für TLD, Resolver - Abfrage bestimmte Zone für SLD (Second-Level - Domain, examplein unserem Fall), und wenn es autorisierenden DNS - Server gefunden Bei SLD wird der Server nach FQDN (Fully Qualified Domain Name) wie z. B. www.example.com abgefragt

Normalerweise verwenden Benutzer DNS-Server des Internetanbieters, die gelöschte DNS-Einträge im Cache speichern. Solche DNS-Server werden als Forwarding-DNS-Server bezeichnet. Wenn sich Datensätze im Cache befinden, antworten sie sofort an den Client, ohne dass alle Zwischenserver, die mit root beginnen, belästigt werden. Wenn solche Weiterleitungs-DNS-Server keine Einträge im Cache haben (oder der DNS-Eintrag abgelaufen ist), werden die Weiterleitungen erneut aufgelöst und das Ergebnis zwischengespeichert. Die DNS-Abfragen des Clients werden als rekursiv gesendet. Dies bedeutet, dass der Client vom DNS-Anbieter entweder einen Fehler oder einen aufgelösten Datensatz erhalten sollte. Der Client sollte die Kette der zwischengeschalteten DNS-Server nicht selbst abfragen, es ist die Aufgabe, den DNS-Server weiterzuleiten, der Clientanforderungen und zwischengespeicherte Ergebnisse bedient. Auf diese Weise reduzieren Weiterleitungen das Laden auf zwischengeschaltete DNS-Server und antworten so schnell wie möglich auf Clients, da die DNS-Server der Anbieter näher an den Clients sind.
(Übrigens, der öffentliche DNS-Server von Google ist auch eine Weiterleitung.)

DNS-Einträge haben den Parameter TTL (time to life), der in autorisierenden Servern nach Domaininhaber festgelegt ist. Wenn Sie also erwarten, dass Ihre IP-Adresse sich häufig ändert, können Sie TTL = 5 Minuten festlegen oder wenn Sie nicht möchten, dass sein DNS-Server vorhanden ist zu oft gestört, dann kann die TTL für einen Tag eingestellt werden.

0
ivanivan

Meistens richtig, aber Sie haben das Caching ausgelassen, was kritisch ist.

Wenn Sie zum ersten Mal einen einfachen Zwischenspeicherungsserver einrichten, werden nur die Datensätze angezeigt, die über ihn bekannt sind. root hintsDies weist auf die Stammserver hin. Wenn Sie nach example.comden Stammservern fragen, wird angegeben, auf welchem ​​Server nach Datensätzen in den .com- die autorisierenden Server - abgefragt werden sollen. Ihr DNS-Server speichert diese Informationen dann zwischen. Anschließend werden die .comServer nach den Informationen gefragt example.comund sie geben einen Zeiger auf die Nameserver zurück example.com, die für die Verwendung in der Registrierdatenbank konfiguriert sind. Diese Informationen werden ebenfalls zwischengespeichert. Dann fragt Ihr DNS-Server die Nameserver nach example.comder IP-Adresse, die dem von Ihnen gewünschten Namen entspricht - www.example.com oder was auch immer.

Nun sagen wir, Sie fragen dann nach example2.com- die .comServerinformationen sind bereits zwischengespeichert. Statt den Stammserver zu belästigen, geht Ihr DNS-Server direkt zu den .comServern, ruft die Nameserverinformationen für die example2.comDomäne ab und fragt diese ab.

Sie vernachlässigen die DNS-Delegierung. Die .com-Server sind für .example.com nicht maßgebend. Sie delegieren diese Domäne einfach an die DNS-Server, die bei der Registrierung der Domäne example.com konfiguriert wurden. Derselbe Server, auf dem Sie alle Ihre A- und CNAME-Datensätze für example.com konfigurieren, ist für die Domäne example.com selbst maßgebend. Appleoddity vor 6 Jahren 0