Přejít na hlavní obsah

Návody / Opravte to: návody na chyby, se kterými se lidé skutečně setkávají

DNS_PROBE_FINISHED_NXDOMAIN: co to znamená a jak to opravit

DNS_PROBE_FINISHED_NXDOMAIN znamená, že dotaz na zadaný název hostitele skončil odpovědí "no such name". Prohlížeč nikdy nedostal IP adresu, takže nikdy neotevřel spojení. Problém je v překladu názvu, ne na webovém serveru webu.

Co chyba znamená

NXDOMAIN je DNS odpovědní kód, zkratka pro non-existent domain. Resolver ho vrátí poté, co projde řetězec od kořene až k zóně, kde by měl být váš hostitel uveden, a nic tam nenajde. Chrome vypíše DNS_PROBE_FINISHED_NXDOMAIN. Firefox hlásí, že se nelze připojit k serveru. Safari hlásí, že server nelze nalézt. Všechny tři hlásí stejnou odpověď.

NXDOMAIN není totéž co selhání resolveru, a tento rozdíl rozhoduje, kde hledat dál. Pokud je váš resolver nedostupný nebo vyprší časový limit, dostanete místo toho zprávu "DNS server neodpovídá". Pokud zóna odpoví, ale je rozbitá, například řetězec DNSSEC, který se neověří, obvykle dostanete SERVFAIL. NXDOMAIN je definitivní odpověď: název není zveřejněn.

Jedna vlastnost NXDOMAIN je při řešení problémů důležitější než cokoli jiného. Záporné odpovědi se ukládají do mezipaměti. Podle RFC 2308 resolver ukládá výsledek "no such name" po dobu uvedenou v záznamu SOA dané zóny, běžně mezi 5 a 60 minutami. Doména, která před dvěma minutami začala fungovat, může na vašem počítači stále selhávat, a žádné množství obnovování stránky to nezmění, dokud záznam v mezipaměti nevyprší nebo ho sami nevymažete.

Proč k tomu dochází

  • Překlep v názvu hostitele. Zdaleka nejčastější příčina, a ta, kterou každý zkontroluje jako poslední.
  • Doména není zaregistrovaná, nebo vypršela. Vypršelá doména bývá ze zóny odstraněna během několika hodin od konce ochranné lhůty.
  • Chybí delegace na jmenné servery. Doména u registrátora existuje, ale nemá záznamy NS ukazující na DNS poskytovatele, takže nadřazená zóna nemá resolvera kam odkázat.
  • Záznam byl smazán nebo přejmenován. Chybějící A nebo CNAME záznam pro www vytvoří NXDOMAIN pro www.example.com, zatímco holá doména dál funguje.
  • Změna se k vašemu resolveru ještě nedostala. Nové záznamy se všude projeví až po uplynutí TTL předchozího záznamu.
  • Uložená záporná odpověď ve vašem zařízení, prohlížeči nebo u resolveru vašeho poskytovatele internetu.
  • Záznam v hosts souboru ukazující název někam, co už neexistuje, nebo pozůstatek po starém testu.
  • VPN, proxy nebo filtrovací software, který si DNS řeší sám a blokuje název nebo ho nedokáže přeložit.
  • Název hostitele, který existuje jen v privátní síti, ke které aktuálně nejste připojeni, například interní doména .local nebo firemní doména.

Jak to opravit

Nejprve adresu přepište znovu, poté postupujte od prohlížeče směrem ven k síti. Testujte po každém kroku, ne až po jejich provedení všech najednou.

Prohlížeč

  1. Otevřete stejnou adresu v anonymním okně. Pokud se tam načte, jde o rozšíření nebo cookie, ne o DNS.
  2. Vymažte vlastní mezipaměť resolveru Chromu na chrome://net-internals/#dns, poté vyprázdněte fronty soketů na chrome://net-internals/#sockets. Chrome má mezipaměť oddělenou od operačního systému, takže samotné vyčištění na úrovni OS často nic nezmění.

Windows

  1. Vymažte mezipaměť resolveru: ipconfig /flushdns
  2. Obnovte síťový pronájem, čímž se převezmou i DNS servery přidělené přes DHCP:
    ipconfig /release
    ipconfig /renew
  3. Pokud vyčištění nepomůže, restartujte službu mezipaměti:
    net stop dnscache
    net start dnscache
  4. Zkontrolujte C:\Windows\System32\drivers\etc\hosts, zda tam není řádek s danou doménou, a pokud je zastaralý, smažte ho.
  5. Nastavte veřejný resolver: netsh interface ipv4 set dnsservers name="Wi-Fi" static 1.1.1.1 primary
  6. Jako poslední možnost resetujte síťový zásobník a restartujte počítač: netsh winsock reset

macOS

  1. Vymažte mezipaměť: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  2. Zjistěte, které servery se používají: scutil --dns | grep nameserver
  3. Nastavte rozhraní na veřejný resolver: sudo networksetup -setdnsservers Wi-Fi 1.1.1.1 1.0.0.1
  4. Prohlédněte /etc/hosts a odstraňte jakýkoli řádek pro danou doménu.

