Frage DNS A vs NS-Datensatz


Ich versuche, DNS etwas besser zu verstehen, aber ich bekomme A- und NS-Aufzeichnungen immer noch nicht vollständig.

Soweit ich verstanden habe, teilt der A-Record mit, welche IP-Adresse zu einer (Sub-) Domain gehört, soweit mir noch klar war. Aber wie ich verstanden habe, teilt der NS-Record mit, welche Nameserver-Punkte zu einer (Sub-) Domain gehören, und dieser Nameserver sollte sagen, welche IP-Adresse zu einer (Sub-) Domain gehört. Aber das wurde bereits in dem A-Eintrag in derselben DNS-Datei angegeben. Also kann mir jemand erklären was die NS-Records und Nameserver genau machen, denn wahrscheinlich habe ich etwas falsch verstanden.

edit: Wie ich dich richtig verstehe, sagt ein NS-Record, dass du den DNS-Server mit dem A-Record für eine bestimmte Domain finden sollst, und der A-Record sagt dir, welche IP-Adresse zu einer Domain gehört. Aber was bringt es, einen A- und einen NS-Datensatz in dieselbe DNS-Datei zu schreiben? Wenn bereits ein A-Eintrag für eine bestimmte Domäne vorhanden ist, warum müssen Sie dann auf einen anderen DNS-Server verweisen, der Ihnen wahrscheinlich die gleichen Informationen liefert?


30
2018-01-20 22:49


Ursprung


Verzeihen Sie die Hybris bei einer alten Frage, aber ich bin ein DNS-Administrator und ich halte keine der Antworten für positiv bewertet, um das Problem angemessen zu erklären. Ich kann mich auf diese Frage beziehen, weil ich selbst in meinen frühen Tagen die gleiche Verwirrung hatte. Ich habe eine eigene Antwort beigesteuert. - Andrew B


Antworten:


Einige Beispiele aus dem Fiktiven foo.com Zonendatei

 ....... SOA record & lots more stuff .......
 foo.com.      IN        NS        ns1.bar.com.

 foo.com.      IN        A         192.168.100.1
 ....... More A/CNAME/AAAA/etc. records .......

Ein Rekord  = "Der Gastgeber hat angerufen foo.com lebt unter der Adresse 192.168.100.1 "
NS Rekord = "Wenn Sie über Hosts in der foo.com Zone, frage den Nameserver ns1.bar.com "


31
2018-01-20 23:15



Ich liebe Foobar Referenzen. : D - JohnThePro
@Tiddo ein großer Grund ist, dass Slave-Server in der Regel von Zonenänderungen benachrichtigt werden, weil sie als NS-Datensätze aufgeführt sind. Auch wenn Sie den autoritativen Server nach fragen ns1.foo.com's Adresse in den Prozess der Suche nach etwas anderem und der Datensatz existiert dort nicht, die Sie bekommen werden NXDOMAIN und Schlechte Dinge werden passieren (aber es wird für Leute funktionieren, die die com Elternserver, da vermutlich dort Kleber A vorhanden wäre) - voretaq7
@JohnThePro - meine andere Option war beispiel.com, und ich hasse example.com Referenzen :-) - voretaq7
@ Voretaq7 also im Grunde werden die NS-Datensätze als Backup-Mechanismus verwendet und diese Nameserver zu benachrichtigen, wenn sich die IP-Adresse der Domain ändert? - Tiddo
@tiddo und als Wegweiser wie oben beschrieben & in vielen anderen Antworten. Es kann andere Dinge geben, die NS-Aufzeichnungen betrachten, die ich vergesse, aber das sind die zwei großen, die mir in den Sinn kommen. - voretaq7


Das ist eine alte Frage, aber ich denke, die anderen Antworten berühren nicht wirklich die Quelle der Verwirrung. NS Datensätze an der Spitze folgen einem anderen Satz von Regeln als NS Aufzeichnungen unterhalb der Spitze.

Aus diesen Regeln können wir zwei verschiedene Verhaltensweisen ableiten für was passiert, wenn ein A Datensatz existiert auf einem DNS-Server mit demselben Namen:

  • Wenn die NS Datensatz definiert keinen Verweis, andere Daten können neben demselben in derselben Zone vorhanden sein. Da der Server sich sowohl für die NS aufnehmen und die A aufnehmen, es gibt keinen Konflikt. Aus diesem Grund leben andere Daten gemeinsam mit dem NS Aufzeichnungen am Scheitelpunkt einer Zone.
  • Wenn die NS Aufzeichnung tut Definieren Sie eine Empfehlung, dann die A Aufzeichnung wird effektiv von einem "maskiert" Zonenschnitt. Diese A Der Datensatz ist nicht autorisierend und darf nicht im Antwortabschnitt einer autoritativen Antwort angezeigt werden. Es kann möglicherweise als verwendet werden Daten kleben was im zusätzlichen Abschnitt des Verweises auftaucht, aber das war's.

Verwirrend? Ja, ist es. Schreiben Sie eine Notiz in die Kommentare, wenn Sie Schwierigkeiten haben, dem zu folgen, und ich werde sehen, was ich tun kann.


16
2018-05-30 19:10



Was meinst du mit APEX? - Ryan-Neal Mes
@ Ryan-Neal Die NS Datensätze am Anfang der Zonendatei. - Andrew B


Die NS-Datensätze geben die Server an, die DNS-Dienste für diesen Domänennamen bereitstellen.

Die A-Datensätze verweisen Hostnamen (wie www, ftp, mail) auf eine oder mehrere IP-Adressen.


8
2018-01-20 23:14





Es ist wichtig, dass sowohl NS als auch A in der Zone aufgezeichnet sind, wenn Sie die Unterzone an einen anderen DNS-Server delegieren müssen.

