363 Stimmen

Wie finde ich den maßgeblichen Namenserver für einen Domänennamen?

Wie kann ich den Ursprung von widersprüchlichen DNS-Einträgen finden?

469voto

Antti Kissaniemi Punkte 18474

Sie benötigen den SOA-Eintrag (Start of Authority) für einen bestimmten Domänennamen, und so erreichen Sie ihn mit dem allgemein verfügbaren nslookup Befehlszeilenwerkzeug:

command line> nslookup
> set querytype=soa
> stackoverflow.com
Server:         217.30.180.230
Address:        217.30.180.230#53

Non-authoritative answer:
stackoverflow.com
        origin = ns51.domaincontrol.com # ("primary name server" on Windows)
        mail addr = dns.jomax.net       # ("responsible mail addr" on Windows)
        serial = 2008041300
        refresh = 28800
        retry = 7200
        expire = 604800
        minimum = 86400
Authoritative answers can be found from:
stackoverflow.com       nameserver = ns52.domaincontrol.com.
stackoverflow.com       nameserver = ns51.domaincontrol.com.

En Herkunft (oder primärer Namensserver unter Windows) sagt Ihnen, dass ns51.domaincontrol ist der Hauptnamenserver für stackoverflow.com .

Am Ende der Ausgabe werden alle autoritativen Server, einschließlich der Backup-Server für die angegebene Domäne, aufgelistet.

194voto

bortzmeyer Punkte 32353

Sie haben in Ihrer Frage den Singular verwendet, aber in der Regel gibt es mehrere maßgebliche Nameserver; RFC 1034 empfiehlt mindestens zwei.

Es sei denn, Sie meinen "primärer Nameserver" und nicht "autoritativer Nameserver". Die sekundären Nameserver sind maßgebend.

So finden Sie die Nameserver einer Domäne unter Unix heraus:

  % dig +short NS stackoverflow.com
 ns52.domaincontrol.com.
 ns51.domaincontrol.com.

Um herauszufinden, welcher Server als primär aufgeführt ist (der Begriff "primär" ist heutzutage ziemlich unscharf und lässt sich in der Regel nicht eindeutig beantworten):

% dig +short  SOA stackoverflow.com | cut -d' ' -f1
ns51.domaincontrol.com.

Um Diskrepanzen zwischen Nameservern zu überprüfen, bevorzuge ich die alte check_soa Tool, das in dem Buch "DNS & BIND" von Liu & Albitz (O'Reilly-Verlag) beschrieben wird. Der Quellcode ist verfügbar in http://examples.oreilly.com/dns5/

% check_soa stackoverflow.com
ns51.domaincontrol.com has serial number 2008041300
ns52.domaincontrol.com has serial number 2008041300

Hier haben die beiden autoritativen Nameserver die gleiche Seriennummer. Gut.

44voto

aryeh Punkte 2165

Unter *nix:

$ dig -t ns <domain name>

23voto

David Precious Punkte 6455

Sie können die Nameserver für eine Domäne mit dem Befehl "host" herausfinden:

[davidp@supernova:~]$ host -t ns stackoverflow.com
stackoverflow.com name server ns51.domaincontrol.com.
stackoverflow.com name server ns52.domaincontrol.com.

14voto

Alex Punkte 2660

Ich habe festgestellt, dass es am besten ist, immer die Option +trace hinzuzufügen:

dig SOA +trace stackoverflow.com

Es funktioniert auch mit rekursiven CNAME, die bei verschiedenen Providern gehostet werden. +trace trace impliziert +norecurse, so dass das Ergebnis nur für die von Ihnen angegebene Domain gilt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X