Hi,
hoffe mal, dass einer von euch das weiß.
Warum genau 13 root nameserver (DNS)
wiki -->Ursprünglich wurde die Anzahl auf 13 beschränkt
Da nicht mehr Server inklusive der Zusatzinformationen in ein 512 Byte
großes Paket passen
Meine Frage ist jetzt: Ja und ? - bei den Nameservern ist die Datei
root... mit den IP's der 13 Server doch fest vorgegeben.
Wann brauche ich überhaupt ein UDP-Paket mit den Adressen, bzw. woher
würde ich es denn bekommen - die root-server sind ja die oberste
Instanz ?
irgendwie hab ich da ne Lücke...
wäre nett, wenn jemand was weiß und das kurz schreiben könnte...
Gruß
Tom
> Warum genau 13 root nameserver (DNS)>> wiki -->Ursprünglich wurde die Anzahl auf 13 beschränkt> Da nicht mehr Server inklusive der Zusatzinformationen in ein 512 Byte> großes Paket passen>>>> Meine Frage ist jetzt: Ja und ? - bei den Nameservern ist die Datei> root... mit den IP's der 13 Server doch fest vorgegeben.>> Wann brauche ich überhaupt ein UDP-Paket mit den Adressen, bzw. woher> würde ich es denn bekommen - die root-server sind ja die oberste> Instanz ?>
Die Rootserver brauchst du dann, wenn du einen eigenen DNS-Server
aufsetzen willst. Das kanns du mit jeder Unix-Box ohne grossen Aufwand
machen. Die jeweiligen Root-Server bekommst du beispielsweise ueber
"dig". Viele Admins setzen das dig -Command in ihre crontab und haben so
den aktuellen Stand.
Es sind zwar 13 IP-Adressen, aber mehr Server da diese "anycasted" sind.
DNS-Anycasting machen übrigens auch ISPs hier in den USA, da die Server
geographisch in verschiedenen Regionen verteilt sind. Auch welchen
Server man dann wirklich landet haengt von dem Durchsatz und Entfernung
ab (cost) und wird ueber Routing-Protokolle wie OSPF entschieden.
Olibert E. schrieb:> Die Rootserver brauchst du dann, wenn du einen eigenen DNS-Server> aufsetzen willst. Das kanns du mit jeder Unix-Box ohne grossen Aufwand> machen.
nein her hat schon recht, die root server kann man nicht ermitteln. Sie
müssen in jedem Server fest eingetragen werden. Ich kann mir nur
vorstellen das man mit hilfes eines root servers die liste der anderen
root server ermitteln kann. Somit würde sich die root datei bei
änderungen der root server mit anpassen.
Hi,
DANKE !!!!
hab auch noch was gefunden, vielleicht fragt das Gleiche sich ja auch
ein anderer.... bei netplanet.org
Die Root-Zone
Damit ein Nameserver zur Adressauflösung verwendet werden kann, muss er
die Adressen der Nameserver kennen, die in der Hierarchie des Domain
Name System zentral oben stehen. Diese Root-Zone enthält alle Adressen
der Root-Server, also der Server, die die Informationen aller
Top-Level-Domains enthalten.
Da ein Nameserver beim Start die aktuelle DNS-Hierarchie nicht kennt
(die kann er ja nicht kennen, wenn er nicht die Adressen der Nameserver
der obersten Hierarchie kennt), muss er zunächst einmal in den
Grundzustand gebracht werden, diese oberste Hierarchie zu kennen und
mindestens einmal kontaktiert zu haben. Dazu liegt die Root-Zonendatei
im Internet an mehreren bekannten Stellen bereit, ist aber auch der
meisten Nameserver-Software beigelegt. Abrufbar ist diese Datei zum
Beispiel unter der Adresse ftp://ftp.rs.internic.net/domain/named.root.
Diese Zone, die sich, abgesehen von wenigen Details, technisch nicht von
anderen Zonendateien unterscheidet, wird von einem startenden Nameserver
eingelesen und jeder der dort eingetragenen Nameserver wird kontaktiert,
um von diesen die jeweils dort abgelegte Kopie der Root-Zonendatei
abzurufen. Hat dies ein Nameserver einmal vorgenommen, "kennt" er die
oberste Hierarchie des Domain Name System und kann Domain-Adressen
entsprechend der hierarchischen Ordnung im DNS auflösen.
Interessant ist an der Root-Zone, dass die TTL-Zeit sehr hoch liegt; die
angegebenen 3,6 Millionen Sekunden entsprechen 41 Tagen und 16 Stunden.
Dies ist zum einen zur Schonung der Root-Server gedacht, zum anderen ist
eine häufigere Aktualisierung der Root-Server-Informationen bei den
einzelnen Nameservern auch nicht notwendig, da die Adressen der
Root-Server selten geändert werden.
Peter schrieb:> nein her hat schon recht, die root server kann man nicht ermitteln. Sie> müssen in jedem Server fest eingetragen werden.
Wer hat dir denn das erzaehlt ? Selbstverstaendlich kann und muss man
die Root-Server ermitteln koennen. Siehe hier:
dig @a.root-servers.net ns .
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_4.2 <<>> @a.root-servers.net
ns .
; (2 servers found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25068
;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 14
;; QUESTION SECTION:
;. IN NS
;; ANSWER SECTION:
. 518400 IN NS m.root-servers.net.
. 518400 IN NS c.root-servers.net.
. 518400 IN NS l.root-servers.net.
. 518400 IN NS e.root-servers.net.
. 518400 IN NS g.root-servers.net.
. 518400 IN NS k.root-servers.net.
. 518400 IN NS d.root-servers.net.
. 518400 IN NS j.root-servers.net.
. 518400 IN NS b.root-servers.net.
. 518400 IN NS f.root-servers.net.
. 518400 IN NS a.root-servers.net.
. 518400 IN NS i.root-servers.net.
. 518400 IN NS h.root-servers.net.
;; ADDITIONAL SECTION:
a.root-servers.net. 3600000 IN A 198.41.0.4
a.root-servers.net. 3600000 IN AAAA 2001:503:ba3e::2:30
b.root-servers.net. 3600000 IN A 192.228.79.201
c.root-servers.net. 3600000 IN A 192.33.4.12
d.root-servers.net. 3600000 IN A 128.8.10.90
e.root-servers.net. 3600000 IN A 192.203.230.10
f.root-servers.net. 3600000 IN A 192.5.5.241
f.root-servers.net. 3600000 IN AAAA 2001:500:2f::f
g.root-servers.net. 3600000 IN A 192.112.36.4
h.root-servers.net. 3600000 IN A 128.63.2.53
h.root-servers.net. 3600000 IN AAAA 2001:500:1::803f:235
i.root-servers.net. 3600000 IN A 192.36.148.17
i.root-servers.net. 3600000 IN AAAA 2001:7fe::53
j.root-servers.net. 3600000 IN A 192.58.128.30
Tom schrieb:> Abrufbar ist diese Datei zum> Beispiel unter der Adresse ftp://ftp.rs.internic.net/domain/named.root.
Das ist veraltet und macht kein Mensch mehr. Falls du dich mehr in die
Materie einarbeiten willst, besorg dir das O'Reilly -Buch "DNS and
BIND".
Olibert E. schrieb:> Wer hat dir denn das erzaehlt ? Selbstverstaendlich kann und muss man> die Root-Server ermitteln koennen. Siehe hier:
So aus Neugierde würde ich gerne mal folgende Frage dazu stellen:
Eigentlich zeigst Du ja lediglich, das man die Root-Server ermitteln
kann , erklärst aber noch nicht, warum man das tun können "muss".
Magst Du das mal ergänzen für Dummies?
An sich, könnte das ja so geregelt sein, das irgendeine feste IP (oder
ein Satz IPs) die IPs der sekundären DNS-Server verteilt.
Dummy schrieb:> Eigentlich zeigst Du ja lediglich, das man die Root-Server ermitteln> kann , erklärst aber noch nicht, warum man das tun können "muss".
Du brauchst die Root-Server selbstverstaendlich nur, wenn unter einen
eigenen Master-Server fuer eine DNS-Zone betreibst. Also nicht fuer
einen DNS client.
Der Domain Name Space hat eine umgedrehte Baumstruktur und ganz oben
sind die Root-Server. Siehe..
http://de.wikipedia.org/wiki/Domain_Name_System
..besonders hier:
http://de.wikipedia.org/wiki/Datei:Dns-raum.svg
Nehmen wir an du rufst http://de.wikipedia.org vom DE-Namespace auf und
der Nameserver deines Providers hat den Lookup nicht im Cache.
Wenn soll er fragen, welcher Nameserver fuer wikipedia.org zustaendig
ist ?
Na, den der sich damit auskennt, also Root -> org -> wikipedia, um
schliesslich die Aufloesing vom autoritiven Nameserver zu bekommen.
Vielen Dank, Olibert, für die Erklärung.
Olibert E. schrieb:> Du brauchst die Root-Server selbstverstaendlich nur, wenn unter einen> eigenen Master-Server fuer eine DNS-Zone betreibst. Also nicht fuer> einen DNS client.
OK. Ist klar.
> Der Domain Name Space hat eine umgedrehte Baumstruktur und ganz oben> sind die Root-Server. Siehe..
Auch klar.
> Nehmen wir an du rufst http://de.wikipedia.org vom DE-Namespace auf und> der Nameserver deines Providers hat den Lookup nicht im Cache.>> Wenn soll er fragen, welcher Nameserver fuer wikipedia.org zustaendig> ist ?> Na, den der sich damit auskennt, also Root -> org -> wikipedia, um> schliesslich die Aufloesing vom autoritiven Nameserver zu bekommen.
Das ist genau die Frage. Wen soll er fragen? Du schreibst: "Root", aber
woher weiss er, welche IP Root hat? Auch wenn er jemanden tiefer in der
Hierarchie fragt: Er muss ja die dig-Anfrage an jemanden senden?
Deswegen schien mir die Annahme Peters, dass die Root-IPs irgendwo fest
eingetragen sind, plausibel und deswegen die Frage, warum man
Root-Server-IPs abfragen können "muss", gerade wenn ja garnicht klar
ist, wen man da abfragen könnte.
Olibert E. schrieb:> Na, den der sich damit auskennt, also Root -> org -> wikipedia, um> schliesslich die Aufloesing vom autoritiven Nameserver zu bekommen.
Schon.
Aber darum ging es ja weiter oben nicht.
Die Frage ist doch:
Du hast einen jungfräulichen Server, der nichts von seiner Umgebung
weiß. Wie kommt der zur IP der root-Server.
Und da das offenbar nicht möglich ist, auch ein Nameserver kann sich
nicht an den Haaren aus dem Sumpf ziehen, muss man ihm die IP mitteilen.
> Wer hat dir denn das erzaehlt ? Selbstverstaendlich kann und muss> man die Root-Server ermitteln koennen. Siehe hier:
Das beweist aber nur, dass dies geht, wenn alles erst einmal läuft.
1
dig @a.root-servers.net ns .
Aha, und wen befragt dig um die IP für a.root-servers.net wenn der
lokale DNS nicht läuft, weil es noch nicht einmal seine root-Server
kennt?
@Olibert:
Ich lese gerade im Wikipedia-Artikel:
"Auflösung über die Root-Server
Falls kein Weiterleitungsserver konfiguriert wurde oder dieser nicht
antwortet, werden die Root-Server befragt. Dazu werden in Form einer
statischen Datei die Namen und IP-Adressen der Root-Server hinterlegt.
Es gibt 13 Root-Server (Server A bis M). Die Root-Server beantworten
Anfragen ausschließlich iterativ (der Server antwortet mit einem Verweis
auf andere Nameserver), da diese sonst mit der Anzahl der Anfragen
überlastet wären."
Also doch statische Eintragung!?!? Auch die Weiterleitungsserver werden
als "fest konfiguriert" bezeichnet?!?!
Magst Du das mal in Zusammenhang mit Deiner Aussage stellen?
Wahrscheinlich hast Du Dich doch auf einen anderen Teilbereich bezogen,
in dem meine Frage, bzw. Peters Aussage so keinen Sinn macht, vermute
ich, oder?
Karl heinz Buchegger schrieb:> Und da das offenbar nicht möglich ist, auch ein Nameserver kann sich> nicht an den Haaren aus dem Sumpf ziehen, muss man ihm die IP mitteilen.
Hmm. Das kommt mir auch so vor.
Ich habe keine Ahnung von der DNS-Materie, aber Logik bleibt Logik ;-)
Karl heinz Buchegger schrieb:> Aha, und wen befragt dig um die IP für a.root-servers.net wenn der> lokale DNS nicht läuft, weil es noch nicht einmal seine root-Server> kennt?
Das ist relativ einfach zu erklaeren. Du setzt einen neuen Server in
einem funktionierden Umfeld (kickstart, jumpstart und als DNS client)
auf. Also kannst du die Datei einfach ueber dig erstellen.
Falls das nicht geht, koennte man es immer noch von einer anderen
Maschine erstellen lassen und kopieren.
Also das Problem stellt sich ueberhaupt nicht.
Dummy schrieb:> Die Root-Server beantworten> Anfragen ausschließlich iterativ (der Server antwortet mit einem Verweis> auf andere Nameserver), da diese sonst mit der Anzahl der Anfragen> überlastet wären."
Richtig, wie ich oben im Beispiel erwaehnt hatte:
"also Root -> org -> wikipedia, um
schliesslich die Aufloesing vom autoritiven Nameserver zu bekommen."
> Also doch statische Eintragung!?!? Auch die Weiterleitungsserver werden> als "fest konfiguriert" bezeichnet?!?!
Nein nicht unbedingt, da ein Teil der Server anycasted sind. Also
Routing zu dem Server mit der niedrigsten cost. Hinter einer IP-Adresse
verbirgt sich nicht unbedingt ein Server, aber eine Gruppe von Maschinen
im gleichen Anycast pool.
Olibert E. schrieb:> Das ist relativ einfach zu erklaeren. Du setzt einen neuen Server in> einem funktionierden Umfeld (kickstart, jumpstart und als DNS client)> auf. Also kannst du die Datei einfach ueber dig erstellen.>> Falls das nicht geht, koennte man es immer noch von einer anderen> Maschine erstellen lassen und kopieren.
Also doch.
Irgendwo muss der Urzustand einmal herkommen.
Und wenn ich sonst nichts habe, gehts nicht anders als durch Einspielen
dieser ominösen Datei, die ich mir irgendwie anderweitig besorgen muss
(oder mitgeliefert bekomme).
Olibert E. schrieb:> Nein nicht unbedingt, da ein Teil der Server anycasted sind. Also> Routing zu dem Server mit der niedrigsten cost. Hinter einer IP-Adresse> verbirgt sich nicht unbedingt ein Server, aber eine Gruppe von Maschinen> im gleichen Anycast pool.
Nun gut, aber das ist ja nur ein Seitenproblem. Irgendeine IP muss er ja
haben, auch wenn die dann auf eine aus einer Reihe weiterer Server
umgelenkt wird.
Olibert E. schrieb:> Das ist relativ einfach zu erklaeren. Du setzt einen neuen Server in> einem funktionierden Umfeld (kickstart, jumpstart und als DNS client)> auf. Also kannst du die Datei einfach ueber dig erstellen.
Das aber steht im Widerspruch zu Deiner ursprünglichen Aussage, die der
Diktion und dem Zusammenhang nach impliziert, das man die Root-Server
eben nicht_ kennen muss sondern _ermitteln können muss.
Olibert E. schrieb:> Peter schrieb:>> nein her hat schon recht, die root server kann man nicht ermitteln. Sie>> müssen in jedem Server fest eingetragen werden.>> Wer hat dir denn das erzaehlt ? Selbstverstaendlich kann und muss man> die Root-Server ermitteln koennen.
Es ist also keine grundsätzliche Eigenschaft einer DNS-Server
Konfiguration, das die Root-Server ermittelt werden können müssen
sondern diese Voraussetung ist erst erfüllt, wenn eine statische Tabelle
vorhanden ist. Insofern hatte Peter also recht.
Dummy schrieb:> Das aber steht im Widerspruch zu Deiner ursprünglichen Aussage, die der> Diktion und dem Zusammenhang nach impliziert, das man die Root-Server> eben nicht_ kennen muss sondern _ermitteln können muss.
Bitte seit mir nicht boese, ich arbeite bei einem groesseren ISP als
Sysadmin und habe schon einige DNS-Server aufgesetzt, aber das wird mir
hier jetzt echt zu anstrengend.
Wie gesagt, O'Reilly's DNS & Bind beantwortet die meisten Fragen im
Zusammenhang mit DNS.
Olibert E. schrieb:> Bitte seit mir nicht boese, ich arbeite bei einem groesseren ISP als> Sysadmin und habe schon einige DNS-Server aufgesetzt, aber das wird mir> hier jetzt echt zu anstrengend.
Es mag ja sein, das Du im Endeffekt recht hast, aber erkennbar ist das
aufgrund der logischen Struktur Deiner Aussagen eben nicht. Mein Hinweis
auf die Widersprüchlichkeit Deiner Aussagen, sollte lediglich eine
Aufforderung zur Klärung sein, aber...
... bitte Sei mir nicht böse, aber Leute die eine Diskussion Ihrer
Aussagen, die zu ihren Ungunsten verläuft, mit der Anführung Ihrer
Erfahrungen abschliessen wollen, ...
Du bist ja an sich auch nicht das Thema, also lassen wir das und lesen
noch ein wenig Wikipedia.
Tja, bind9 oder dig oder wer auch immer (ich kenne mich mit dieser
Materie gar nicht aus) kennt die Rootserver tatsächlich ohne die ominöse
Datei...
...aber auch nur, weil deren Inhalt in den bind9 Quellcode eingebacken
ist.
1. Quellcode runterladen: ftp://ftp.isc.org/isc/bind9/9.7.1
2. Entpacken
3. Blick in lib/dns/rootns.c werfen