Το ιδιωτικό DNS του Pritunl αποτυγχάνει; Προσθέστε μια στενή διαδρομή resolver
Ένας ιδιωτικός resolver που αγνοεί το pool του VPN χρειάζεται εξαίρεση για την πηγή, όχι ευρύτερη διαδρομή. Προσθέστε ένα /32 με ενεργό NAT και δοκιμάστε μια πραγματική ιδιωτική αναζήτηση.
Τα ιδιωτικά ονόματα επιλύονται για όλους στο εταιρικό δίκτυο και λήγουν για όλους στο VPN. Ο resolver απαντά στην πύλη, η διαδρομή προς αυτήν υπάρχει, και το ερώτημα εξακολουθεί να μην παίρνει ποτέ απάντηση. Αυτό που λείπει δεν είναι ένας άλλος δημόσιος resolver ή μια ευρύτερη διαδρομή: είναι μια διεύθυνση πηγής στην οποία ο ιδιωτικός διακομιστής DNS δέχεται να απαντήσει.
Επιβεβαιώστε ότι ο resolver απορρίπτει το pool πελατών σας
Ξεκινήστε αποδεικνύοντας ότι η αποτυχία αφορά την πηγή και όχι τη δυνατότητα πρόσβασης. Από συνδεδεμένο πελάτη, ρωτήστε απευθείας τον ιδιωτικό resolver και παρατηρήστε αν το αίτημα λήγει ή επιστρέφει ως απόρριψη. Το dig @10.40.0.53 intranet.example.net +time=2 +tries=1 να λήγει ενώ το ίδιο ερώτημα από την πύλη πετυχαίνει υποδεικνύει πολιτική πρόσβασης στον resolver. Μια απάντηση SERVFAIL υποδεικνύει κάτι εντελώς διαφορετικό, συνήθως τη ζώνη ή τον ανάντη προωθητή.
Σημειώστε τη διεύθυνση του πελάτη πριν τη δοκιμή. Το ip -4 addr show tun0 στον πελάτη, ή η μίσθωση που εμφανίζεται στην κονσόλα, σας λέει ποιο pool βλέπει ο resolver.
Στη συνέχεια επιβεβαιώστε ότι η διαδρομή υπάρχει. Μια διαδρομή που στέλνει τη διεύθυνση του resolver στη σήραγγα είναι προϋπόθεση, όχι η λύση· αν τα πακέτα δεν φτάνουν ποτέ, η πολιτική πηγής δεν εξετάζεται καν. Ελέγξτε το με το ip route get 10.40.0.53 στον πελάτη.
Προσθέστε μία διαδρομή κεντρικού υπολογιστή αντί να μεταφράσετε τα πάντα
Ο οδηγός του Pritunl για το ιδιωτικό DNS περιγράφει το στενό μέτρο: μια διαδρομή /32 με ενεργό NAT για τη διεύθυνση του resolver, με αυτή τη διεύθυνση επιλεγμένη ως διακομιστή DNS των πελατών. Η διαδρομή αλλάζει την πηγή που βλέπει ο resolver μόνο για την κίνηση DNS. Η κίνηση εφαρμογών διατηρεί τον σχεδιασμό διατήρησης της πηγής που επιλέξατε για αυτήν.
Διαμορφώστε την μέσω του υποστηριζόμενου κατόχου διαδρομών του διακομιστή, αφού ελέγξετε τις υπάρχουσες διαδρομές για επικάλυψη. Στο παραπάνω παράδειγμα ο προορισμός είναι 10.40.0.53/32 με ενεργό NAT, και το pool πελατών παραμένει 10.90.0.0/24. Μη μεταφράσετε ολόκληρο το ιδιωτικό εύρος για να διορθώσετε μία υπηρεσία, γιατί κάθε καθοδική πολιτική που βασίζεται στην πραγματική διεύθυνση του πελάτη θα αρχίσει να βλέπει την πύλη αντί γι’ αυτήν. Επιβεβαιώστε τη διεύθυνση που λαμβάνει πραγματικά ο resolver παρακολουθώντας το αρχείο καταγραφής ερωτημάτων του κατά τη διάρκεια μιας δοκιμαστικής αναζήτησης. Μια διαδρομή κεντρικού υπολογιστή από μόνη της δεν αποδεικνύει τίποτα για τη μετάφραση ή την άδεια.
Ο resolver πρέπει ακόμη να επιτρέπει τη μεταφρασμένη πηγή σε UDP και TCP, και οι απαντήσεις του πρέπει να μπορούν να επιστρέψουν. Η αλλαγή της πηγής δεν μπορεί να δημιουργήσει μια ζώνη ή εγγραφή που λείπει.
Αποφασίστε αν ο διακομιστής ή ο πελάτης στέλνει το ερώτημα
Ο Pritunl τεκμηριώνει επίσης μια διάταξη διαμεσολαβητή DNS συνδεδεμένη με το VPN Client DNS Mapping, όπου ο διακομιστής προωθεί ανάντη ερωτήματα για τους πελάτες. Σε αυτό το μοντέλο η ανάντη πηγή ανήκει στο δικό του δικτυακό πλαίσιο του διακομιστή, και μια εξαίρεση στην πλευρά του πελάτη είναι η λάθος λύση.
Προσδιορίστε ποιο μοντέλο είναι ενεργό πριν προσθέσετε οτιδήποτε. Τρεις επικαλυπτόμενες επισκευές, ένας διαμεσολαβητής, μια παράκαμψη του resolver στον πελάτη και ένα χειροκίνητο σενάριο NAT συνήθως σημαίνουν ότι κανείς δεν έχει καθορίσει: ποιο στοιχείο πρέπει να στέλνει το ερώτημα. Ελέγξτε και το bootstrap: ένας μόνο ιδιωτικός resolver δεν μπορεί να είναι ο μόνος τρόπος να βρεθεί το τελικό σημείο πριν υπάρξει η σήραγγα, και μια μόνιμη αλλαγή του resolver δεν πρέπει να επιβιώνει της σύνδεσης.
Δοκιμάστε μια ιδιωτική αναζήτηση, όχι μια δημόσια ιστοσελίδα
Αφού εφαρμόσετε την αλλαγή και επανασυνδεθείτε, εξετάστε την ενεργή διαμόρφωση resolver του πελάτη και μετά επιλύστε ένα όνομα που ξέρετε ότι υπάρχει μόνο στην ιδιωτική ζώνη. Το dig intranet.example.net χωρίς ρητό διακομιστή δείχνει τι χρησιμοποιεί πραγματικά ο πελάτης. Ακολουθήστε με ένα αίτημα στη διεύθυνση που επέστρεψε αυτή η αναζήτηση, γιατί η επίλυση και η πρόσβαση στην υπηρεσία είναι ξεχωριστά βήματα. Ένα πρόγραμμα περιήγησης που φορτώνει δημόσιες τοποθεσίες μέσω DNS-over-HTTPS δεν αποδεικνύει τίποτα για τη διαδρομή του ιδιωτικού resolver του λειτουργικού συστήματος. Ούτε ένας δημόσιος δευτερεύων resolver είναι αρχή για μια εσωτερική ζώνη.
Καταγράψτε τη διεύθυνση του resolver, τη διαδρομή /32 και τη ρύθμιση DNS του πελάτη μαζί στις σημειώσεις του διακομιστή. Το μισό αυτής της διαμόρφωσης, αν αποκατασταθεί μόνο του, αναπαράγει την αρχική αποτυχία.
Τέλος, επιβεβαιώστε ότι η σήραγγα εξακολουθεί να δρομολογεί τον προορισμό της εφαρμογής μετά την επιτυχία του DNS. Η διαδρομή, η πρόσβαση στην υπηρεσία και η επαλήθευση ταυτότητας παραμένουν ανεξάρτητες από την επίλυση ονομάτων, και μια αναζήτηση που λειτουργεί δεν λέει τίποτα για τη ρυθμαπόδοση. Αν η ιδιωτική σελίδα είναι αργή αλλά επιλύεται, ο resolver έκανε τη δουλειά του και το πρόβλημα μετακινήθηκε στη διαδρομή.