Το «το DNS είναι χαλασμένο» είναι συμπέρασμα, και δεν είναι συμπέρασμα πάνω στο οποίο μπορεί κάποιος να ενεργήσει. Το χρήσιμο μέρος μιας αναφοράς είναι η μορφή της αστοχίας: ποιο όνομα, μέσω ποιου resolver, με ποια απόκριση. Τρεις λεπτομέρειες μετατρέπουν ένα παράπονο σε κάτι αναπαραγώγιμο, και οι τρεις είναι ασφαλείς να μοιραστούν μόλις μετονομαστούν τα ιδιωτικά μέρη. Ακολουθεί το ελάχιστο που χρειάζεται μια αναφορά DNS για VPN πριν μπορέσει να βοηθήσει κάποιος.

Κατηγορία ονόματος, όχι ετυμηγορία

Ξεκινήστε με το ίδιο το όνομα και ταξινομήστε το: δημόσιο, εσωτερικό, σύντομο, πλήρως προσδιορισμένο ή εξυπηρετούμενο από ένα συγκεκριμένο επίθημα. Ένα εσωτερικό όνομα που αποτυγχάνει ενώ τα δημόσια επιλύονται δείχνει προς την επιλογή resolver και όχι προς τη δυνατότητα προσέγγισης. Αν αποτυγχάνουν όλα τα ονόματα, αυτό δείχνει προς τη διαδρομή προς τον resolver, που είναι άλλη έρευνα με άλλα στοιχεία. Η κατηγορία φέρει τη διάγνωση, και η ακριβής συμβολοσειρά μπορεί να αποκρυφθεί.

Πείτε αν η αστοχία απαιτεί το τούνελ να είναι ενεργό ή συμβαίνει αφού αποσυνδεθεί. Ένα όνομα που σπάει μόνο όσο το VPN είναι ενεργό υποδεικνύει τη διαμόρφωση ανά σύνδεση, ενώ ένα που σπάει μετά την αποσύνδεση υποδεικνύει υπολειπόμενη κατάσταση. Οι αναφορές συνήθως το παραλείπουν και μετά αναρωτιούνται γιατί δεν βοηθά η πρώτη πρόταση.

Καταγράψτε τη διαδρομή του resolver

Ένα ερώτημα που στέλνεται σε ρητά επιλεγμένο διακομιστή και η συνηθισμένη αναζήτηση μιας εφαρμογής είναι διαφορετικά πειράματα. Δηλώστε ποιο από τα δύο προκάλεσε την αστοχία, γιατί ένα χειροκίνητο ερώτημα σε διακομιστή που λειτουργεί αποδεικνύει μόνο ότι ο διακομιστής λειτουργεί. Οι παρακάτω εντολές χωρίζουν τη διαδρομή του συστήματος από μια άμεση ερώτηση.

resolvectl status --no-pager
getent hosts host.internal
dig +short host.internal @10.20.30.53

Η έξοδος κατάστασης ονομάζει τους διακομιστές ανά σύνδεση και τους τομείς δρομολόγησης, δηλαδή όπου αποφασίζεται το split DNS. Η κλήση getent ακολουθεί την ίδια διαδρομή με την εφαρμογή, συμπεριλαμβανομένης της σειράς nsswitch. Το άμεσο ερώτημα παρακάμπτει και τα δύο και δοκιμάζει έναν διακομιστή μεμονωμένα. Αναφέρετε ποιο από τα τρία απέτυχε και ποιο πέτυχε, και ο αναγνώστης δεν χρειάζεται πλέον να μαντεύει τη διαδρομή.

Δηλώστε την ελεγχόμενη σύγκριση

Αλλάξτε μία μεταβλητή και πείτε τι άλλαξε. Το ότι τα δημόσια ονόματα επιλύονται ενώ τα εσωτερικά αποτυγχάνουν είναι πρόβλημα επιλογής, το ότι κάθε όνομα λήγει σε χρονικό όριο είναι πρόβλημα διαδρομής, και ένα ιδιωτικό όνομα που επιλύεται σε δημόσια διεύθυνση είναι διαρροή στον λάθος resolver. Δύο από αυτά τα τρία δεν έχουν καμία σχέση με το αν το τούνελ είναι ενεργό. Μια αναφορά που ισχυρίζεται ότι όλα τα ερωτήματα είναι χαλασμένα συνήθως περιέχει μια σύγκριση που δεν έγινε ποτέ.

Διαχωρίστε την επίλυση από την παράδοση. Όταν το όνομα επιλύεται και ο ιστότοπος εξακολουθεί να αποτυγχάνει, το στάδιο DNS πέτυχε και η αναφορά πρέπει να το λέει, γιατί το επόμενο βήμα είναι μια διαδρομή ή ένας ακροατής και όχι ένας resolver. Αυτή η μία διάκριση εξοικονομεί έναν γύρο ερωτήσεων συχνότερα από οποιοδήποτε απόσπασμα αρχείου καταγραφής.

Αποκρύψτε τον χώρο ονομάτων, κρατήστε τις σχέσεις

Τα εσωτερικά ονόματα μπορούν να αντικατασταθούν, αρκεί οι αντικαταστάσεις να διατηρούν τη δομή. Αντιστοιχίστε κάθε ξεχωριστό διακομιστή και επίθημα σε σταθερή ετικέτα και κρατήστε αυτή την αντιστοίχιση έξω από το κοινόχρηστο αντίγραφο. Η αντικατάσταση κάθε εσωτερικού κεντρικού υπολογιστή με το ίδιο σύμβολο κράτησης θέσης καταστρέφει ακριβώς το στοιχείο που χρειάζεται η αναφορά, γιατί ο αναγνώστης δεν βλέπει πια ότι ένα επίθημα επιλύθηκε και ένα άλλο όχι. Ο ίδιος κανόνας ισχύει για τις διευθύνσεις: κρατήστε τις σχέσεις προθέματος και αλλάξτε τα bit του κεντρικού υπολογιστή αν το απαιτεί η πολιτική.

Στείλτε την εγγραφή μέσω του επαληθευμένου καναλιού και αφήστε έξω ό,τι δεν χρειάζεται ποτέ η διάγνωση. Οι κωδικοί πρόσβασης, τα ιδιωτικά κλειδιά και τα άσχετα ονόματα εταιρειών δεν είναι μέρος ενός ερωτήματος DNS. Αυτό που χρειάζεται ο αναγνώστης είναι η κατηγορία αστοχίας, η διαδρομή του resolver, το ακριβές σφάλμα και η μία σύγκριση που εκτελέσατε.

Σχετικά άρθρα