Wie funktioniert DNS und wie behebe ich teilweise oder zeitweise auftretende DNS-Fehler?
Ich möchte teilweise oder zeitweise auftretende DNS-Fehler beheben.
Behebung
Überblick über DNS
DNS wandelt leicht zu merkende Namen wie www.example.com in numerische IP-Adressen wie 192.0.2.1 um und leitet den Benutzer dann zu den Internetanwendungen weiter. Dieser Vorgang wird als „DNS-Auflösung“ bezeichnet. Weitere Informationen findest du unter Was ist DNS?
Teilweise, temporäre oder intermittierende DNS-Ausfallszenarien
In manchen Fällen kommt es vor, dass ein Client entweder für kurze Zeit oder zeitweise DNS-Fehler hat. Die folgenden Szenarien können häufig zu einem teilweisen DNS-Ausfall führen:
Falsch konfigurierte Nameserver beim Registrar
Manchmal sind ein oder mehrere Nameserver auf dem Registrar falsch konfiguriert. Eine Whois-Suche liefert die Nameserver, die auf dem Registrar der Domain konfiguriert sind. Der lokale Resolver gibt während der DNS-Auflösung eine SERVFAIL-Meldung zurück, wenn registrierte Nameserver nicht oder mit unerwarteten Informationen antworten. In einigen Fällen können lokale Resolver die Anfrage mit einem anderen Nameserver versuchen, der möglicherweise nicht falsch konfiguriert ist. Wenn sie dies tun, erhalten sie die erwartete DNS-Antwort.
Außerdem können die lokalen Resolver die falschen Nameserver für die TTL-Zeit cachen und die nächste Anfrage an den falsch konfigurierten Nameserver senden.
Geänderte Nameserver in der gehosteten Zone
Wenn der NS-Datensatz für eine Domain in der gehosteten Zone falsch konfiguriert ist, kann ein teilweiser DNS-Fehler auftreten. Entweder wurden die vorhandenen Nameserver aktualisiert oder es wurden zusätzliche Nameserver zum Wert des NS-Datensatzes hinzugefügt. Wenn der Resolver versucht, die Domain über den falschen Nameserver aufzulösen, kann es zu einem teilweisen DNS-Fehler kommen.
Der DNS-Resolver des Kunden kann die Domain nicht auflösen
Manchmal sind falsche Resolver in der Resolver-Konfigurationsdatei, wie z. B. resolv.conf unter Linux eingestellt. Wenn du die Domain von einer Amazon Elastic Compute Cloud (Amazon EC2)-Instance in einer Amazon Virtual Private Cloud (Amazon VPC) aus auflöst, verwendet die EC2-Instance die in resolv.conf definierten Nameserver.
Von Amazon bereitgestellter DNS-Server, der die DNS-Abfragen drosselt
Von Amazon bereitgestellte DNS-Server sind auf einen Grenzwert von 1024 Paketen pro Sekunde pro elastischer Netzwerkschnittstelle beschränkt. Von Amazon bereitgestellte DNS-Server lehnen jeglichen Datenverkehr ab, der diesen Grenzwert überschreitet. Aufgrund der DNS-Drosselung kommt es gelegentlich zu DNS-Timeouts. Aktiviere das Caching der Instance oder erhöhe den DNS-Wiederholungs-Timer der Anwendung, um dieses Problem zu beheben.
Die Domain-URL wird aus dem Internet aufgelöst, aber nicht aus der EC2-Instance
Nachdem du die folgenden Schritte durchgeführt hast, werden DNS-Abfragen für deine Domain immer von der privat gehosteten Zone aufgelöst:
- Erstelle eine privat gehostete Zone mit demselben Namen wie deine Domain.
- Verknüpfe deine VPC mit der privat gehosteten Zone und den VPC-DHCP-Optionen, die mit AmazonProvidedDNS konfiguriert wurden.
Wenn der abgefragte Datensatz für deine Domain nicht in der privat gehosteten Zone vorhanden ist, schlägt die DNS-Abfrage fehl. Außerdem wird deine DNS-Abfrage nicht an die öffentliche Domain weitergeleitet. Da der DNS-Datensatz in der öffentlichen Domain-Zone vorhanden ist, wird er aus dem Internet aufgelöst.
Falsch konfigurierte DNS-Firewall-Regel in Route 53
Wenn einer der folgenden Punkte auf eine der Domains zutrifft, überprüfe, ob die Amazon Route 53 DNS-Firewall für deine Domain konfiguriert ist.
- Wird im Internet aufgelöst
- Wird über einen öffentlichen Resolver aufgelöst (d. h. 1.1.1.1 oder 8.8.8.8 als Resolver-IP)
- Wird nicht von einem Virtual Private Server (VPS) aus aufgelöst.
Falsch konfigurierte Route 53-Resolver-Endpunkte
Die ausgehenden Resolver-Endpunkte von Route 53 und die Resolver-Regel können so konfiguriert werden, dass sie eine bestimmte DNS-Abfrage an einen On-Premises-DNS-Server senden. Stelle sicher, dass die Route 53-Endpunkte, die Resolver-Regel und der lokale DNS-Server korrekt konfiguriert sind. Weitere Informationen findest du unterWie behebe ich Probleme bei der DNS-Auflösung mit Route 53-Resolver-Endpunkten?
Behebe DNS-Fehler auf Linux-basierten Betriebssystemen
Verwende den Befehl dig, um eine Suche auf dem Client-DNS-Server durchzuführen, der in der Datei /etc/resolv.conf des Hosts konfiguriert ist.
$ dig www.amazon.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.49.amzn1 <<>> www.amazon.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13150 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.amazon.com. IN A ;; ANSWER SECTION: www.amazon.com. 41 IN A 54.239.17.6 ;; Query time: 1 msec ;; SERVER: 10.108.0.2#53(10.108.0.2) ;; WHEN: Fri Oct 21 21:43:11 2016 ;; MSG SIZE rcvd: 48
Im vorherigen Beispiel zeigt der Antwortabschnitt, dass 54.239.17.6 die IP-Adresse des HTTP-Servers für www.amazon.com ist. Wenn du die Variable +trace hinzufügat, kann der Befehl dig auch eine rekursive Suche nach einem DNS-Datensatz durchführen. Es folgt ein Beispiel für den Befehl dig mit der Variable +trace:
$ dig +trace www.amazon.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.49.amzn1 <<>> +trace www.amazon.com ;; global options: +cmd . 518400 IN NS J.ROOT-SERVERS.NET. . 518400 IN NS K.ROOT-SERVERS.NET. . 518400 IN NS L.ROOT-SERVERS.NET. ... ;; Received 508 bytes from 10.108.0.2#53(10.108.0.2) in 31 ms com. 172800 IN NS a.gtld-servers.net. com. 172800 IN NS b.gtld-servers.net. com. 172800 IN NS c.gtld-servers.net. ... ;; Received 492 bytes from 193.0.14.129#53(193.0.14.129) in 93 ms amazon.com. 172800 IN NS pdns1.ultradns.net. amazon.com. 172800 IN NS pdns6.ultradns.co.uk. ... ;; Received 289 bytes from 192.33.14.30#53(192.33.14.30) in 201 ms www.amazon.com. 900 IN NS ns-1019.awsdns-63.net. www.amazon.com. 900 IN NS ns-1568.awsdns-04.co.uk. www.amazon.com. 900 IN NS ns-277.awsdns-34.com. ... ;; Received 170 bytes from 204.74.108.1#53(204.74.108.1) in 87 ms www.amazon.com. 60 IN A 54.239.26.128 www.amazon.com. 1800 IN NS ns-1019.awsdns-63.net. www.amazon.com. 1800 IN NS ns-1178.awsdns-19.org. ... ;; Received 186 bytes from 205.251.195.251#53(205.251.195.251) in 7 ms
Du kannst auch eine Abfrage ausführen, die nur die Nameserver zurückgibt.
$ dig -t NS www.amazon.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.49.amzn1 <<>> -t NS www.amazon.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48631 ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.amazon.com. IN NS ;; ANSWER SECTION: www.amazon.com. 490 IN NS ns-1019.awsdns-63.net. www.amazon.com. 490 IN NS ns-1178.awsdns-19.org. www.amazon.com. 490 IN NS ns-1568.awsdns-04.co.uk. www.amazon.com. 490 IN NS ns-277.awsdns-34.com. ;; Query time: 0 msec ;; SERVER: 10.108.0.2#53(10.108.0.2) ;; WHEN: Fri Oct 21 21:48:20 2016 ;; MSG SIZE rcvd: 170
Im vorherigen Beispiel hat www.amazon.com die folgenden vier autoritativen Nameserver:
- ns-1019.awsdns-63.net.
- ns-1178.awsdns-19.org.
- ns-1568.awsdns-04.co.uk.
- ns-277.awsdns-34.com.
Jeder dieser vier Server kann Fragen zum Hostnamen www.amazon.com autoritativ beantworten. Verwende den Befehl dig, um direkt auf einen bestimmten Nameserver abzuzielen. Überprüfe, ob jeder autoritative Nameserver für eine bestimmte Domain korrekt antwortet.
Das Folgende ist eine Beispielausgabe für eine Abfrage an www.amazon.com an einen seiner autoritativen Nameserver (ns-1019.awsdns-63.net). Die Serverantwort zeigt, dass www.amazon.com unter 54.239.25.192 verfügbar ist:
$ dig www.amazon.com @ns-1019.awsdns-63.net.; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.49.amzn1 <<>> www.amazon.com @ns-1019.awsdns-63.net. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31712 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;www.amazon.com. IN A ;; ANSWER SECTION: www.amazon.com. 60 IN A 54.239.25.192 ;; AUTHORITY SECTION: www.amazon.com. 1800 IN NS ns-1019.awsdns-63.net. www.amazon.com. 1800 IN NS ns-1178.awsdns-19.org. www.amazon.com. 1800 IN NS ns-1568.awsdns-04.co.uk. ... ;; Query time: 7 msec ;; SERVER: 205.251.195.251#53(205.251.195.251) ;; WHEN: Fri Oct 21 21:50:00 2016 ;; MSG SIZE rcvd: 186
Die folgende Zeile zeigt, dass ns-576.awsdns-08.net ein autoritativer Nameserver für amazon.com ist:
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 0
Das Vorhandensein des aa-Flags zeigt, dass der Nameserver ns-1019.awsdns-63.net uns eine autoritative Antwort für den Ressourceneintrag www.amazon.com gegeben hat.
Behebe DNS-Fehler auf Windows-basierten Betriebssystemen
Verwende das Hilfsprogramm nslookup, um die einem Hostnamen zugeordnete IP-Adresse zurückzugeben.
C:\>nslookup www.amazon.comServer: ip-10-20-0-2.ec2.internal Address: 10.20.0.2 Non-authoritative answer: Name: www.amazon.com Address: 54.239.25.192
Um die autoritativen Nameserver für einen Hostnamen mithilfe des Dienstprogramms nslookup zu ermitteln, verwende das Flag -type=NS:
C:\>nslookup -type=NS www.amazon.comServer: ip-10-20-0-2.ec2.internal Address: 10.20.0.2 Non-authoritative answer: www.amazon.com nameserver = ns-277.awsdns-34.com www.amazon.com nameserver = ns-1019.awsdns-63.net www.amazon.com nameserver = ns-1178.awsdns-19.org ...
Verwende die folgende Syntax, um zu überprüfen, ob ns-277.awsdns-34.com für www.amazon.com korrekt auf eine Anfrage für www.amazon.com reagiert:
C:\>nslookup www.amazon.com ns-277.awsdns-34.comServer: UnKnown Address: 205.251.193.21 Name: www.amazon.com Address: 54.239.25.200
- Tags
- Amazon Route 53
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren
AWS OFFICIALAktualisiert vor 4 Jahren