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

Τι χρειάζεται πραγματικά μια αναζήτηση

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

Ο πελάτης μαθαίνει τον resolver του από το προφίλ VPN, από το DHCP στη σήραγγα ή από τη δική του ρύθμιση, και το ποια πηγή κερδίζει εξαρτάται από την πλατφόρμα. Στα Windows, ipconfig /all εκτυπώνει τους διακομιστές DNS ανά προσαρμογέα, ώστε να δείτε αν η τιμή που στάλθηκε έφτασε πραγματικά. Μια τιμή που στάλθηκε και δεν έφτασε ποτέ στο λειτουργικό σύστημα είναι μια ήσυχη και συνηθισμένη αποτυχία. Διαβάστε τη ρυθμισμένη τιμή πριν αγγίξετε το προφίλ.

Τα Linux και macOS απαντούν στην ίδια ερώτηση με διαφορετικές εντολές, και η απάντηση αξίζει την ίδια ανάγνωση: resolvectl status και scutil --dns και τα δύο απαριθμούν τους διακομιστές ανά διεπαφή. Συγκρίνετε αυτή τη λίστα με τη διεύθυνση που το προφίλ ισχυρίζεται ότι στέλνει. Μια αναντιστοιχία εδώ εξηγεί όλα τα επόμενα, οπότε διευθετήστε την πριν δοκιμάσετε ονόματα.

Δοκιμάστε ένα δημόσιο και ένα ιδιωτικό όνομα

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

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

nslookup εκτυπώνει και τον διακομιστή που ρώτησε και την απάντηση που έλαβε, και αυτό είναι ακριβώς το ζεύγος που χρειάζεστε. Εκτελέστε το δύο φορές στο ίδιο κέλυφος και γράψτε τη διεύθυνση που απάντησε δίπλα σε κάθε απάντηση.

nslookup example.com
nslookup host.corp.example 10.20.30.53

Επιβεβαιώστε ότι ο πελάτης μπορεί πράγματι να φτάσει αυτόν τον διακομιστή

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

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

ip route get 10.20.30.53                      # Linux
route -n get 10.20.30.53                     # macOS
Find-NetRoute -RemoteIPAddress 10.20.30.53   # Windows PowerShell

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

Θυμηθείτε ότι τα προγράμματα περιήγησης μπορούν να παρακάμψουν τον resolver του συστήματος

Ένα πρόγραμμα περιήγησης με ενεργό ασφαλές DNS μπορεί να στέλνει ερωτήσεις μέσω HTTPS σε πάροχο της επιλογής του και να αγνοεί εντελώς τον resolver του λειτουργικού συστήματος. Τότε το σύστημα φαίνεται σωστό ενώ το πρόγραμμα περιήγησης αποτυγχάνει, ή το αντίστροφο. Αυτό είναι ζήτημα πολιτικής για το πρόγραμμα περιήγησης, όχι για τη σήραγγα.

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

Καθαρίστε την προσωρινή μνήμη και δοκιμάστε ξανά την πραγματική εργασία

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

ipconfig /flushdns                 # Windows
resolvectl flush-caches            # Linux
sudo killall -HUP mDNSResponder    # macOS

Στη συνέχεια επαναλάβετε την αρχική εργασία αντί για μια τεχνητή αναζήτηση, γιατί η εργασία είναι αυτό που ενδιαφέρει τον χρήστη. Επανασυνδεθείτε μία φορά, ώστε η επανάληψη να καλύπτει την κατάσταση στην οποία θα βρίσκεται πραγματικά ο χρήστης. Η αναφορά nslookup της Microsoft είναι η σελίδα που πρέπει να κρατήσετε για τα ορίσματα της αναζήτησης.

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

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