OpenVPN TAP σε macOS: ελέγξτε τον πελάτη πριν αρχίσετε την αποσφαλμάτωση
Το TAP μεταφέρει πλαίσια Ethernet και το TUN μεταφέρει IP, και οι περισσότεροι σύγχρονοι πελάτες macOS έχουν εγκαταλείψει το πρώτο. Επιβεβαιώστε τη λειτουργία και μετά κάντε τη μετάβαση μαζί με τον ιδιοκτήτη του διακομιστή.
Ένα παλιό προφίλ προσγειώνεται σε έναν σύγχρονο Mac, ο πελάτης το εισάγει χωρίς διαμαρτυρία, και η σύνδεση πέφτει ή δεν περνά ποτέ κίνηση. Πριν ξοδέψετε ένα απόγευμα σε πιστοποιητικά, διαβάστε τη γραμμή συσκευής στο προφίλ. Αν λέει dev tap, ζητάτε από τον πελάτη διεπαφή τύπου Ethernet, και στο macOS οι περισσότερες από αυτές τις συνεδρίες τελειώνουν ακριβώς σε αυτό το αίτημα.
Βήμα 1: επιβεβαιώστε ότι το προφίλ ζητά πραγματικά TAP
Τα προφίλ μετονομάζονται, τυλίγονται και εξάγονται ξανά, οπότε ελέγξτε το αρχείο που εισαγάγατε πραγματικά. Αναζητήστε την οδηγία συσκευής και οποιοδήποτε include μπορεί να την υπερισχύσει. Δύο γραμμές εξόδου λύνουν το ερώτημα στις περισσότερες περιπτώσεις. Όταν εμφανίζονται και dev και dev-type, κερδίζει η μεταγενέστερη οδηγία, και ακριβώς τέτοια λεπτομέρεια κρύβει ένα αντιγραμμένο προφίλ.
grep -nE "^[[:space:]]*(dev|dev-type)[[:space:]]" client.ovpn
ls -l ~/Library/Application\ Support/ 2>/dev/null
Αν το αρχείο περιέχει dev tap ή dev tap0, ο πελάτης πρέπει να υλοποιεί διεπαφή TAP. Αν περιέχει dev tun, το υπόλοιπο άρθρο δεν ισχύει και η αποτυχία βρίσκεται αλλού.
Σημειώστε το όνομα και την έκδοση του πελάτη, την έκδοση macOS και από πού προήλθε το προφίλ. Αυτά τα τρία γεγονότα καθορίζουν ποια από τις δύο διαδρομές παρακάτω είναι καν δυνατή.
Βήμα 2: μάθετε τι αλλάζει πραγματικά η λειτουργία συσκευής
Μια διεπαφή TUN μεταφέρει πακέτα IP. Ο πελάτης διαβάζει και γράφει πακέτα που απευθύνονται σε έναν ομότιμο IP, και το λειτουργικό σύστημα τα δρομολογεί όπως κάθε άλλη διεπαφή.
Μια διεπαφή TAP μεταφέρει πλαίσια Ethernet, συμπεριλαμβανομένης της μετάδοσης και του ARP. Αυτό επιτρέπει σε έναν γεφυρωμένο διακομιστή να διανέμει διευθύνσεις μέσω DHCP και σε έναν πελάτη να ανακαλύπτει συσκευές φωνάζοντας, και γι' αυτό ορισμένοι παλιοί σχεδιασμοί βασίζονται σε αυτό.
Το κόστος είναι ότι το TAP χρειάζεται πρόγραμμα οδήγησης που παρουσιάζει στο σύστημα μια διεπαφή Ethernet. Η Apple κατάργησε το μοντέλο επέκτασης πυρήνα στο οποίο βασίζονταν παλαιότερα προγράμματα οδήγησης TAP για Mac, και το API αντικατάστασής του δεν εμφανίζεται μαγικά μέσα σε πελάτες που δεν ενημερώθηκαν ποτέ για να το χρησιμοποιήσουν. Η δυνατότητα μιας πλατφόρμας και ένα κυκλοφορημένο προϊόν είναι δύο διαφορετικά πράγματα.
Βήμα 3: επιλέξτε ανάμεσα σε συμβατό πελάτη και μετάβαση
Υπάρχουν δύο έντιμες διαδρομές. Η πρώτη είναι ένας πελάτης του οποίου ο εκδότης δηλώνει, για την έκδοση macOS και το υλικό σας, ότι υποστηρίζει τη διάταξη TAP που χρειάζεστε. Όχι ανάρτηση φόρουμ από πριν από τέσσερα χρόνια και όχι αρχειοθετημένο πρόγραμμα εγκατάστασης: τρέχουσα δήλωση συν δοκιμαστική σύνδεση.
Η δεύτερη είναι η μεταφορά της υπηρεσίας σε TUN, που είναι αλλαγή διακομιστή όσο και αλλαγή πελάτη. Χρειάζεται δρομολογημένη τοπολογία, χώρο διευθύνσεων, ωθούμενες διαδρομές για τα απομακρυσμένα δίκτυα και διαδρομή επιστροφής από αυτά τα δίκτυα πίσω στον χώρο.
Αυτό που δεν λειτουργεί είναι να αλλάξετε το tap σε tun στο τοπικό σας αντίγραφο και να ελπίζετε. Ο διακομιστής εξακολουθεί να γεφυρώνει, ο πελάτης τώρα μιλά IP, και τίποτα δεν συμφωνεί.
Βήμα 4: συγκεντρώστε τα γεγονότα πριν αλλάξετε μια υπηρεσία που λειτουργεί
Αφήστε το αρχικό προφίλ άθικτο και φτιάξτε ένα αντίγραφο για πειράματα. Ένα αρχείο που μπορείτε να επαναφέρετε σε ένα λεπτό αξίζει περισσότερο από έναν τακτοποιημένο φάκελο. Όταν η αντικατάσταση λειτουργήσει, διαγράψτε το αντίγραφο σκόπιμα αντί να αφήσετε δύο προφίλ που μοιάζουν ίδια σε μια λίστα. Αυτή η μία συνήθεια αποτρέπει το μεγαλύτερο μέρος της σύγχυσης που ακολουθεί μια αποτυχημένη μετάβαση. Καταγράψτε την τρέχουσα συμπεριφορά για να μπορείτε να αποδείξετε τι άλλαξε: ανεβαίνει η σήραγγα, παίρνει διεύθυνση, φτάνετε έναν γνωστό κεντρικό υπολογιστή και λειτουργεί η επίλυση ονομάτων.
Ρωτήστε τον ιδιοκτήτη της πύλης τρία πράγματα. Ο διακομιστής τρέχει γεφυρωμένη ή δρομολογημένη τοπολογία; Ποια απομακρυσμένα προθέματα πρέπει να είναι προσβάσιμα; Και υπάρχει παράθυρο συντήρησης για αλλαγή διαμόρφωσης, ή αναμένεται να λειτουργήσει χωρίς να αγγίξετε τον διακομιστή;
Οι απαντήσεις σε αυτά καθορίζουν αν λύνετε πρόβλημα πελάτη σήμερα το απόγευμα ή σχεδιάζετε αλλαγή δικτύου την επόμενη εβδομάδα.
Βήμα 5: επαληθεύστε τη μετάβαση και από τα δύο άκρα
Όταν ο διακομιστής έχει δρομολογημένη διαμόρφωση και εσείς έχετε αντίστοιχο προφίλ, δοκιμάστε με αυτή τη σειρά: η σήραγγα εγκαθίσταται, ο πελάτης λαμβάνει διεύθυνση από τον νέο χώρο, ένας κεντρικός υπολογιστής στην απομακρυσμένη πλευρά απαντά, και ένα όνομα επιλύεται μέσω της ωθούμενης ρύθμισης DNS.
Έπειτα δοκιμάστε ό,τι εξαρτιόταν παλιά από τη συμπεριφορά Ethernet. Αν μια εφαρμογή ανακάλυπτε συσκευές μέσω μετάδοσης, δεν θα τις βρει μέσα από δρομολογημένη σήραγγα, και καμία ποσότητα διαμόρφωσης πελάτη δεν το επαναφέρει. Αυτή η εφαρμογή χρειάζεται γνωστή διεύθυνση, τοπικό βοηθητικό κεντρικό υπολογιστή ή διαφορετική μέθοδο ανακάλυψης.
Τελειώστε επανασυνδέοντας και επανεκκινώντας μία φορά, γιατί ένα προφίλ που λειτουργεί μόνο στην πρώτη προσπάθεια συνήθως σημαίνει ότι οι ωθούμενες διαδρομές ή η ρύθμιση DNS δεν εφαρμόζονται στην επανασύνδεση.
Όταν αποτυγχάνει ακόμη, διαβάστε το πρώτο σφάλμα
Ένας πελάτης που δεν μπορεί να δημιουργήσει τη διεπαφή το λέει στο αρχείο καταγραφής του, συνήθως μέσα στις πρώτες γραμμές. Ένας πελάτης που τη δημιουργεί και μετά αποτυγχάνει στην ταυτοποίηση έχει περάσει προ πολλού το ζήτημα της συσκευής, και το κυνήγι του TAP σπαταλά τη συνεδρία.
Κρατήστε το αρχικό προφίλ και τη λειτουργική διαμόρφωση μέχρι να αποδειχθεί η αντικατάσταση. Η επαναφορά μιας αλλαγής πελάτη είναι γρήγορη· η ανοικοδόμηση ενός γεφυρωμένου δικτύου που κάποιος αποσυναρμολόγησε με μια υπόνοια δεν είναι.