Ενότητα 8 · 8.4
Veelgemaakte fouten
Ενότητα 8: Ασφάλεια και επίλυση προβλημάτων · Χρόνος ανάγνωσης: 10 λεπτά
Στόχος μαθήματος: Μετά από αυτό το μάθημα θα αναγνωρίζετε τα δέκα πιο συχνά σφάλματα DNS από το σύμπτωμά τους και θα ξέρετε πώς να τα διορθώνετε.
Βασικές έννοιες: τελεία στο τέλος, διπλό domain, αλλαγή στο λάθος σημείο, δύο εγγραφές SPF, CNAME στο βασικό domain (apex), ξεχασμένη AAAA, MX χωρίς διεύθυνση, proxy για το email, παλιό DS μετά από μεταφορά, cache
Πώς να χρησιμοποιήσετε αυτό το μάθημα
Τα παρακάτω σφάλματα δεν προέρχονται από κάποιο εγχειρίδιο, αλλά από ερωτήσεις που λαμβάνουν οι πάροχοι φιλοξενίας κάθε εβδομάδα. Για κάθε σφάλμα βλέπετε: τι αντιλαμβάνεται ο χρήστης, πώς το αποδεικνύετε με μία ερώτηση, και ποια είναι η λύση. Όταν αντιμετωπίζετε ένα πρόβλημα, ξεκινάτε πάντα με τις ίδιες δύο ερωτήσεις: ποιους nameservers έχει το domain (dig +short NS example.com) και τι επιστρέφει ο εξουσιοδοτημένος (authoritative) nameserver (dig @<nameserver> <naam> <type>). Με αυτά λύνετε ήδη τις μισές περιπτώσεις.
1. Ξεχνάτε την τελεία στο τέλος
Σύμπτωμα: μια εγγραφή CNAME, MX ή NS δεν λειτουργεί· μια υπηρεσία λέει "η εγγραφή δεν βρέθηκε".
Απόδειξη: dig +short CNAME shop.example.com επιστρέφει shops.platform.example.example.com.
Αιτία: σε μια ζώνη, ένα όνομα χωρίς τελεία στο τέλος είναι σχετικό: ο πίνακας ελέγχου προσθέτει το δικό σας domain στο τέλος (μάθημα 2.2).
Λύση: γράψτε το όνομα προορισμού ως πλήρες όνομα με τελεία (shops.platform.example.). Ορισμένοι πίνακες ελέγχου προσθέτουν την τελεία αυτόματα· ελέγξτε μετά την αποθήκευση τι ακριβώς έχει καταχωρηθεί.
2. Το domain διπλό μέσα στο όνομα
Σύμπτωμα: μια επαλήθευση ή έλεγχος DKIM σε μια υπηρεσία αποτυγχάνει, ενώ η εγγραφή "υπάρχει".
Απόδειξη: dig +short TXT k2._domainkey.example.com δεν επιστρέφει τίποτα, αλλά dig +short TXT k2._domainkey.example.com.example.com ναι.
Αιτία: η υπηρεσία δίνει το πλήρες όνομα (k2._domainkey.example.com) και ο πίνακας ελέγχου σας προσθέτει ξανά το domain στο τέλος.
Λύση: συμπληρώστε στο πεδίο ονόματος μόνο το τμήμα πριν από το domain σας: k2._domainkey. Ο πίνακας ελέγχου συνήθως εμφανίζει κάτω από το πεδίο το πλήρες όνομα: ελέγξτε το.
3. Αλλαγή στο λάθος σημείο
Σύμπτωμα: προσαρμόζετε μια εγγραφή, αλλά τίποτα δεν αλλάζει, ούτε μετά από μία ημέρα.
Απόδειξη: dig +short NS example.com επιστρέφει nameservers άλλου πάροχου από εκεί όπου κάνατε την αλλαγή (για παράδειγμα κατασκευαστή ιστότοπων ή Cloudflare).
Αιτία: μόνο ο πάροχος των nameservers καθορίζει το DNS (μάθημα 2.1). Εγγραφές σε άλλο σημείο δεν έχουν καμία επίδραση.
Λύση: αλλάξτε την εγγραφή στον πάροχο των nameservers, ή επαναφέρετε τους nameservers. Ένα πραγματικό παράδειγμα: κάποιος όρισε τους nameservers σε μια πλατφόρμα κατασκευής ιστότοπων για τον ιστότοπο, αλλά η εγγραφή A για το mail δεν υπήρχε εκεί. Αποτέλεσμα: η αποστολή λειτουργούσε, η λήψη όχι, γιατί η MX έδειχνε στο mail.example.com και αυτό το όνομα δεν υπήρχε πλέον.
4. Δύο εγγραφές SPF
Σύμπτωμα: το email καταλήγει συχνότερα στα ανεπιθύμητα ή απορρίπτεται, από τότε που συνδέσατε μια νέα υπηρεσία.
Απόδειξη: dig +short TXT example.com επιστρέφει δύο γραμμές που ξεκινούν με v=spf1.
Αιτία: η νέα υπηρεσία είπε "προσθέστε αυτήν την εγγραφή SPF", και αυτό έγινε κυριολεκτικά. Με δύο εγγραφές SPF, το SPF γίνεται άκυρο (permerror, RFC 7208), κάτι χειρότερο από το να μην υπάρχει καθόλου SPF.
Λύση: συνδυάστε τις σε μία εγγραφή: v=spf1 a mx include:_spf.hosting.example include:spf.service.example ~all. Προσέξτε το όριο των δέκα αναζητήσεων (μάθημα 4.3).
5. Μια CNAME στο βασικό domain (apex)
Σύμπτωμα: ο πίνακας ελέγχου απορρίπτει την εγγραφή, ή μετά την αποθήκευση το email σας σταματά να λειτουργεί.
Απόδειξη: η υπηρεσία ζητά "δημιουργήστε μια CNAME για @".
Αιτία: μια εγγραφή CNAME δεν επιτρέπεται να συνυπάρχει με άλλες εγγραφές, και στο βασικό domain υπάρχουν πάντα εγγραφές SOA και NS (και συχνά MX και TXT). Δείτε το μάθημα 3.2.
Λύση: χρησιμοποιήστε στο @ την εγγραφή A (και ενδεχομένως AAAA) που δίνει η υπηρεσία, και την CNAME μόνο για το www ή ένα subdomain. Ορισμένοι πάροχοι DNS διαθέτουν μια επιλογή ALIAS ή "CNAME flattening" για αυτήν την περίπτωση.
6. Ξεχασμένη AAAA σε μια μεταφορά
Σύμπτωμα: μετά από μια μεταφορά, ένα μέρος των επισκεπτών (συχνά από κινητό) βλέπει ακόμα τον παλιό ιστότοπο, ή εμφανίζεται σφάλμα πιστοποιητικού.
Απόδειξη: dig +short A example.com επιστρέφει τη νέα διεύθυνση, dig +short AAAA example.com ακόμα μια διεύθυνση του παλιού server.
Αιτία: οι συσκευές με IPv6 προτιμούν την εγγραφή AAAA. Έχει προσαρμοστεί μόνο η A.
Λύση: προσαρμόστε και την AAAA, ή αφαιρέστε την αν ο νέος server δεν έχει IPv6. Ένα πραγματικό παράδειγμα: κατά τη σύνδεση μιας πλατφόρμας ηλεκτρονικού καταστήματος, εκτός από τη νέα εγγραφή A έπρεπε να αφαιρεθεί και η παλιά AAAA, διαφορετικά το κατάστημα παρέμενε απρόσιτο για μέρος των επισκεπτών.
7. Μια MX που δεν δείχνει πουθενά
Σύμπτωμα: δεν λαμβάνετε email· οι αποστολείς λαμβάνουν μήνυμα σφάλματος.
Απόδειξη: dig +short MX example.com επιστρέφει 10 mail.example.com., αλλά dig +short A mail.example.com δεν επιστρέφει τίποτα (NXDOMAIN).
Αιτία: μια εγγραφή MX δείχνει σε ένα όνομα, και αυτό το όνομα πρέπει να έχει εγγραφή A ή AAAA. Συχνά η εγγραφή A για το mail έχει εξαφανιστεί κατά τη μεταφορά των nameservers. Μια MX δεν επιτρέπεται επίσης να δείχνει σε διεύθυνση IP ή σε CNAME (RFC 2181).
Λύση: δημιουργήστε μια εγγραφή A για το όνομα του mail server, ή κάντε την MX να δείχνει σε όνομα που έχει πράγματι διεύθυνση.
8. Το email είναι αλλού, αλλά ο παλιός server νομίζει ότι πρέπει αυτός να το παραδώσει
Σύμπτωμα: το email από έξω φτάνει κανονικά στον νέο σας πάροχο, αλλά το email από τη δική σας φόρμα επικοινωνίας (ή το ηλεκτρονικό κατάστημα) δεν φτάνει ποτέ. Μερικές φορές λαμβάνετε 550 Unknown user.
Απόδειξη: η MX δείχνει στον νέο πάροχο, αλλά στον web server είναι ακόμα ενεργή η τοπική παράδοση email.
Αιτία: αυτό δεν είναι σφάλμα DNS, αλλά μοιάζει με αυτό. Ένας web server που πιστεύει ότι διαχειρίζεται ο ίδιος τα mailboxes, δεν κοιτάζει καν την MX.
Λύση: απενεργοποιήστε στον πίνακα ελέγχου της φιλοξενίας σας την τοπική παράδοση (στο DirectAdmin: το πλαίσιο επιλογής "Gebruik deze server om mijn e-mails af te handelen"). Άλλοι πίνακες ελέγχου έχουν ανάλογη ρύθμιση, συχνά με την ονομασία "Remote mail exchanger" ή "e-mail extern".
9. Ενεργοποιημένο proxy για το email
Σύμπτωμα: σε έναν πάροχο DNS με λειτουργία proxy (όπως το πορτοκαλί σύννεφο στο Cloudflare), ο ιστότοπος λειτουργεί, αλλά το πρόγραμμα email σας δεν μπορεί να συνδεθεί, ή το πιστοποιητικό του ιστότοπου δεν ανανεώνεται.
Απόδειξη: dig +short A mail.example.com επιστρέφει διεύθυνση του proxy αντί του mail server σας.
Αιτία: ένα web proxy προωθεί μόνο την κίνηση ιστού, όχι το email.
Λύση: απενεργοποιήστε το proxy (γκρι σύννεφο, "DNS only") για το mail και όλα τα ονόματα που χρησιμοποιεί το πρόγραμμα email σας. Για πιστοποιητικά: απενεργοποιήστε προσωρινά το proxy μέχρι να εκδοθεί το πιστοποιητικό, ή χρησιμοποιήστε τη σωστή ρύθμιση SSL στο proxy.
10. Παλιό DS μετά από μεταφορά
Σύμπτωμα: μετά από μεταφορά των nameservers, το domain σας είναι απρόσιτο για ένα μέρος του κόσμου· άλλοι χρήστες δεν αντιμετωπίζουν κανένα πρόβλημα.
Απόδειξη: dig example.com @1.1.1.1 επιστρέφει SERVFAIL, ενώ dig +cd example.com @1.1.1.1 δίνει απάντηση. Το DNSViz (https://dnsviz.net/, μάθημα 8.1) χρωματίζει το DS κόκκινο και σχεδιάζει από κάτω ένα γκρι, διάστικτο κλειδί που δεν υπάρχει πλέον στη ζώνη σας. Το Zonemaster και ο Verisign DNSSEC Debugger αναφέρουν το ίδιο με λόγια.
Αιτία: στο μητρώο εξακολουθεί να υπάρχει το DS του παλιού πάροχου (μάθημα 8.1). Μόνο οι resolvers που κάνουν επικύρωση αποτυγχάνουν, γι' αυτό δεν το αντιλαμβάνονται όλοι.
Λύση: ζητήστε την ενημέρωση του DS με το κλειδί του νέου πάροχου, ή αφαιρέστε το και ενεργοποιήστε ξανά το DNSSEC μετά.
Και το "σφάλμα" που δεν είναι σφάλμα: η cache
Πολύ συχνά όλα είναι σωστά, αλλά εσείς εξακολουθείτε να βλέπετε την παλιά απάντηση. Το αναγνωρίζετε ως εξής: dig @<nameserver> επιστρέφει τη νέα απάντηση, το ίδιο και ένα online εργαλείο ελέγχου σε άλλες χώρες, μόνο ο δικός σας υπολογιστής όχι. Λύση: παράθυρο ιδιωτικής περιήγησης, τηλέφωνο μέσω 4G/5G, ή εκκαθάριση της cache σας (μάθημα 8.2). Επίσης μια ξεχασμένη γραμμή στο αρχείο hosts του υπολογιστή σας (από προηγούμενη δοκιμή πριν από μια μεταφορά) δίνει αυτήν την εικόνα: αφαιρέστε αυτήν τη γραμμή.
Μια σχετική παγίδα: να αναζητήσετε ένα νέο όνομα πριν το δημιουργήσετε. Ο resolver θυμάται τότε "δεν υπάρχει" (αρνητική cache) και χρειάζεται περισσότερος χρόνος μέχρι να λειτουργήσει το νέο όνομα (μάθημα 6.2).
Στην πράξη: έτσι φαίνεται σε έναν πίνακα ελέγχου
Πολλοί πίνακες ελέγχου αποτρέπουν μέρος αυτών των σφαλμάτων. Το WebOké μου, για παράδειγμα, προειδοποιεί όταν λείπει η τελεία στο τέλος και εμφανίζει κάτω από το πεδίο ονόματος το πλήρες όνομα· το DirectAdmin απορρίπτει εγγραφές που δεν είναι έγκυρες με το μήνυμα "Error Writing Records". Το Cloudflare και άλλοι πάροχοι έχουν ανάλογες προειδοποιήσεις. Πριν από μεγαλύτερες αλλαγές, δημιουργήστε αντίγραφο ασφαλείας ή εξαγωγή της ζώνης σας, ώστε να μπορείτε πάντα να επιστρέψετε πίσω.
Σύνοψη
- Ξεκινάτε πάντα με: ποιοι είναι οι nameservers, και τι λέει ο εξουσιοδοτημένος (authoritative) nameserver.
- Τα περισσότερα σφάλματα βρίσκονται στο όνομα (τελεία, διπλό domain) ή στο σημείο (λάθος πάροχος).
- Μία εγγραφή SPF, καμία CNAME στο @, μεταφορά και της AAAA, MX προς όνομα με διεύθυνση.
- Το SERVFAIL μετά από μεταφορά είναι συνήθως παλιό DS.
- Αν μόνο εσείς βλέπετε την παλιά απάντηση, πρόκειται για την cache σας ή το αρχείο hosts.
Κουίζ
Άσκηση
Άσκηση Z8.4: Αναγνώριση σφαλμάτων. Λαμβάνετε πέντε σύντομες περιπτώσεις μαζί με την αντίστοιχη έξοδο του dig (στο περιβάλλον του μαθήματος). Επιλέξτε για κάθε περίπτωση ποιο από τα δέκα σφάλματα πρόκειται. Στη συνέχεια, μια πραγματική αναζήτηση: διαπιστώστε με το dig ή ένα online εργαλείο ποια εγγραφή είναι λανθασμένη για το dnssec-failed.org (κατάσταση και τι δίνει το +cd), και αν το wikipedia.org έχει ακριβώς μία εγγραφή SPF.
Περαιτέρω ανάγνωση
Αυτά τα άρθρα περιγράφουν τις λύσεις στους πίνακες ελέγχου του WebOké· σε άλλους πάροχους τα κουμπιά ενδέχεται να έχουν διαφορετική ονομασία.
- Ο ιστότοπος ή το email δεν λειτουργεί μετά από μετακόμιση ή αλλαγή DNS: ελέγξτε το domain σας
- Πόσος χρόνος χρειάζεται για μια αλλαγή nameserver ή DNS, και τι γίνεται αν δεν τη βλέπετε;
- Εγχειρίδιο DirectAdmin 18.7: Το domain μου δεν λειτουργεί ακόμη μετά από μεταφορά ή αλλαγή
- Εγχειρίδιο DirectAdmin 18.9: Δεν λαμβάνω πλέον email
- Εγχειρίδιο DirectAdmin 5.4: Εγγραφές CNAME και η τελεία στο τέλος
- Η αποστολή email μέσω PHP δεν λειτουργεί, οι εγγραφές MX παραπέμπουν αλλού
- Χρήση δικών σας ή εξωτερικών nameservers (όπως το Cloudflare) για το domain σας