Z.B. wir haben dns server ns1.bar.com autorisierend für zone bar.com. Und wir müssen foo.bar.com an ns1.foo.bar.com delegieren. Also müssen wir Zone foo.bar.com erstellen und dort diese Datensätze eintragen:

foo.bar.com.     IN NS ns1.foo.bar.com.
ns1.foo.bar.com. IN A  10.10.10.10

Wenn wir nicht haben, wird eine Aufnahme-Delegation nicht funktionieren. Solche Satzpaare werden als Klebstoffe bezeichnet.

Glue Records ist nur eine Möglichkeit für das DNS-System, die genaue IP des autoritativen DNS-Servers für Nicht-Root-Zonen zu finden. Wenn Sie eine Domäne für NS-Datensatz mit überprüfen dig oder siehe Traffic Dump mit wireshark, du wirst sehen, dass es einen zusätzlichen Abschnitt gibt.

;; ANSWER SECTION:
foo.bar.com.             10800   IN      NS      ns1.foo.bar.com.

;; ADDITIONAL SECTION:
ns1.foo.bar.com.         7972    IN      A       10.10.10.10

wenn eine rekursive Anfrage durchgeführt wird, z.B. www.foo.bar.com Ihr DNS-Client wird nach DNS-Autorisierung für die Zone foo.bar.com fragen und die Antwort ns1.foo.bar.com erhalten.

Um weiter zu gehen, muss eine Anfrage für ns1.foo.bar.com gesendet werden, die von ... ns1.foo.bar.com bedient wird. Um die Schleife aufzubrechen, sollte der Delegierungsserver diesen zusätzlichen Abschnitt mit A-Datensatz hinzufügen.

Server ns1.foo.bar.com sollte in seiner Zone dieselben Datensätze enthalten, sodass er für die Zone foo.bar.com autorisierend sein kann.


6
2018-06-07 16:44



Hatte Schwierigkeiten, meinen Kopf um das Problem mit Hühnchen und Eiern zu bekommen, bis ich deine Klebezettel-Erklärung sah! - Jon Skarpeteig


Ein A-Eintrag ordnet einen Namen einer IP-Adresse zu. z.B.

binary.example.com. IN A 192.168.1.42

besagt, dass binary.example.com. wird in 192.168.1.42 aufgelöst

Ein NS-Eintrag ordnet einen Namen einem anderen Nameserver zu, d. h. einem anderen DNS-Server, der diese Domäne bedient. "Ich habe keine Ahnung von der IP-Adresse dieses Namens, aber wenn Sie diesen Nameserver dort fragen, könnte er es wissen"

binary.example.com. IN NS otherbox.example.com
otherbox.beispiel.com. IN A 192.168.1.2

Wenn Sie einen DNS-Server mit den obigen 2 Datensätzen für binary.example.com fragen. (oder www.binary.example.com. oder foo.bar.binary.example.com). es wird dir sagen, dass du 192.168.1.2 fragen musst, um diese Namen zu übersetzen (nun, oder der DNS-Server könnte das für dich tun, oder es könnte die aufgelösten Namen zwischengespeichert haben und sie dir zurückgeben.)


4
2018-01-20 23:19



Häufig werden DNS-Einträge angezeigt, die NS- und A-Einträge für die gleichen Domänen angeben. Aber wenn ein NS-Datensatz sagt, dass der A-Datensatz gefunden werden soll, was nützt dann der NS-Datensatz in der gleichen Datei, wenn der A-Datensatz bereits vorhanden ist? - Tiddo


NS-Datensätze existieren AUSSCHLIESSLICH zu dem Zweck, zu definieren, WELCHE NAMESERVERS für eine bestimmte Domäne verantwortlich sind.

Ein A-Datensatz existiert, um eine bestimmte Maschine oder einen bestimmten Dienst zu "ADDRESSIEREN".

Beispiele für dich:

In Ihrer DNS-Systemsteuerung sehen Sie einige NS-Einträge, dies sind Ihre NAMESERVERS oder der primäre Computer, der dafür verantwortlich ist, dem Internet mitzuteilen, wo sich die Inhalte Ihrer Domain befinden.

NS1.CP.COM NS2.CP.COM

Auch innerhalb Ihres DNS-Panels haben Sie eine Domain, die Sie besitzen (z. B. -mikesfunhouse.com), für die Sie einige Dienste benötigen, beispielsweise eine Website.

Also, was Sie tun werden, ist ein Primary-A-Record, "mikesfunhouse.com" auf "76.19.87.956" (offensichtlich gefälschte IP).

Dann machen Sie einen weiteren Datensatz, einen www-Datensatz, der die Subdomain "www" umleitet. Teil zu Ihrer primären Website.

Kurz gesagt, Sie verwenden A-Datensätze, um einen Namespace in eine IP-Adresse zu konvertieren.


3
2018-01-20 23:17





Der Nameserver-Datensatz teilt dem Internet mit, welcher DNS-Server die A-Datensätze enthält. Um einen A-Eintrag für eine Subdomain zu suchen, ist dies ungefähr der folgende Prozess:

Nachschlagen der Nameserver für die Domain -> Abfrage des Nameservers für den A-Record der Subdomain


1
2018-01-20 23:15



Wenn sich die A-Datensätze jedoch bereits in derselben Datei befinden, warum sollten Sie die NS-Datensätze angeben? - Tiddo
Es geht nur darum, wonach Sie suchen. Der NS-Datensatz ist wie der Ausgangspunkt. Wenn ein Server NIEMALS Ihre Domain jemals besucht hätte, würde er zuerst feststellen, dass der NS-Server für Ihre Domain antwortet. Nachdem der Server identifiziert wurde, wird er nach dem A-Eintrag der fraglichen Domäne abgefragt. - JohnThePro