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

Ο μύθος: μια μάσκα κόμβου σημαίνει έναν μόνο προσβάσιμο κόμβο

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

Η σύγχυση έχει πραγματική ρίζα: στο Ethernet, μια μάσκα κόμβου θα σήμαινε πραγματικά μία μόνο διεύθυνση σε εκείνο το τμήμα. Η σήραγγα δεν είναι τμήμα Ethernet, και το τι περνά από μέσα της το αποφασίζει ο πίνακας δρομολόγησης του πελάτη, όχι η μάσκα. Γι’ αυτό η ίδια /32 μπορεί να βρίσκεται μπροστά σε ένα ολόκληρο κέντρο δεδομένων.

Διαβάστε τη διεύθυνση και τις διαδρομές ως ξεχωριστά αντικείμενα

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

ip addr show tun0
ip route show
ip route get 10.60.5.10

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

Get-NetIPAddress -InterfaceAlias "VPN"
Find-NetRoute -RemoteIPAddress 10.60.5.10

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

Γιατί η διεύρυνση της μάσκας συνήθως τα κάνει χειρότερα

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

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

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

Όταν η διαδρομή είναι σωστή και η ροή αποτυγχάνει ακόμη

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

ping -c1 10.60.5.10
traceroute -n 10.60.5.10
curl -sv https://app.internal.example/ -o /dev/null

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

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

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