UDR στο Azure προς πύλη VPN: ένας προορισμός, όχι όλη η έξοδος
Στρέψτε ένα πρόθεμα Azure στην πύλη VPN χωρίς να μετακινήσετε όλη την έξοδο. Διαβάστε τις ενεργές διαδρομές, δεσμεύστε το υποδίκτυο φόρτου και ολοκληρώστε την επιστροφή.
Προσθέτετε μια διαδρομή που ορίζει ο χρήστης για ένα εξωτερικό πρόθεμα, τη στέλνετε στην πύλη VPN και η κίνηση εξακολουθεί να βγαίνει από τη διαδρομή διαδικτύου του Azure. Ή βγαίνει σωστά και η απάντηση δεν επιστρέφει ποτέ. Και τα δύο αποτελέσματα προέρχονται από το ίδιο λάθος: να θεωρείτε το επόμενο άλμα του Azure ως όλο το σχέδιο. Ο πίνακας δρομολόγησης αποφασίζει μόνο ποια έξοδο παίρνει ένα πακέτο μέσα στο Azure. Το τι συμβαίνει μετά τη σήραγγα και πώς επιστρέφει η απάντηση είναι το δεύτερο μισό που πρέπει να χτίσετε.
Το επόμενο άλμα είναι πύλη, όχι IP συσκευής
Ένα UDR στέλνει ένα ταιριαστό πρόθεμα σε έναν τύπο επόμενου άλματος, και το VirtualNetworkGateway είναι τύπος, όχι διεύθυνση. Οι άνθρωποι κολλούν την ιδιωτική IP της πύλης σε διαδρομή VirtualAppliance και μετά αναρωτιούνται γιατί δεν ταιριάζει τίποτα, γιατί αυτός ο τύπος περιμένει NIC ή εσωτερικό εξισορροπητή φόρτου. Η τεκμηρίωση δρομολόγησης της Microsoft περιορίζει επίσης το επόμενο άλμα πύλης σε ένα εικονικό δίκτυο του οποίου η πύλη είναι πύλη VPN. Το ExpressRoute, το Route Server και ένας κόμβος Virtual WAN δεν διευθυνσιοδοτούνται από αυτή την επιλογή.
Ελέγξτε τι έχει πραγματικά το εικονικό δίκτυο πριν γράψετε τη διαδρομή. Αν το σχέδιο δρομολογεί μέσω κόμβου, η διαδρομή ανήκει στον ιδιοκτήτη δρομολόγησης του κόμβου και όχι στο spoke που τυχαίνει να επεξεργάζεστε.
Διαβάστε την ενεργή διαδρομή πριν αλλάξετε οτιδήποτε
Το Azure συνδυάζει διαδρομές συστήματος, προθέματα που έμαθε μέσω BGP και UDR σε έναν ενεργό πίνακα διαδρομών ανά NIC, και το μεγαλύτερο ταιριαστό πρόθεμα κερδίζει ανεξάρτητα από το από πού ήρθε. Για το ίδιο πρόθεμα, ένα UDR νικά μια διαδρομή BGP. Αυτή η σειρά είναι ο λόγος που ένα παλιό UDR από προηγούμενο πείραμα μπορεί να υπερισχύσει σιωπηλά του προθέματος που μόλις μάθατε μέσω της σήραγγας.
Κοιτάξτε πρώτα τον ενεργό πίνακα και μετά αποφασίστε αν προσθέτετε διαδρομή ή αντικαθιστάτε μία:
az network nic show-effective-route-table \
--resource-group rg-net --name vm-web-nic -o tableΔιαβάστε και τη στήλη προέλευσης, όχι μόνο το πρόθεμα. Μια διαδρομή με το σωστό πρόθεμα και λάθος προέλευση σας λέει ποιο αντικείμενο να επεξεργαστείτε και σας γλιτώνει από το να προσθέσετε δεύτερη διαδρομή που χάνει από την πρώτη.
Γράψτε τη διαδρομή με το πραγματικό πρόθεμα και υποδίκτυο
Χρησιμοποιήστε το πραγματικό πρόθεμα του προορισμού, παρμένο από την υπηρεσία που πραγματικά προσεγγίζετε, αντί για δημόσιο εύρος αντιγραμμένο από ανάρτηση φόρουμ. Ξεκινήστε με μία εγκεκριμένη υπηρεσία πριν εξετάσετε προεπιλεγμένη διαδρομή που μετακινεί όλη την έξοδο. Στη συνέχεια συνδέστε τον πίνακα διαδρομών στο υποδίκτυο του φόρτου εργασίας. Το υποδίκτυο πύλης έχει τις δικές του απαιτήσεις και η σύνδεση του πίνακα εκεί σπάει την πύλη αντί να κατευθύνει τον φόρτο.
Δημιουργήστε τη διαδρομή και μετά δεσμεύστε τον πίνακα στο υποδίκτυο που φιλοξενεί τον φόρτο:
az network route-table route create --resource-group rg-net --route-table-name rt-egress \
--name to-partner --address-prefix 203.0.113.0/24 --next-hop-type VirtualNetworkGateway
az network vnet subnet update --resource-group rg-net --vnet-name vnet-app \
--name snet-web --route-table rt-egressΗ διάδοση μετράει επίσης. Με τη διάδοση BGP ενεργοποιημένη σε αυτόν τον πίνακα, τα μαθημένα προθέματα εμφανίζονται δίπλα σε αυτά που γράψατε, και ένα πιο συγκεκριμένο μαθημένο πρόθεμα μπορεί να νικήσει ένα ευρύτερο UDR. Απενεργοποιήστε τη διάδοση μόνο όταν θέλετε το σύνολο UDR να είναι αυθεντικό για αυτό το υποδίκτυο.
Ολοκληρώστε το τοπικό μισό αλλιώς η ροή πεθαίνει εκεί
Η τοπική πύλη πρέπει να δεχτεί την πηγή Azure, να την προωθήσει στον προορισμό και να επιτρέψει την εφαρμογή. Η περαιτέρω διαδρομή της μπορεί να είναι έξοδος διαδικτύου ή άλλο ιδιωτικό άλμα, αλλά αυτή η απόφαση ανήκει στο σχέδιο και όχι στον πίνακα διαδρομών του Azure. Η συνήθης αποτυχία είναι η επιστροφή. Ένας προορισμός διαδικτύου δεν θα δρομολογήσει μια ιδιωτική πηγή Azure πίσω σε εσάς, οπότε η απάντηση πηγαίνει στην προεπιλεγμένη της πύλη και πεθαίνει, ή δεν φεύγει καθόλου.
Δύο σχέδια το λύνουν και δεν είναι εναλλάξιμα. Μεταφράστε την πηγή στην έξοδο, ώστε ο προορισμός να απαντά σε δημόσια διεύθυνση που κατέχει το τοπικό δίκτυο. Ή διατηρήστε την πηγή και χτίστε σχέση δρομολογημένης επιστροφής ώστε οι απαντήσεις να γυρίζουν μέσα από τη σήραγγα. Διαλέξτε ένα και σημειώστε ποια διεύθυνση θα βλέπει η εφαρμογή.
Οι επιλογείς και οι λίστες επιτρεπόμενων είναι ξεχωριστά από όλα αυτά. Η επιλογή επόμενου άλματος στο Azure δεν διευρύνει τους επιλογείς κίνησης VPN και δεν αλλάζει τη λίστα επιτρεπόμενων πηγών μιας εξωτερικής υπηρεσίας.
Επαληθεύστε με την πηγή που παρατηρεί ο προορισμός
Στείλτε το αίτημα από τον πραγματικό φόρτο εργασίας και όχι από κεντρικό υπολογιστή άλματος σε άλλο υποδίκτυο, μετά διαβάστε τη διεύθυνση πηγής που παρατήρησε ο προορισμός. Αυτή η μία τιμή σας λέει ποιο από τα δύο σχέδια επιστροφής εφαρμόζεται. Ελέγξτε μετά τη διαδρομή απάντησης και επιβεβαιώστε ότι η συνήθης κίνηση διαχείρισης προς το VM λειτουργεί ακόμα, γιατί μια προεπιλεγμένη διαδρομή που προστέθηκε κατά λάθος εμφανίζεται ως σπασμένη συνεδρία SSH πολύ πριν εμφανιστεί ως σπασμένη εφαρμογή.
Η διέλευση μέσω επιλεγμένου προθέματος είναι πολύ στενότερη αλλαγή από την εξαναγκασμένη σήραγγα. Κρατήστε τη στενή και η επαναφορά είναι η διαγραφή μίας διαδρομής.