Δίκτυα που επιτρέπουν μόνο TCP 443 συνυπάρχουν με δίκτυα που περνούν UDP άνετα, και ένας διακομιστής πρέπει να εξυπηρετεί και τα δύο. Ένα προφίλ με proto udp απαντά στη δεύτερη ομάδα και αποτυγχάνει στην πρώτη, και η αλλαγή της ίδιας διαμόρφωσης ώστε να λέει proto tcp δεν δημιουργεί δεύτερο ακροατή. Η οδηγία επιλέγει ένα μεταφορικό μέσο για μία διεργασία. Όλα τα άλλα προκύπτουν από αυτόν τον περιορισμό.

Είτε εκτελείτε περισσότερες από μία διεργασίες, είτε εκτελείτε έκδοση που μπορεί να δεσμεύσει πολλές υποδοχές ταυτόχρονα.

Πριν από την 2.7 μία διεργασία δεσμεύει ένα μεταφορικό μέσο

Η κοινοτική έκδοση του OpenVPN δεσμεύει την υποδοχή που περιγράφει το proto , και αυτή η οδηγία επιλέγει ένα μόνο μεταφορικό μέσο για την περίπτωση. Το TCP και το UDP είναι ξεχωριστές στοίβες, οπότε ο ίδιος αριθμός θύρας μπορεί να καταληφθεί και από τα δύο ταυτόχρονα, αλλά όχι από μία διεργασία. Η σειρά 2.6 σάς δίνει επομένως ένα μεταφορικό μέσο ανά δαίμονα. Το OpenVPN 2.7 αφαίρεσε αυτόν τον περιορισμό για διακομιστές, που μπορούν να δεσμεύσουν πολλές υποδοχές μέσω πολλών --local σε μία διεργασία.

Ελέγξτε την έκδοση πριν σχεδιάσετε γύρω από οποιαδήποτε από τις δύο απαντήσεις, γιατί η διάταξη 2.7 είναι διαφορετικό λειτουργικό μοντέλο με δική της σύνταξη διαμόρφωσης. Ένας οδηγός γραμμένος για 2.6 περιγράφει δύο διεργασίες ακόμη και όταν δεν το λέει.

Τρεις τρόποι να εκτελέσετε δύο περιπτώσεις

Με διεπαφές TAP, εκτελέστε μία περίπτωση ανά μεταφορικό μέσο και γεφυρώστε τις δύο συσκευές tap στον ξενιστή. Και τα δύο σύνολα πελατών καταλήγουν στο ίδιο πεδίο εκπομπής, κάτι που επιτρέπει σε μία δεξαμενή διευθύνσεων να τα καλύψει και κρατά τα πρωτόκολλα που εξαρτώνται από εκπομπή σε λειτουργία. Με TUN η γεφύρωση δεν είναι διαθέσιμη, οπότε ο απλούστερος διαχωρισμός δίνει σε κάθε περίπτωση το δικό της υποδίκτυο και αφήνει τη δρομολόγηση να κρατά τα δύο σύνολα πελατών χωριστά. Μια τρίτη επιλογή κρατά μία δεξαμενή κάνοντας κάθε περίπτωση να καλεί ένα σενάριο learn-address που εγκαθιστά διαδρομή /32 για τον πελάτη μέσω της συσκευής εκείνης της περίπτωσης.

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

ArrangementInterfacesAddress poolCost
Bridged TAP pairTwo tap devices joined by a bridgeOne shared poolBroadcast traffic and bridge maintenance
Two TUN subnetsTwo tun devices, no bridgeOne pool per instanceRouting rules and two plans
Shared pool with routesTwo tun devices plus a hookOne pool across bothA script on the data path

Κρατήστε τις δύο περιπτώσεις χωριστά

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

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

Αντιστοιχίστε το προφίλ στον ακροατή

Ένας διακομιστής που εκτελεί proto tcp περιμένει προφίλ πελάτη με proto tcp-client , και ένα προφίλ που εξακολουθεί να φέρει proto udp απέναντι σε αυτόν τον ακροατή λήγει χωρίς σφάλμα στο οποίο μπορεί να ενεργήσει ο χρήστης . Κρατήστε δύο προφίλ αν η ανάπτυξη προσφέρει και τα δύο μεταφορικά μέσα, και επισημάνετε τα ώστε η υποστήριξη να βλέπει ποιο δοκιμάστηκε. Ο αριθμός θύρας από μόνος του δεν περιγράφει το μεταφορικό μέσο.

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

Διαβάστε πρώτα την εικόνα του διακομιστή

Ξεκινήστε με ss -lntup στον διακομιστή και επιβεβαιώστε ότι εμφανίζονται και ακροατής TCP και ακροατής UDP. Στη συνέχεια συνδέστε έναν πελάτη από κάθε είδος και ελέγξτε την έξοδο κατάστασης για δύο καταχωρίσεις με διαφορετικές διευθύνσεις. Αν οι υποδοχές υπάρχουν και δεν φτάνει κανένας πελάτης, η διαδρομή ή το τείχος προστασίας απορρίπτει πακέτα πριν τα δει ο δαίμονας.

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

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