Linux

  1. Na systemd-resolved: sudo resolvectl flush-caches, poté ověřte používané servery přes resolvectl status.
  2. Na dnsmasq: sudo systemctl restart dnsmasq. Na nscd: sudo systemctl restart nscd.
  3. Přečtěte /etc/resolv.conf, abyste zjistili, který resolver dotazujete, a /etc/hosts kvůli zastaralému přepisu.
  4. Pomocí NetworkManageru změňte resolver přímo na připojení:
    nmcli con mod "Wired connection 1" ipv4.dns "1.1.1.1 1.0.0.1"
    nmcli con up "Wired connection 1"

Router

  1. Vypněte a znovu zapněte router. Většina spotřebitelských routerů provozuje malý předávací resolver s vlastní mezipamětí, a restart ji vymaže.
  2. Ve správcovském rozhraní routeru zkontrolujte DNS servery uvedené u WAN nebo DHCP. Pokud ukazují na starý interní server nebo filtrovací službu, nahraďte je.
  3. Otestujte to na telefonu s mobilními daty místo Wi-Fi. Pokud se tam název přeloží, chyba je uvnitř vaší sítě.

Pokud jste vlastníkem domény

NXDOMAIN na vašem vlastním webu je problém publikace a může pocházet jen z několika míst. Nejprve zkontrolujte stav registrace a datum vypršení. Poté ověřte delegaci, což je krok, který lidé nejčastěji přeskakují:

dig NS example.com +short
dig example.com +trace

Prázdná odpověď NS znamená, že nadřazená zóna nemá žádnou delegaci, takže se k vašemu DNS poskytovateli nedostane žádný resolver bez ohledu na to, jaké záznamy jste tam vytvořili. Výstup +trace ukazuje řetězec předávání a přesný krok, kde se zastaví. Pokud je delegace v pořádku, dotažte přímo jmenný server svého poskytovatele, abyste ověřili, že záznam existuje v zóně, kterou upravujete:

dig @ns1.example-dns.net www.example.com A

Když přidáte chybějící záznam, stará záporná odpověď zůstane jinde uložena v mezipaměti tak dlouho, jak dovoluje minimální hodnota SOA, takže tomu dejte tolik času, než usoudíte, že oprava nefunguje.

Ověřte to zvenčí

Každá z výše uvedených oprav mění jen váš vlastní počítač. Žádná z nich vám neřekne, jestli se název přeloží i pro kohokoli jiného, a to je to, co chcete vědět jako první. Spusťte dotaz vůči dvěma veřejným resolverům a porovnejte je:

dig example.com +short
dig @1.1.1.1 example.com +short
dig @8.8.8.8 example.com +short

nslookup example.com 8.8.8.8

Pokud váš výchozí resolver nevrátí nic a 1.1.1.1 vrátí adresu, záznam existuje a váš resolver drží zastaralou zápornou odpověď nebo název filtruje. Pokud nevrátí nic ani jeden z resolverů, záznam skutečně chybí.

Dva resolvery stále pokrývají jen jeden úhel pohledu a DNS odpovědi se podle regionu liší častěji, než by člověk čekal. Spusťte kontrolu DNS dotazu, abyste přeložili název z kontrolních bodů v několika zemích najednou a přečetli si, co vrátil každý z nich. Rozdělený výsledek, kdy některá místa odpovídají a jiná ne, ukazuje na změnu, která se stále šíří, nebo na jmenný server jednoho poskytovatele nedostupný z části internetu. Toto sledování v čase je DNS propagace, která má vlastní návod jak zkontrolovat DNS propagaci.

Jak zachytit název, který přestane fungovat

Záznam, který zmizí, na vaší straně nezanechá žádnou stopu. Nikam se nic nezaznamená, protože žádný požadavek nikdy nedorazí, a jediným náznakem je graf provozu, který klesne. Řešením je ve všech případech dotaz, který běží podle plánu odjinud než z vaší kanceláře. HostTracker monitoruje weby od roku 2004 a nyní spouští kontroly z více než 300 kontrolních bodů ve 158 městech a upozorňuje e-mailem, SMS, hlasovým hovorem, přes Slack, Telegram a další, jakmile se název přestane překládat nebo začne odpovídat nesprávnou adresou. Další návody z této sekce najdete v clusteru oprav, a nejblíže tomuto tématu mají dva: DNS server neodpovídá, pro případ, kdy resolver vůbec neodpoví, a jak opravit pomalé DNS vyhledávání, pro případ, kdy odpoví, ale trvá to příliš dlouho.

Zkontrolovat hned

Spusťte bezplatnou kontrolu na svém webu - bez registrace.

Dns query

Sledovat trvale

Dostanete upozornění ve chvíli, kdy něco přestane fungovat: HostTracker kontroluje z více než 300 lokalit a upozorní vás e-mailem, SMS, přes Slack, Telegram a další.

Funkce HostTracker

Více v této sekci: Opravte to: návody na chyby, se kterými se lidé skutečně setkávají