Sie haben bereits vor langer Zeit eine Antwort erhalten, aber ich denke, wir können genauer sein, und Sie haben eine Folgefrage, die eigentlich eine andere Frage sein sollte.
Gehen wir also von Anfang an zurück.
Wenn Sie die Stammserver abfragen, um mehr über die .COM
Delegierung zu erfahren (beachten Sie, dass alles unten Genannte auf dieselbe Weise gilt, .NET
da beide von derselben Registrierung behandelt werden), erhalten Sie folgende Antwort:
$ dig @a.root-servers.net com. NS +noall +auth
; <<>> DiG 9.12.0 <<>> @a.root-servers.net com. NS +noall +auth
; (1 server found)
;; global options: +cmd
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
Zusammenfassend ist jeder dieser Nameserver maßgeblich .COM
und sie haben alle die gleichen Daten (damit Sie Ihre Frage erweitern können, a.gtld-servers.net
ist in keiner Weise etwas Besonderes, alles, was unten steht, gilt für jeden dieser Nameserver).
Wenn Sie diese Nameserver nach einem .COM/.NET
Domainnamen abfragen, müssen sie autorisierend mit den Nameservern antworten, die für den gewünschten Domainnamen autorisierend sind.
Per Definition bedeutet "Bedeutet das, dass a.gtld-servers.net (und * .gtld-servers.net) alle .com-Domains lokal aufzeichnen?", Aber genau das bedeutet es! Mit einigen Einschränkungen um "alles", die weiter unten angesprochen werden.
Beachten Sie, dass Sie über Kleberaufzeichnungen sprechen. Dies ist ein spezieller Fall und nicht der häufigste. In der Regel gibt eine Anforderung für eine Domain bei einem der oben genannten Nameserver nur einen oder mehrere NS-Einträge zurück.
Nehmen wir uns Zeit, um die anderen kleinen Punkte in Ihrem Text anzusprechen:
Sie antworten sehr schnell, daher glaube ich nicht, dass sie selbst eine weitere Anfrage stellen.
Ein autorisierender Nameserver verfügt per Definition über die Daten, mit denen er Anfragen beantworten kann, ohne sich auf externe Ressourcen verlassen zu müssen. Andernfalls ist er nicht wirklich autorisierend.
Die Geschwindigkeit ist teilweise subjektiv und hängt stark davon ab, was und wie Sie testen. Es gibt jedoch mehrere Faktoren: Standardmäßig verwendet DNS UDP, das leichter als TCP und daher schneller ist, und solche Nameserver werden übertragen, was bedeutet, dass Sie immer etwas Glück haben habe einen "in deiner Nähe".
Mir ist klar, dass a.gtld-servers.net wahrscheinlich mehrere Maschinen sind
Sie können das "wahrscheinlich" entfernen :-) Diese Nameserver erhalten so viele Anfragen, dass eine einzelne Box niemals standhalten kann.
Wenn Sie zu https://stat.ripe.net/192.5.6.30#tabId=routing gehen, werden Sie viele Informationen sehen, die möglicherweise schwer zu verdauen sind, aber im Grunde genommen sehen Sie, dass diese einzelne IP von a.gtld-servers.net
(tatsächlich der Block, in dem Es wird von mehreren AS angekündigt, die alle von einem Unternehmen kontrolliert werden. Dies ist ein starker Indikator für Anycasting, das für die meisten DNS-Programme hervorragend funktioniert.
Wenn Sie zu http://www.root-servers.org/ gehen, können Sie mehr erfahren. Dies hängt mit den Root-Nameservern zusammen, nicht .COM
mehr mit denen, aber technisch ist es genau dasselbe. Sie können beispielsweise feststellen, dass die 13 Stammserver von 12 verschiedenen Organisationen in 930 Instanzen verwaltet werden (eine Instanz ist nicht nur ein Server, sondern ein Standort, ein "Präsenzpunkt", an dem der Bediener normalerweise einen "Knoten" hat Routing-Ausrüstung, mehrere Server im Lastausgleichs- / Failover-Setup, einige Überwachungs- / Remote-Hands-Funktionen usw.). F
Zum Beispiel ist an 222 Stellen.
und dass ich zu dem nächstgelegenen weitergeleitet werde (durch diese neue One-IP-Multiple-Machine-Technologie), aber dies würde nur bedeuten, dass mehrere andere Computer alle .com-Domänen haben.
Ja, viele Computer haben die Liste aller .COM
Domänennamen. Aber zuerst eine Genauigkeit: Auf diesen Nameservern erhalten Sie die Liste aller Nameserver für alle .COM-Domainnamen ... was bedeutet, dass Sie sie für nicht delegierte Domainnamen hier nicht finden. Dies kann in mehreren Fällen passieren:
- Wenn Sie einen Domainnamen registrieren, können Sie festlegen, dass Nameserver nicht festgelegt oder später entfernt werden sollen.
- Ihr Registrar könnte beispielsweise aufgrund eines Zahlungsstreites den Status
clientHold
Ihres Domainnamens hinzufügen , wodurch dieser aus dem DNS verschwindet
- Die Registrierung kann die Domain
serverHold
aus beliebigen Gründen aktivieren.
( Weitere Informationen zu diesen und anderen Status finden Sie unter https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-de .)
Abhängig davon, wie Sie "alle" definieren und was Sie mit solchen Daten tun würden, erhalten Sie möglicherweise nicht wirklich alle.
In allen oben genannten Fällen wird die Domäne nicht auf den DNS-Servern der Registrierung angezeigt, sondern bei einer Whois-Abfrage. Whois-Server (wieder keine einzige Box) haben also auch ... die Liste aller .COM-Domainnamen und noch mehr Daten als auf Nameservern, weil:
- Sie haben wirklich alle Domain-Namen, einschließlich der nicht aufgelösten und daher nicht auf Registrierungs-Nameservern
- whois bietet weitaus mehr Informationen, wie z. B. Kontaktdaten
Und dies sind immer noch nur öffentlich zugängliche Registrierungsdienste, die in irgendeiner Weise oder teilweise die Liste (oder einen Teil davon) von Domainnamen haben.
Wie für Ihr Follow-up:
Folgefrage: Wenn sich jemand in einen dieser Computer "hackt", kann er dann nicht eine Liste aller .com-Domains erhalten?
Technisch ja. Aber:
- Dies ist sicherlich nicht das einfachste Ziel, das Sie online finden
- Und in diesem speziellen Fall sind die Daten bereits kostenlos verfügbar.
.COM
ist eine gTLD und steht als solche unter Vertrag mit ICANN. ICANN beauftragt alle gTLD-Register, ihre Zonendateien (was im Grunde genommen die Nameserver selbst verwenden, also die NS-Datensätze plus die A / AAAA-Klebstoffe) mindestens einmal pro Tag zu veröffentlichen. Der Zugriff ist für jeden kostenlos, solange Sie eine Vereinbarung unterzeichnen um sicherzustellen, dass Sie diese Daten nicht für "schlechte" Zwecke (wie die erneute Veröffentlichung selbst) wiederverwenden.
Weitere Informationen hierzu finden Sie unter https://czds.icann.org/en . Auf diese Weise können Sie auf Hunderte von gTLDs-Zonendateien zugreifen.
Beachten Sie, dass wir schnell antworten können , wenn Ihre Frage auf "Wenn sich jemand in einen dieser Computer einhackt und den Inhalt ändert, der .COM-Domainnamen hinzufügt oder entfernt ..." ändert :
- Die Änderungen werden nicht weltweit angezeigt, da Sie nur eine Box hacken und es zahlreiche Nameserver gibt, zuerst nach Namen, dann nach Anycasting
- DNSSEC kann dazu führen, dass Ihre Änderungen als Fehler angezeigt werden und daher schnell erkannt werden (abgesehen von lokalen Gegenmaßnahmen des Betreibers selbst natürlich).
Kurz gesagt, es ist nicht die beste Idee, dies zu tun, um mit .COM
Domain-Namen herumzuspielen , und es gibt andere Möglichkeiten.
Mir ist klar, dass Domain-Informationen öffentlich sind, aber immer noch schwer in großen Mengen zu erhalten sind.
Siehe oben für das ICANN-Programm. Bei ccTLD ist die Situation unterschiedlich, aber häufiger gewähren sie keinen Zugriff auf ihre Zonendatei und nicht in Echtzeit.
Manchmal können Sie nach einiger Zeit darauf zugreifen, beispielsweise durch "Open Data" -Bewegungen. Ein Beispiel: https://opendata.afnic.fr/en/products-and-services/services/opendata-en.html für .FR
Domainnamen.
Ich vermute, * .gtld-servers.net unterstützt keine Zonenübertragungen (obwohl dies die Nameserver von .edu vor mindestens einigen Jahren getan haben).
Einfach zu testen:
$ for ns in $(dig NS . +noall +ans | grep 'IN NS' | awk '{print $5}') ; do echo $ns ; dig @$ns com. AXFR; done
c.root-servers.net.
; <<>> DiG 9.12.0 <<>> @c.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
m.root-servers.net.
; <<>> DiG 9.12.0 <<>> @m.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
i.root-servers.net.
; <<>> DiG 9.12.0 <<>> @i.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
e.root-servers.net.
; <<>> DiG 9.12.0 <<>> @e.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
j.root-servers.net.
; <<>> DiG 9.12.0 <<>> @j.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
l.root-servers.net.
; <<>> DiG 9.12.0 <<>> @l.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
g.root-servers.net.
; <<>> DiG 9.12.0 <<>> @g.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
k.root-servers.net.
; <<>> DiG 9.12.0 <<>> @k.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
b.root-servers.net.
; <<>> DiG 9.12.0 <<>> @b.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
h.root-servers.net.
; <<>> DiG 9.12.0 <<>> @h.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
d.root-servers.net.
; <<>> DiG 9.12.0 <<>> @d.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
;; QUERY SIZE: 44
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
;; QUERY SIZE: 44
;; connection timed out; no servers could be reached
;; Connection to 199.7.91.13#53(199.7.91.13) for com. failed: timed out.
a.root-servers.net.
; <<>> DiG 9.12.0 <<>> @a.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
f.root-servers.net.
; <<>> DiG 9.12.0 <<>> @f.root-servers.net. com. AXFR
; (1 server found)
;; global options: +cmd
;; QUERY SIZE: 44
; Transfer failed.
Nein, .COM
derzeit akzeptieren keine autorisierenden Nameserver AXFR-Abfragen. Dies ist jedoch nicht unbedingt überall gleich. Wenn Sie den f.root-servers.net
Nameserver abfragen , können Sie eine AXFR-Abfrage durchführen, um alle TLDs zu veröffentlichen. Einige andere TLDs können dies ebenfalls zulassen.
Beachten Sie, dass es "viele" Empfehlungen gegen das Zulassen öffentlicher AXFR-Abfragen gibt. Die Fakten sind, dass sie per Definition riesige Antworten sind und einen Server belasten könnten, wenn sie wiederholt werden, das ist wahr. On kann endlos darüber streiten, warum / ob die Öffentlichkeit diese Informationen benötigt. Zu Beginn des DNS wurde es häufiger zum Kopieren von Zonen zwischen Nameservern verwendet (es gibt jetzt weitaus bessere Alternativen). Daher ist AXFR häufig deaktiviert. Wenn Sie jedoch gleichzeitig DNSSEC auf eine bestimmte Weise ausführen (dh NSEC und nicht die NSEC3-Variante), können Sie alle Ihre Standard-DNS-Abfragen ohne AXFR problemlos durchlaufen Zone und rekonstruieren Sie die Zonendatei. Dazu gibt es Tools.
Beachten Sie auch, dass verschiedene Online-Anbieter Ihnen Zonendateien und / oder eine Liste aller Domainnamen für viele TLDs verkaufen, die sie auf verschiedene Weise erworben haben (eine Idee unter anderem: Sie nehmen die offenen Zonendateien wie .COM
und für TLD fragen .example
Sie eine nach der anderen ab Alle Namen, die Sie gefunden .COM
haben, die Ihnen einige Ideen geben könnten, außer natürlich das Wörterbuch, das auf den Sprachen basiert, die in der TLD am häufigsten verwendet werden.