Δύο υποκαταστήματα μπορούν να ανταλλάσσουν κίνηση μέσω μιας πύλης VPN του Azure χωρίς κανένα άμεσο τούνελ μεταξύ τους. Κάθε υποκατάστημα ανοίγει μια σύνδεση Site-to-Site προς την ίδια πύλη, και η πύλη μεταβιβάζει τα μαθημένα προθέματα μεταξύ των δύο συνδέσεων. Αυτό που το κάνει να λειτουργεί δεν είναι το δεύτερο τούνελ αλλά η ανταλλαγή διαδρομών: το υποκατάστημα A πρέπει να μάθει το πρόθεμα του B, και το B του A. Περάστε τους παρακάτω ελέγχους με τη σειρά και σταματήστε στον πρώτο που αποτυγχάνει, γιατί κάθε επόμενο βήμα εξαρτάται από αυτόν.

Προϋποθέσεις, πριν ρυθμίσετε οτιδήποτε

Τέσσερις συνθήκες κρίνουν αν αυτός ο σχεδιασμός μπορεί να λειτουργήσει καθόλου. Η πύλη πρέπει να είναι βασισμένη σε διαδρομές και σε SKU που υποστηρίζει BGP, και οι δύο συνδέσεις πρέπει να έχουν ενεργό BGP, οι χώροι διευθύνσεων των υποκαταστημάτων δεν πρέπει να επικαλύπτονται, και καμία πλευρά δεν πρέπει να βασίζεται σε NAT για να κρύψει το πραγματικό της πρόθεμα.

Σχεδιάστε τα ASN με πρόθεση. Η τεκμηριωμένη προεπιλογή του Azure είναι 65515, και κάθε δρομολογητής υποκαταστήματος χρειάζεται το δικό του ιδιωτικό ASN που δεν συγκρούεται με την πύλη ή με το άλλο υποκατάστημα. Η επαναχρησιμοποίηση μιας προεπιλογής χωρίς έλεγχο της υπάρχουσας διαμόρφωσης της πύλης είναι ο τρόπος με τον οποίο μια διαδρομή AS απορρίπτεται αργότερα.

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

Ρυθμίστε με αυτή τη σειρά

Κάθε βήμα έχει ένα παρατηρήσιμο αποτέλεσμα, οπότε μην προχωρήσετε μέχρι να εμφανιστεί.

  1. Ενεργοποιήστε το BGP στην πύλη εικονικού δικτύου και σημειώστε το ASN και τη διεύθυνση ομότιμης σύνδεσης.
  2. Δημιουργήστε μια τοπική πύλη δικτύου για κάθε υποκατάστημα με τον πραγματικό χώρο διευθύνσεων του υποκαταστήματος, το ASN και τη διεύθυνση ομότιμης σύνδεσης BGP.
  3. Δημιουργήστε κάθε σύνδεση Site-to-Site και ενεργοποιήστε το BGP στην ίδια τη σύνδεση.
  4. Ρυθμίστε τον δρομολογητή του υποκαταστήματος να συνδέεται ομότιμα με τη διεύθυνση πύλης που εκχώρησε το Azure, όχι με το δημόσιο τελικό σημείο IKE της πύλης βάσει υπόθεσης.

Το τέταρτο βήμα είναι εκεί όπου κολλάνε οι περισσότερες προσπάθειες. Η διεύθυνση ομότιμης σύνδεσης BGP που αναφέρει το Azure είναι αυτή που πρέπει να χρησιμοποιεί ο δρομολογητής του υποκαταστήματος ως γείτονα, και δεν είναι πάντα η διεύθυνση που περιμένουν οι άνθρωποι από το διάγραμμα του τούνελ.

Διαφημίστε το ίδιο το πρόθεμα του υποκαταστήματος, για παράδειγμα 10.10.0.0/16 από το A και 10.20.0.0/16 από το B. Μη διαφημίζετε προεπιλεγμένη διαδρομή ή ευρύ άθροισμα για να καλύψετε ένα απόν συγκεκριμένο δίκτυο· το κενό επιστρέφει αργότερα ως σιωπηλή μαύρη τρύπα.

Επαληθεύστε την ανταλλαγή διαδρομών και στα δύο άκρα

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

CheckWhereStop if
BGP session establishedGateway BGP peers, branch router neighbour stateSession is Idle or Active on either side
Prefix learnedGateway learned routes, branch BGP tableThe other branch's prefix is absent
Prefix selectedBranch routing table, effective routes on the VNetPrefix is known but a more specific route wins

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

Ακολουθήστε τη διαδρομή επιστροφής στην πλευρά του LAN

Αυτό είναι το μέρος που φαίνεται σωστό στο Azure και αποτυγχάνει στον χώρο. Ένας υπολογιστής στο υποκατάστημα A στέλνει το πακέτο του στον δρομολογητή VPN του A μόνο αν αυτός ο δρομολογητής είναι η προεπιλεγμένη πύλη του, ή αν ο υπολογιστής ή η πύλη του έχει διαδρομή για το πρόθεμα του B. Το ίδιο πρέπει να ισχύει και στην αντίθετη κατεύθυνση.

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

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

Επιτρέψτε τη λειτουργία και μετά αποδείξτε την με μια απορριπτόμενη δοκιμή

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

Δοκιμάστε από ένα συνηθισμένο φορτίο εργασίας στο υποκατάστημα A προς μια πραγματική υπηρεσία στο υποκατάστημα B, επιβεβαιώστε την απάντηση και μετά επιχειρήστε μια λειτουργία που πρέπει να παραμείνει απαγορευμένη. Η κίνηση που παράγει η ίδια η συσκευή VPN μπορεί να χρησιμοποιήσει διαφορετική διεύθυνση πηγής και να παρακάμψει το στάδιο δρομολόγησης του LAN, οπότε ένα επιτυχές ping από τον δρομολογητή αποδεικνύει λιγότερα απ' ό,τι φαίνεται.

Ολοκληρώστε καταγράφοντας τέσσερα γεγονότα: τα προθέματα που ανταλλάχθηκαν, τα ASN που χρησιμοποιούνται, τη διαδρομή επιστροφής LAN για κάθε πλευρά και την πολιτική που επιτρέπει την υπηρεσία. Αν λείπει ένα από αυτά, η ρύθμιση λειτουργεί μέχρι την πρώτη αλλαγή και τότε κανείς δεν μπορεί να εξηγήσει το γιατί.

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