DNS_PROBE_FINISHED_NXDOMAIN: αιτίες και λύσεις
· 2 λεπτά ανάγνωσης
Τι σημαίνει το σφάλμα
Πριν συνδεθεί σε μια ιστοσελίδα, ο browser ρωτά το Domain Name System για τη διεύθυνση πίσω από το όνομα. Το NXDOMAIN είναι η απάντηση του DNS «αυτό το όνομα δεν υπάρχει». Το Chrome το δείχνει ως DNS_PROBE_FINISHED_NXDOMAIN («Δεν είναι δυνατή η πρόσβαση σε αυτόν τον ιστότοπο»), το Firefox ως «Χμμ. Δυσκολευόμαστε να βρούμε αυτόν τον ιστότοπο», το Safari ως «Το Safari δεν μπορεί να βρει τον διακομιστή». Δεν επιχειρήθηκε σύνδεση· ο browser δεν πήρε ποτέ διεύθυνση για να συνδεθεί.
Αυτό είναι καλά νέα από μία άποψη: ο web server δεν εμπλέκεται καθόλου. Το πρόβλημα βρίσκεται στο DNS, είτε από την πλευρά του επισκέπτη (ένα τυπογραφικό, μια παλιά cache, ένας λάθος resolver) είτε από την πλευρά του ιδιοκτήτη (το domain ή οι εγγραφές του έχουν χαθεί).
Συνηθισμένες αιτίες
Από την πλευρά του επισκέπτη
- Ένα τυπογραφικό στη διεύθυνση ή ένας σύνδεσμος προς domain που δεν υπάρχει πια.
- Μια cache DNS στον υπολογιστή, στον browser ή στο router που κρατά ακόμη μια παλιά απάντηση «δεν υπάρχει».
- Ένας resolver που δεν φτάνει στο διαδίκτυο, ένα VPN ή εταιρικό δίκτυο που μπλοκάρει το domain, ένα φίλτρο γονικού ελέγχου.
- Λογισμικό antivirus ή «προστασίας ιστού» που υποκλέπτει το DNS.
Από την πλευρά του ιδιοκτήτη
- Το domain έχει λήξει. Ο καταχωρητής αφαιρεί τα nameservers κατά τη λήξη και από εκείνη τη στιγμή το όνομα δεν υπάρχει. Η συνηθέστερη αιτία για μια ιστοσελίδα που λειτουργούσε χθες.
- Λείπει η εγγραφή A ή AAAA. Μετά από μετακίνηση σε νέο πάροχο ή νέο πάροχο DNS, η εγγραφή για το
wwwή για το γυμνό domain δεν δημιουργήθηκε ποτέ. - Τα nameservers άλλαξαν αλλά η ζώνη είναι άδεια. Έστρεψες το domain στο Cloudflare ή σε νέο πάροχο, αλλά δεν αντέγραψες πρώτα εκεί τις εγγραφές.
- Ένα subdomain που δεν ρυθμίστηκε ποτέ. Το
shop.example.comεπιστρέφει NXDOMAIN επειδή δεν υπάρχει εγγραφή για τοshop, ενώ τοexample.comλειτουργεί. - Χαλασμένο DNSSEC. Μια λάθος εγγραφή DS στον καταχωρητή μετά από αλλαγή παρόχου κάνει τους resolvers που επικυρώνουν (οι περισσότεροι σήμερα) να επιστρέφουν αποτυχία, που οι browsers δείχνουν ως NXDOMAIN ή παρόμοιο σφάλμα.
- Διάδοση (propagation). Μόλις άλλαξες nameservers· ορισμένοι resolvers βλέπουν ακόμη την παλιά, τώρα άδεια ζώνη. Παίρνει έως το TTL, στη χειρότερη περίπτωση 24 έως 48 ώρες.
Αν είσαι επισκέπτης
- Έλεγξε την ορθογραφία της διεύθυνσης και δοκίμασέ την με και χωρίς
www. - Καθάρισε την cache DNS: Windows
ipconfig /flushdns, macOSsudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder, Linuxsudo resolvectl flush-caches. Στο Chrome, άνοιξε τοchrome://net-internals/#dnsκαι πάτησε «Clear host cache». - Επανεκκίνησε το router ή δοκίμασε την ιστοσελίδα στο κινητό σου με το Wi-Fi κλειστό. Αν λειτουργεί εκεί, φταίει ο resolver του δικτύου σου.
- Άλλαξε τον resolver σε δημόσιο (1.1.1.1 ή 9.9.9.9) στις ρυθμίσεις δικτύου.
- Αν τίποτα από αυτά δεν βοηθά, το domain έχει πραγματικά χαθεί ή είναι χαλασμένο, και μόνο ο ιδιοκτήτης του μπορεί να το διορθώσει.
Αν είναι η δική σου ιστοσελίδα: έλεγξε πρώτα
Τρέξε τον έλεγχο διαθεσιμότητας ιστοσελίδας: σου λέει αν το domain επιλύεται από μια ουδέτερη τοποθεσία. Αν δεν επιλύεται, συνέχισε εδώ. Αν επιλύεται, το πρόβλημα βρίσκεται στην πλευρά του επισκέπτη σου· στείλε του τη λίστα παραπάνω.
Μετά κοίταξε το ίδιο το domain:
# επιλύεται το όνομα και ποιος απαντά;
dig +short example.com A
dig +short www.example.com A
dig example.com NS +short
# ρώτα απευθείας τον authoritative nameserver (παρακάμπτει κάθε cache)
dig @ns1.your-dns-provider.com example.com A
# κατάσταση καταχώρισης και ημερομηνία λήξης
whois example.com | grep -iE 'expir|status'
Μια κενή απάντηση από το dig με status: NXDOMAIN στην πλήρη έξοδο σημαίνει ότι η εγγραφή δεν υπάρχει στον authoritative server. Αν το whois δείχνει κατάσταση όπως clientHold, redemptionPeriod ή pendingDelete, φταίει η καταχώριση, όχι οι εγγραφές.
# DNSSEC: μια σπασμένη αλυσίδα φαίνεται ως SERVFAIL στους resolvers που επικυρώνουν
dig @1.1.1.1 example.com A +dnssec | grep -E 'status|flags'
Διορθώσεις για ιδιοκτήτες ιστοσελίδων
1. Ληγμένο domain
Συνδέσου στον καταχωρητή σου και ανανέωσε. Οι περισσότεροι καταχωρητές επαναφέρουν ένα domain μέσα σε λίγα λεπτά μετά την πληρωμή κατά την περίοδο χάριτος (συνήθως 30 ημέρες)· στην περίοδο redemption που ακολουθεί, κοστίζει τέλος επαναφοράς και παίρνει περισσότερο χρόνο. Όρισε το domain σε αυτόματη ανανέωση και φρόντισε η κάρτα που έχεις καταχωρίσει να είναι σε ισχύ· ένα domain που λήγει ρίχνει ταυτόχρονα email, ιστοσελίδα και κάθε subdomain.
2. Εγγραφή που λείπει
Στον πάροχο DNS σου, πρόσθεσε την εγγραφή που λείπει. Για μια ιστοσελίδα αυτό είναι τυπικά:
example.com. A 203.0.113.10
www.example.com. CNAME example.com.
Χρησιμοποίησε την IP του web server σου (hostname -I στον server ή τη διεύθυνση που σου έδωσε ο πάροχός σου). Αν ο server έχει IPv6, πρόσθεσε και εγγραφή AAAA, ή αφαίρεσε τη χαλασμένη αν ο server δεν έχει. Οι αλλαγές ισχύουν εντός του TTL της εγγραφής, συνήθως 5 λεπτά έως μία ώρα.
3. Άδεια ζώνη μετά από αλλαγή nameserver
Πριν αλλάξεις nameservers, εξήγαγε τη ζώνη από τον παλιό πάροχο (το dig example.com AXFR @old-ns σπάνια λειτουργεί· οι περισσότεροι πάροχοι έχουν κουμπί εξαγωγής) και εισήγαγέ την στον νέο. Αν έχεις ήδη αλλάξει: δημιούργησε ξανά τις εγγραφές στον νέο πάροχο· A για το γυμνό domain και το www, MX και TXT για email, και όποια subdomains χρησιμοποιείς. Ο παλιός πάροχος συχνά σου δείχνει ακόμη τη λίστα.
4. DNSSEC
Αν το dig +dnssec επιστρέφει SERVFAIL ενώ το απλό ερώτημα στον authoritative server λειτουργεί, η εγγραφή DS στον καταχωρητή δεν ταιριάζει με τα κλειδιά στον πάροχο DNS. Είτε αφαίρεσε το DNSSEC στον καταχωρητή (αφαίρεσε την εγγραφή DS) μέχρι να ρυθμιστούν και οι δύο πλευρές μαζί, είτε αντίγραψε τη νέα εγγραφή DS από τον πάροχο DNS στον καταχωρητή.
5. Στον δικό σου server
Τίποτα στον web server δεν προκαλεί NXDOMAIN, άρα δεν υπάρχει κάτι να επανεκκινήσεις. Παρ’ όλα αυτά έλεγξε ότι ο δικός σου resolver του server λειτουργεί, γιατί ένας server που δεν μπορεί να επιλύσει ονόματα αποτυγχάνει στις ενημερώσεις, στο email και στις κλήσεις API:
resolvectl status | head -20
dig +short example.com @127.0.0.53
Όταν φταίει ο πάροχός σου
Αν ο πάροχός σου διαχειρίζεται και το DNS σου (συνηθισμένο στο shared hosting), και οι εγγραφές φαίνονται σωστές στον πίνακα ελέγχου τους αλλά εξακολουθούν να μην επιλύονται απέξω, στείλε του:
Γεια σας, το domain μου example.com δεν επιλύεται (NXDOMAIN) από περίπου τις 11:00 UTC. Οι εγγραφές στον πίνακα ελέγχου φαίνονται σωστές και το domain είναι καταχωρισμένο μέχρι το 2027. Μπορείτε να ελέγξετε τη ζώνη DNS στα nameservers σας και αν το domain εξακολουθεί να είναι εκχωρημένο σε αυτά;
Πώς να αποτρέψεις το επόμενο
Το NXDOMAIN στο δικό σου domain είναι σχεδόν πάντα η λήξη που ξέχασες ή η εγγραφή που δεν αντέγραψες. Ένα monitor DNS συγκρίνει τις εγγραφές σου με τις τιμές που περιμένεις και σε ειδοποιεί τη στιγμή που μία εξαφανίζεται ή αλλάζει· ένας έλεγχος ιστοσελίδας απέξω πιάνει τη στιγμή που το όνομα παύει να επιλύεται. Και τα δύο αποτελούν μέρος της παρακολούθησης ιστοσελίδων, δωρεάν για τα πρώτα 50 monitors. Και αν οι εγγραφές βρίσκονται στον δικό σου server, ένα Deep Fix τις επαναφέρει.
Τι κάνεις τώρα
Έλεγξέ το απ’ έξω
Έχει πέσει η ιστοσελίδα για όλους ή μόνο για σένα, και τι απαντά ο server; Δωρεάν, χωρίς εγγραφή.
Έλεγχος διαθεσιμότητας ιστοσελίδαςΈπεσε; Αναλαμβάνουμε.
Στον δικό σου server ή σε webspace με πρόσβαση SSH: ένα Quick Fix σε σταθερή τιμή για τις συνηθισμένες αιτίες, ένα Deep Fix με χρέωση σε τμήματα των 15 λεπτών για τις υπόλοιπες, όλο το εικοσιτετράωρο. Τιμή πριν παραγγείλεις.
Ζήτησε επισκευήΠερισσότεροι οδηγοί
- Η ιστοσελίδα σου έχει πέσει. Τι να κάνεις στα πρώτα 15 λεπτά.
- Έπεσε ο server: τι να ελέγξεις πρώτα και με ποια σειρά
- 502 Bad Gateway: αιτίες και πώς να το διορθώσεις
- 503 Service Unavailable: υπερφόρτωση ή συντήρηση;
- 504 Gateway Timeout: τι σημαίνει και πώς να το διορθώσεις
- ERR_CONNECTION_REFUSED: αιτίες και πώς να το διορθώσεις
- «Η σύνδεσή σας δεν είναι ιδιωτική»: η προειδοποίηση για το πιστοποιητικό SSL