Γιατί ένα προφίλ OpenVPN λειτουργεί στο σπίτι αλλά αποτυγχάνει σε ξενοδοχείο
Ίδιο προφίλ, διαφορετικό δίκτυο: μια πύλη σύνδεσης, μια φιλτραρισμένη θύρα UDP, ένα επικαλυπτόμενο υποδίκτυο ή ένα APN μόνο με IPv6 μπορούν να σταματήσουν τη σήραγγα πριν ξεκινήσει.
Το Wi-Fi του γραφείου και ένα δωμάτιο ξενοδοχείου μπορούν να δώσουν στο ίδιο φορητό υπολογιστή δύο πολύ διαφορετικά δίκτυα, και το προφίλ ανάμεσά τους δεν έχει ιδέα. Ό,τι λειτουργεί στο σπίτι προϋποθέτει ένα ανεκτικό uplink, λειτουργική επίλυση ονομάτων και ένα τοπικό υποδίκτυο που δεν συγκρούεται με ό,τι μεταφέρει η σήραγγα. Κάθε μία από αυτές τις υποθέσεις μπορεί να αποτύχει ανεξάρτητα.
Ο χρήσιμος τρόπος για να το εντοπίσετε είναι να αντιμετωπίσετε το δίκτυο ως τέσσερα ξεχωριστά γεγονότα και μετά να τα ελέγξετε με σειρά. Το να μαντέψετε πρώτα το προφίλ συνήθως παράγει μια αλλαγή που δεν διορθώνει τίποτα και κρύβει τα στοιχεία.
Τέσσερα γεγονότα δικτύου αλλάζουν ανάλογα με την τοποθεσία
Το πρώτο γεγονός είναι αν το τοπικό δίκτυο σας αφήνει να βγείτε καθόλου. Μια πύλη σύνδεσης επιτρέπει σε μια συσκευή να φτάσει σε σελίδα εισόδου και μπλοκάρει όλα τα άλλα μέχρι να ολοκληρωθεί αυτή η σελίδα, που σημαίνει ότι η σήραγγα δεν μπορεί να ξεκινήσει όσο σωστό κι αν είναι το προφίλ.
Το δεύτερο είναι η επίλυση ονομάτων. Μια πύλη που υποκλέπτει DNS απαντά σε κάθε ερώτημα με τη δική της διεύθυνση, οπότε το όνομα κεντρικού υπολογιστή του VPN επιλύεται στην πύλη και ο πελάτης προσπαθεί να χτίσει σήραγγα προς μια ιστοσελίδα.
Το τρίτο είναι το φιλτράρισμα μεταφοράς. Δίκτυα που θέλουν να επιτρέπουν μόνο περιήγηση περνούν TCP 443 προς αυθαίρετους προορισμούς και απορρίπτουν σχεδόν όλα τα άλλα, συμπεριλαμβανομένου του UDP.
Το τέταρτο είναι η διευθυνσιοδότηση. Το τοπικό υποδίκτυο μπορεί να επικαλύπτεται με δίκτυο πίσω από τη σήραγγα, ή το uplink μπορεί να μην παρέχει καθόλου χρησιμοποιήσιμη διαδρομή IPv4.
Επίλυση ονομάτων και πύλη σύνδεσης
Αντικαταστήστε το όνομα κεντρικού υπολογιστή στο προφίλ με την αριθμητική διεύθυνση του διακομιστή και δοκιμάστε ξανά. Αν η IP συνδέεται και το όνομα όχι, φταίει η επίλυση ονομάτων και το ίδιο το προφίλ είναι εντάξει.
Ανοίξτε ένα πρόγραμμα περιήγησης και δοκιμάστε μια συνηθισμένη σελίδα HTTP πριν αγγίξετε το VPN. Μια ανακατεύθυνση σε σελίδα εισόδου σημαίνει ότι η πύλη εκκρεμεί ακόμη· ολοκληρώστε την και μετά συνδεθείτε ξανά. Πολλά ξενοδοχεία επίσης λήγουν τη συνεδρία μετά από λίγες ώρες, κάτι που μοιάζει με αποσύνδεση στα μέσα της ημέρας παρά με πρόβλημα σύνδεσης.
Αν αποτύχει και η αριθμητική διεύθυνση, η επίλυση ονομάτων δεν είναι η εξήγηση, οπότε προχωρήστε στη μεταφορά. Κρατήστε τη διεύθυνση που δοκιμάσατε, γιατί λέει στον επόμενο έλεγχο αν τα πακέτα έφυγαν καθόλου από το μηχάνημα.
Φιλτράρισμα μεταφοράς: πρώτα UDP, TCP 443 ως εναλλακτική
Μια ροή OpenVPN πάνω από UDP 1194 δεν μοιάζει με τίποτα που αναγνωρίζει ένα τείχος προστασίας ξενοδοχείου, οπότε απορρίπτεται χωρίς σφάλμα. Ο πελάτης επαναλαμβάνει μέχρι να λήξει το χρονικό του όριο, και ο χρήστης βλέπει μια σύνδεση που δεν εγκαθίσταται ποτέ αντί για άρνηση. Τείχη προστασίας που συμπεριφέρονται έτσι σπάνια καταγράφουν την απόρριψη κάπου που να τη δείτε. Η απουσία άρνησης είναι από μόνη της το στοιχείο.
Το TCP 443 είναι η αξιόπιστη εναλλακτική, γιατί το δίκτυο δεν μπορεί να το ξεχωρίσει από συνηθισμένο HTTPS. Χρησιμοποιήστε το προφίλ TCP του παρόχου όταν υπάρχει, αφού και ο διακομιστής πρέπει να ακούει σε αυτή τη μεταφορά και θύρα· αλλάζοντας μόνο τον πελάτη προκύπτει άλλου είδους αποτυχία. Αν δεν υπάρχει προφίλ TCP, ρωτήστε τον πάροχο αντί να εφεύρετε ένα επεξεργάζοντας τη θύρα. Η πλευρά του διακομιστή πρέπει να συμφωνήσει, και μια αναντιστοιχία μοιάζει ξανά με πρόβλημα τείχους προστασίας.
Περιμένετε κόστος στην απόδοση. Το TCP μέσα σε TCP ενισχύει τις επαναμεταδόσεις σε σύνδεσμο με απώλειες, οπότε μια σήραγγα TCP που λειτουργεί μπορεί να φαίνεται αργή σε ένα συμφορημένο δίκτυο ξενοδοχείου. Είναι ανταλλαγή για προσβασιμότητα, όχι βλάβη για κυνήγι.
Συγκρούσεις διευθύνσεων και uplinks χωρίς IPv4
Μια σήραγγα μπορεί να εγκατασταθεί και να μη μεταφέρει τίποτα. Όταν το τοπικό LAN και ένα απομακρυσμένο δίκτυο μοιράζονται πρόθεμα όπως 192.168.1.0/24, ο πελάτης θεωρεί τον απομακρυσμένο κόμβο άμεσα συνδεδεμένο και στέλνει το πακέτο στον τοπικό σύνδεσμο αντί για τη σήραγγα. Το σύμπτωμα είναι μια επιτυχημένη σύνδεση με ένα μη προσβάσιμο υποδίκτυο, που διαβάζεται εύκολα λάθος ως πρόβλημα διαδρομής στην πλευρά του διακομιστή.
Η μόνιμη λύση είναι να μετακινήσετε το απομακρυσμένο LAN σε ένα ασυνήθιστο ιδιωτικό εύρος. Η επιλογή ενός εύρους που δεν χρησιμοποιεί κανείς στο σπίτι, όπως 10.42.0.0/24, αποτρέπει το πρόβλημα για κάθε μελλοντική τοποθεσία αντί για μία. Η τοπική παράκαμψη είναι να αποφεύγετε εκείνο το ξενοδοχείο, hotspot ή δρομολογητή, που δεν είναι καθόλου λύση.
Τα κινητά uplinks προσθέτουν δύο παραλλαγές. Το NAT φορέα σημαίνει ότι οι εισερχόμενες συνδέσεις δεν φτάνουν, κάτι που μετράει αν φιλοξενείτε διακομιστή αλλά όχι για εξερχόμενο πελάτη. Ένα APN ρυθμισμένο μόνο με IPv6 και μετάφραση NAT64 μπορεί να αποτύχει σε πελάτη που επιμένει σε πραγματική διαδρομή IPv4, και το συνηθισμένο γιατρικό είναι να αλλάξετε το πρωτόκολλο του APN σε IPv4 ή διπλή στοίβα.
Συμπτώματα αφού σηκωθεί η σήραγγα
Μια σήραγγα που συνδέεται και μετά σωπαίνει είναι συνήθως πρόβλημα keepalive ή MTU, όχι κλειστή θύρα. Μια σύνδεση που πέφτει μετά από σταθερό αριθμό λεπτών δείχνει σε χρονόμετρο keepalive ή επαναδιαπραγμάτευσης. Ρυθμίστε τον πελάτη να ανιχνεύει τον ομόλογό του και να επανεκκινεί όταν σταματούν οι απαντήσεις, και δοκιμάστε μικρότερο MTU σήραγγας αν τα ping περνούν ενώ οι μεγάλες μεταφορές κολλούν.
Πριν ζητήσετε βοήθεια, σημειώστε τρία πράγματα: τη διεύθυνση που δοκιμάσατε και αν απάντησε, τη μεταφορά και τη θύρα που χρησιμοποιήσατε, και το τοπικό υποδίκτυο του δικτύου που απέτυχε. Μαζί ξεχωρίζουν την επίλυση ονομάτων από το φιλτράρισμα μεταφοράς και από μια σύγκρουση διευθύνσεων, που είναι τα αίτια που αντέχουν στην επαφή με τα στοιχεία.