Failback στην ASA: τι πραγματικά μετακινείται όταν επιστρέφει η διαδρομή
Η επιστροφή της διαδρομής στο πρωτεύον δεν σημαίνει ότι μετακινήθηκαν οι παλιές ροές. Δείτε μαζί το uplink, τη σήραγγα, τον πίνακα συνδέσεων και το αποτέλεσμα της εφαρμογής.
Σε μια ASA με δύο uplinks, το failback δεν είναι το αντίστροφο του failover. Η διαδρομή προς τον peer αλλάζει και μετά η πλατφόρμα πρέπει να συμβιβάσει τρεις ξεχωριστές μηχανές κατάστασης: τον πίνακα δρομολόγησης, τις συσχετίσεις ασφαλείας IKE και IPsec και τον πίνακα συνδέσεων. Καθεμία μπορεί να μείνει πίσω από τις άλλες, και αυτή η καθυστέρηση είναι αυτό που οι περισσότεροι περιγράφουν ως σήραγγα που δεν επιστρέφει.
Τι αλλάζει πραγματικά το failback
Η αναζήτηση διαδρομής είναι το ορατό κομμάτι. Όταν το παρακολουθούμενο αντικείμενο ανακάμψει, η παρακολουθούμενη διαδρομή προς την εξωτερική διεύθυνση του peer επιστρέφει και το επόμενο πακέτο που στέλνει η ASA ακολουθεί ξανά τον πρωτεύοντα σύνδεσμο. Όλα μετά από αυτό εξαρτώνται από το αν η υπάρχουσα κατάσταση συμφωνεί με τη νέα διαδρομή.
Το ARP και το NAT είναι οι σιωπηλές εξαρτήσεις. Ένα νέο next hop χρειάζεται μια πύλη που επιλύεται και μια μετάφραση που εξακολουθεί να ταιριάζει με το απομακρυσμένο άκρο, αλλιώς τα πρώτα πακέτα μετά το failback δεν πάνε πουθενά και η διαδρομή φαίνεται σωστή ενώ τίποτα δεν δουλεύει.
Τέσσερις όψεις σε μία χρονική γραμμή
Καταγράψτε τα ίδια τέσσερα πράγματα πριν, κατά τη διάρκεια και μετά τη μετάβαση, γιατί ένα μόνο στιγμιότυπο δεν μπορεί να σας πει ποιο επίπεδο μετακινήθηκε.
| View | What to record |
|---|---|
| Uplink and route | Interface state, the tracked object result, the route selected for the outer peer address |
| IKE and IPsec | The live peer, IKE version, security associations, protected-traffic counters |
| Connection table | Interface and endpoint pair for old flows and for flows created after the change |
| Application | One pre-existing operation and one fresh request, each marked success, reset, stall or recovered |
Μια διαδρομή που δεν άλλαξε ποτέ και μια διαδρομή που άλλαξε ενώ μια παλαιότερη σύνδεση κράτησε την κατάσταση προώθησής της παράγουν το ίδιο παράπονο και εντελώς διαφορετικά στοιχεία.
Γιατί οι παλιές συνδέσεις μένουν στο εφεδρικό μονοπάτι
Η ASA δεν διαλύει μια ροή επειδή άλλαξε μια διαδρομή. Οι εγκατεστημένες συνδέσεις κρατούν την απόφαση προώθησης με την οποία δημιουργήθηκαν, και η πλατφόρμα προσφέρει ξεχωριστούς ελέγχους για το πόσο επιτρέπεται αυτό: floating-connection timeout και connection holddown. Ο Οδηγός ρυθμίσεων συνδέσεων της ASA 9.24 της Cisco τα αντιμετωπίζει ως διαφορετικά ερωτήματα, και έτσι ακριβώς συμπεριφέρονται. Το ένα ρυθμίζει την επιβίωση μιας υπάρχουσας ροής, το άλλο πότε οι νέες ροές μπορούν να χρησιμοποιήσουν την προτιμώμενη διαδρομή.
Διαβάστε τις ισχύουσες τιμές για την έκδοσή σας πριν αλλάξετε οποιοδήποτε από τα δύο. Αν τις μειώσετε, κλείνετε συνεδρίες που οι άνθρωποι χρησιμοποιούν ακόμη. Αν τις αυξήσετε, το failback μοιάζει να μην έγινε ποτέ, γιατί οι νέες συνδέσεις συνεχίζουν να παίρνουν την παλιά διαδρομή σε όλη τη διάρκεια.
Μια σήραγγα δεν ανανεώνει κλειδιά επειδή επέστρεψε μια διαδρομή
Οι συσχετίσεις ασφαλείας IPsec φέρουν τη δική τους διαπραγματευμένη διάρκεια ζωής και επιβιώνουν από την αλλαγή διαδρομής που τις μετέφερε. Έτσι μια σήραγγα μπορεί να μείνει ενεργή κατά τη διάρκεια ενός failback ενώ η εξωτερική διευθυνσιοδότησή της δεν ταιριάζει πλέον με τη διαδρομή που χρησιμοποιείται, και αυτό είναι το επιχείρημα για το DPD και για σχέδια που καρφιτσώνουν τη διεύθυνση του peer αντί να την αφήνουν να αιωρείται.
Τα σχέδια με crypto-map και VTI συμπεριφέρονται εδώ διαφορετικά, και η τεκμηρίωση της Cisco για το 9.24 VTI περιγράφει την επιλογή που βασίζεται σε διαδρομές. Ο παλιός γενικός ισχυρισμός ότι μια ASA δεν μπορεί να τρέξει VPN βασισμένα σε διαδρομές δεν στέκει για τις υποστηριζόμενες εκδόσεις.
Διαβάστε τα στοιχεία με αυτή τη σειρά
Ξεκινήστε από το επίπεδο ελέγχου: show route για την επιλεγμένη διαδρομή, show interface για την κατάσταση του συνδέσμου και τους μετρητές του monitor SLA για το παρακολουθούμενο αντικείμενο. Μετά διαβάστε show crypto ikev2 sa, ή το αντίστοιχο του IKEv1, για να δείτε ποιος peer είναι ζωντανός, και έπειτα show crypto ipsec sa για τις προστατευμένες ροές. Στη συνέχεια περιορίστε τον πίνακα συνδέσεων με show conn address <host> και συγκρίνετε τη στήλη διασύνδεσης στις παλιές και τις νέες εγγραφές. Γράψτε τις εξόδους με χρονικές σημάνσεις, γιατί η σειρά τους είναι η διάγνωση.
Τελειώστε με μια δοκιμή εφαρμογής: μια ροή που υπήρχε ήδη και μία που δημιουργήθηκε αφού επέστρεψε η διαδρομή. Αν η παλιά ροή αποτύχει και η νέα δουλέψει, έχετε μια ιστορία κατάστασης σύνδεσης. Αν αποτύχουν και οι δύο, η σήραγγα ή η πολιτική είναι λάθος και ο πίνακας συνδέσεων είναι περισπασμός.
Κρατήστε αυτό το αρχείο στην ίδια μορφή και στις τρεις φάσεις και σημειώστε την ακριβή έκδοση. Όταν η χρονική γραμμή δείχνει συνεχώς μια μόνο μετάβαση, στείλτε το αρχείο στην υποστήριξη αντί να μαντέψετε ένα ID σφάλματος.