Δεξαμενές VPN διπλής στοίβας: και οι δύο οικογένειες διευθύνσεων στο strongSwan
Οι εσωτερικές δεξαμενές IPv4 και IPv6, τα προστατευμένα προθέματα και η οικογένεια του εξωτερικού τούνελ είναι τρεις ξεχωριστές αποφάσεις. Σχεδιάστε την καθεμία πριν το πείτε διπλής στοίβας.
Μια πύλη μπορεί να δώσει σε έναν κινούμενο χρήστη και IPv4 και IPv6 εικονική διεύθυνση, ενώ το εξωτερικό τούνελ εξακολουθεί να ταξιδεύει πάνω από IPv4. Αυτές είναι ανεξάρτητες αποφάσεις, και η αντιμετώπισή τους ως μία είναι το σημείο όπου τα σχέδια διπλής στοίβας συνήθως καταρρέουν. Οι εσωτερικές οικογένειες του πελάτη, τα προστατευμένα προθέματα στα οποία μπορεί να φτάσει και η μεταφορά που μεταφέρει την ενθυλάκωση είναι τρεις ξεχωριστές επιλογές.
Η περισσότερη σύγχυση προκύπτει από το ότι η λέξη διπλή στοίβα εφαρμόζεται σε ένα σχέδιο που είναι διπλής στοίβας μόνο σε ένα σημείο. Μια υπηρεσία μπορεί να είναι διπλής στοίβας εσωτερικά, μονής στοίβας στην εξωτερική της διεύθυνση, και παρ’ όλα αυτά να λειτουργεί απόλυτα καλά για τους πελάτες. Αυτό που δεν μπορεί είναι να λειτουργεί κατά τύχη.
Δύο οικογένειες μέσα, ένα μονοπάτι έξω
Η εξωτερική σύνδεση είναι IKE πάνω από UDP και χρειάζεται μία προσβάσιμη οικογένεια διευθύνσεων από όπου κι αν βρίσκεται ο πελάτης. Μια εσωτερική διεύθυνση IPv6 δεν απαιτεί πάροχο με IPv6, επειδή το εσωτερικό πακέτο είναι ωφέλιμο φορτίο μέσα στο εξωτερικό. Πολλές λειτουργικές εγκαταστάσεις μεταφέρουν προθέματα IPv6 μέσα από ζεύξη ανόδου μόνο IPv4.
Αυτό που περιορίζει πραγματικά το εξωτερικό μονοπάτι είναι η προσβασιμότητα και η διέλευση NAT. Αν η πύλη διαφημίζει μόνο μια διεύθυνση IPv4, ένας πελάτης σε δίκτυο μόνο IPv6 δεν μπορεί να συνδεθεί καθόλου, όσες δεξαμενές κι αν ρυθμίσετε. Αποφασίστε την εξωτερική οικογένεια με βάση τον πληθυσμό πελατών σας, όχι με βάση το εσωτερικό σχέδιο διευθύνσεων.
Δώστε στον πελάτη μια διεύθυνση σε κάθε οικογένεια
Το αίτημα και για τις δύο οικογένειες είναι μία γραμμή στην πλευρά του πελάτη, με την προϋπόθεση ότι η πύλη έχει κάτι να διαθέσει. Οι ονομαστικές δεξαμενές κρατούν τις πηγές χωριστά από τα δίκτυα υπηρεσιών, και αυτή είναι η ιδιότητα που κάνει τους κανόνες τείχους προστασίας αναγνώσιμους έξι μήνες αργότερα.
pools {
pool4 { addrs = 10.90.0.0/24 }
pool6 { addrs = fd42:90::/64 }
}
connections {
private-access {
version = 2
pools = pool4, pool6
local { auth = pubkey certs = gateway.pem id = vpn.example.com }
remote { auth = pubkey cacerts = ca.pem vips = 0.0.0.0, :: }
children {
private { local_ts = 10.60.0.0/16, fd42:60::/48 remote_ts = dynamic }
}
}
}
Η vips τιμή ζητά μια διεύθυνση από κάθε οικογένεια, και η λίστα δεξαμενών καθορίζει από πού προέρχονται αυτές οι διευθύνσεις. Η τεκμηρίωση του strongSwan για τις εικονικές διευθύνσεις IP καλύπτει πολλαπλά αιτήματα και την κατανομή δεξαμενών, συμπεριλαμβανομένου του σημείου ότι ένας πελάτης που ζητά μια συγκεκριμένη διεύθυνση εκφράζει απλώς μια προτίμηση την οποία ο αποκρινόμενος μπορεί να υπερβεί. Μην χτίσετε κανόνα πρόσβασης που υποθέτει ότι ο πελάτης λαμβάνει πάντα την ίδια τιμή.
Δημιουργήστε το δικό σας μοναδικό τοπικό πρόθεμα αντί να αντιγράψετε το παράδειγμα. Δύο οργανισμοί που και οι δύο fd42::/16 το αναπτύσσουν θα ανακαλύψουν τη σύγκρουση την πρώτη φορά που θα διασυνδεθούν, και η διάγνωσή της δεν είναι ευχάριστη.
Οι επιλογείς περιγράφουν προορισμούς, όχι πηγές
Οι τοπικοί επιλογείς κίνησης του θυγατρικού SA λένε ποια προστατευμένα δίκτυα βρίσκονται πίσω από την πύλη, και οι απομακρυσμένοι επιλογείς περιγράφουν τι μπορεί να χρησιμοποιήσει ο πελάτης ως πηγή. Μια διεύθυνση εικονικής δεξαμενής ανήκει στην πλευρά της πηγής αυτής της πολιτικής· το να τη βάλετε στη λίστα προορισμών είναι μια συνηθισμένη παρερμηνεία της διαμόρφωσης.
Και οι δύο οικογένειες χρειάζονται διαδρομές επιστροφής και επιτρεπόμενη προώθηση στην πύλη. Η προσθήκη ενός προθέματος σε έναν επιλογέα χωρίς διαδρομή πίσω στη δεξαμενή παράγει ένα τούνελ που εγκαθίσταται, περνά μία κατεύθυνση κίνησης και απορρίπτει σιωπηλά την απάντηση. Ο επιλογέας είναι πολιτική, όχι δρομολόγηση.
Κρατήστε τις δεξαμενές και τα προθέματα υπηρεσιών σε ξεχωριστά μπλοκ του σχεδίου διευθύνσεών σας. Όταν επικαλύπτονται, μια διαδρομή που θα έπρεπε να φτάσει έναν προστατευμένο κεντρικό υπολογιστή μπορεί να ταιριάξει με διεύθυνση δεξαμενής και να χαθεί μέσα στο τούνελ.
Το DNS και το μονοπάτι απάντησης κρίνουν αν φαίνεται ολοκληρωμένο
Οι απαντήσεις του επιλυτή είναι ανεξάρτητες από τη μεταφορά που χρησιμοποιείται για να φτάσουμε στον επιλυτή. Ένα όνομα μπορεί να επιστρέψει εγγραφή A, εγγραφή AAAA ή και τις δύο, και ο πελάτης επιλέγει σύμφωνα με τους δικούς του κανόνες προτίμησης . Αν μια εσωτερική υπηρεσία δημοσιεύει εγγραφή AAAA αλλά τίποτα δεν δρομολογεί αυτό το πρόθεμα, οι πελάτες σε δίκτυα διπλής στοίβας θα δοκιμάσουν πρώτα το μονοπάτι IPv6 και θα μείνουν εκεί μέχρι να αποτύχει. Τίποτα στη διαμόρφωση του τούνελ δεν φαίνεται λάθος όσο συμβαίνει αυτό.
Αποφασίστε λοιπόν ανά όνομα ποιες οικογένειες πρέπει να είναι χρησιμοποιήσιμες και μετά ελέγξτε ότι το αντίστοιχο πρόθεμα βρίσκεται στον επιλογέα και έχει διαδρομή επιστροφής. Αυτή είναι απόφαση ανά υπηρεσία. Η μαζική δημοσίευση και των δύο τύπων εγγραφών είναι ο τρόπος με τον οποίο μια λειτουργική υπηρεσία μόνο IPv4 αρχίζει να λήγει σε χρόνο για τους μισούς χρήστες της.
Επαληθεύστε και τις δύο οικογένειες πριν το θεωρήσετε έτοιμο
Η διαμόρφωση που φορτώνει δεν είναι διαμόρφωση που λειτουργεί. Διαβάστε την κατάσταση που αναφέρει ο δαίμονας, επιβεβαιώστε τις κατανομές δεξαμενών και μετά κοιτάξτε τις διαδρομές που εγκατέστησε πραγματικά ο πελάτης.
swanctl --list-sas
swanctl --list-pools
ip -6 addr show scope global
ip -6 route get fd42:60::10
Οι δύο πρώτες εντολές δείχνουν τα εγκατεστημένα θυγατρικά SA και ποιες δεξαμενές έχουν ακόμη διαθέσιμες διευθύνσεις, ώστε ένα σχέδιο που λειτουργεί για τον πρώτο πελάτη και αποτυγχάνει για τον δέκατο να γίνεται ορατό. Οι δύο τελευταίες δείχνουν αν ο πελάτης έλαβε μια καθολική διεύθυνση IPv6 από τη δεξαμενή και πού θα πήγαινε στην πραγματικότητα η κίνηση προς ένα προστατευμένο πρόθεμα. Συγκρίνετε τη διεύθυνση που εκχωρήθηκε με τη δεξαμενή που ρυθμίσατε, όχι με τη διεύθυνση που ελπίζατε. Αν ο αποκρινόμενος επέλεξε διαφορετική τιμή βάσει της πολιτικής του, οι διαδρομές και οι κανόνες τείχους προστασίας πρέπει να ταιριάζουν ακόμη με αυτό που επέλεξε.
Στη συνέχεια δοκιμάστε έναν προστατευμένο κεντρικό υπολογιστή ανά οικογένεια και ένα όνομα που επιλύεται και στις δύο. Ένα τεστ μίας οικογένειας δεν σας λέει τίποτα για το μισό του σχεδίου που δεν ασκήσατε, και εκείνο το μισό είναι συνήθως όπου ζει η διαδρομή που λείπει.