WireGuard 5G υποκατάστημα: αφήστε το υποκατάστημα να καλέσει τον κόμβο
Όταν το υποκατάστημα καλεί τον κόμβο, ο κόμβος δεν χρειάζεται ποτέ να ανακαλύψει μια διεύθυνση κινητής που αλλάζει. Ρυθμίστε, επαληθεύστε και μετά δείτε τι δεν λύνει αυτό.
Το να στρέψετε ένα υποκατάστημα προς έναν κόμβο είναι το εύκολο μισό αυτού του σχεδιασμού όταν το υποκατάστημα βρίσκεται πίσω από μια διεύθυνση κινητής που αλλάζει και ο κόμβος κρατά ένα σταθερό όνομα. Τότε ο κόμβος μαθαίνει το υποκατάστημα από πιστοποιημένη κίνηση και όχι από μια εγγραφή που πρέπει να κρατάτε ενημερωμένη. Το συμβόλαιο είναι απλό: το υποκατάστημα ξεκινά πάντα.
Ρυθμίστε το σκόπιμα και μετά επαληθεύστε το μέρος που οι άνθρωποι υποθέτουν ότι δουλεύει. Και τα δύο βήματα παίρνουν λεπτά, και στο δεύτερο αποτυγχάνουν συνήθως αυτοί οι σχεδιασμοί.
Ποια πλευρά κρατά το σταθερό τελικό σημείο
Η ρύθμιση του υποκαταστήματος ονομάζει το τελικό σημείο του κόμβου και το δημόσιο κλειδί του. Η ρύθμιση του κόμβου ονομάζει το δημόσιο κλειδί του υποκαταστήματος και τα επιτρεπόμενα εσωτερικά προθέματά του, και μπορεί να μην έχει καθόλου τελικό σημείο, γιατί η ταυτότητα προέρχεται από το κλειδί και όχι από τη διεύθυνση προέλευσης του τελευταίου πακέτου. Αυτή η ασυμμετρία είναι όλος ο μηχανισμός, και αφαιρεί μια ολόκληρη κατηγορία προβλημάτων ανακάλυψης από την πλευρά του κόμβου.
Όταν το υποκατάστημα στέλνει ένα πιστοποιημένο πακέτο, ο κόμβος καταγράφει την προέλευση από την οποία έφτασε και χρησιμοποιεί αυτή την αντιστοίχιση για τις απαντήσεις. Η αναρίθμηση της σύνδεσης κινητής τότε δεν κοστίζει τίποτα πέρα από την επόμενη χειραψία, και κάθε στοιχείο που δεν χρειάζεστε πια είναι ένα που δεν μπορεί να αποτύχει κατά τη μετάβαση. Αυτή η ιδιότητα αξίζει δοκιμή κατά τη διάρκεια μιας προγραμματισμένης αλλαγής και όχι κατά τη διάρκεια ενός περιστατικού. Κάντε το όσο κάποιος μπορεί να παρακολουθεί και τα δύο άκρα ταυτόχρονα.
Δώστε στο υποκατάστημα ρύθμιση που επιβιώνει από αναρίθμηση
Κρατήστε το τελικό σημείο και το keepalive στο υποκατάστημα, και κρατήστε την καταχώριση του ομοτίμου στον κόμβο χωρίς σκληρά κωδικοποιημένη διεύθυνση. Το keepalive κρατά την μεταφρασμένη αντιστοίχιση ανοιχτή αρκετά ώστε ο κόμβος να στείλει μη ζητηθείσα κίνηση μετά από περίοδο αδράνειας.
[Peer]
PublicKey = HUB_PUBLIC_KEY_BASE64
Endpoint = hub.example.net:51820
AllowedIPs = 10.60.0.0/24, 10.60.10.0/24
PersistentKeepalive = 25
Τα είκοσι πέντε δευτερόλεπτα είναι το παράδειγμα που συχνά αναφέρεται για να κρατιέται ζωντανή μια αντιστοίχιση NAT, όχι απαίτηση για κάθε ομότιμο. Ορίστε το με βάση το χρονικό όριο αντιστοίχισης που παρατηρείτε πραγματικά, και θυμηθείτε ότι παράγει κίνηση σε σύνδεση με όριο δεδομένων όσο η διεπαφή είναι ενεργή.
Στον κόμβο, τα επιτρεπόμενα προθέματα του ομοτίμου του υποκαταστήματος πρέπει να καλύπτουν ό,τι θα στείλει το υποκατάστημα. Ένα προθέμα που λείπει συμπεριφέρεται σαν αποτυχία δρομολόγησης στο απομακρυσμένο άκρο και δεν παράγει καμία προειδοποίηση σε καμία πλευρά, γι’ αυτό αξίζει έλεγχο πριν από το πρώτο πραγματικό πακέτο. Συγκρίνετε τα επιτρεπόμενα προθέματα του κόμβου με τις διευθύνσεις διεπαφής του υποκαταστήματος πριν από την πρώτη σύνδεση.
Επαληθεύστε την αντιστοίχιση και τη μετάβαση
Επιβεβαιώστε ότι η χειραψία ολοκληρώνεται, ότι ο κόμβος εμφανίζει το τρέχον τελικό σημείο του υποκαταστήματος και ότι οι εσωτερικές διευθύνσεις του υποκαταστήματος είναι προσβάσιμες μέσω της σήραγγας. Αυτή είναι η βάση, και πρέπει να καταγραφεί πριν αγγίξει κανείς τη σύνδεση κινητής. Δύο γραμμές εξόδου αρκούν. Κρατήστε τις στο δελτίο μαζί με τη χρονική σφραγίδα.
wg show wg0
wg show wg0 latest-handshakes
ip route show default
ping -c 3 10.60.10.1
Έπειτα δοκιμάστε την αστοχία για την οποία υπάρχει ο σχεδιασμός. Τραβήξτε το κύριο WAN και επιβεβαιώστε ότι η υποκείμενη διαδρομή του υποκαταστήματος προς τον κόμβο φεύγει τώρα από τη διεπαφή κινητής. Μια σήραγγα δεν μπορεί να επιδιορθώσει μια σπασμένη φυσική διαδρομή, οπότε μια εξωτερική διαδρομή που δείχνει ακόμη σε νεκρό uplink παράγει λήξη χρόνου χειραψίας που μοιάζει ακριβώς με πρόβλημα του κόμβου.
Αν η εξωτερική διαδρομή είναι ρητά δεσμευμένη ή δρομολογημένη με πολιτική, η μετάβαση πρέπει να την περιλαμβάνει. Αυτό το κενό ανάμεσα σε έναν σχεδιασμό που διαβάζεται σωστά και σε έναν που επιβιώνει από διακοπή είναι συνήθως το μόνο που λείπει.
Τι δεν λύνει αυτός ο σχεδιασμός
Τίποτα εδώ δεν επιτρέπει εισερχόμενη σύνδεση προς το υποκατάστημα. Αν κάτι στα κεντρικά πρέπει να καλέσει την τοποθεσία κινητής, η κατεύθυνση της σήραγγας είναι λάθος για αυτή την απαίτηση, και το δυναμικό DNS ενημερώνει μόνο ένα όνομα. Η μετάφραση του παρόχου, η εισερχόμενη πολιτική και η ανανέωση του τελικού σημείου από τον πελάτη μένουν όλα εμπόδιο, και μια αλλαγμένη εγγραφή δεν μπορεί να ανοίξει NAT φορέα.
Κρατήστε το πρόθεμα του υποκαταστήματος ξεχωριστό από κάθε άλλη τοποθεσία και περιορίστε τι θα προωθεί η πύλη του. Το σταθερό τελικό σημείο του κόμβου απλοποιεί την ανακάλυψη και δεν κάνει τίποτα για τον σχεδιασμό δρομολόγησης, τον σχεδιασμό διευθύνσεων ή το ερώτημα ποιες διαδρομές εφαρμογών επιβιώνουν από μια μετάβαση.
Γράψτε τέσσερα πράγματα στο εγχειρίδιο: ποιος ξεκινά, ποια προθέματα επιτρέπονται, πόσο διαρκεί το keepalive και τι συμβαίνει όταν πέσει η κύρια ζεύξη. Αυτές οι γραμμές είναι ό,τι χρειάζεται πραγματικά ένας μελλοντικός χειριστής στις τρεις το πρωί.