Ένα υποκατάστημα διατηρεί PAT για το διαδίκτυο και VPN σημείου σε σημείο στην ίδια πύλη Cisco, και το VPN σταματά να λειτουργεί μόλις προστεθεί NAT. Οι διευθύνσεις μέσα στη σήραγγα δεν ταιριάζουν πλέον με αυτό που προστατεύει το crypto ACL, ή ο ομότιμος βλέπει μεταφρασμένες διευθύνσεις για τις οποίες δεν έχει διαδρομή. Η Cisco το λύνει σε δύο σημεία: το ASA επιλέγει κανόνα NAT που αντιστοιχίζει μια διεύθυνση στον εαυτό της, ενώ το IOS κρατά τη ροή έξω από κανόνα μετάφρασης μέσω deny στο ACL. Και τα δύο διατηρούν τις αρχικές διευθύνσεις και κανένα δεν παρακάμπτει την επεξεργασία NAT.

Καταγράψτε τη ροή πριν επιλέξετε κανόνα

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

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

Το NAT ταυτότητας στο ASA είναι κανόνας, όχι παράκαμψη

Στο ASA, το NAT ταυτότητας είναι κανόνας NAT του οποίου η μεταφρασμένη διεύθυνση ισούται με την αρχική. Επιλέγεται όπως κάθε άλλος κανόνας και εξακολουθεί να εγκαθιστά εγγραφή μετάφρασης, άρα το πακέτο δεν παρακάμπτει την επεξεργασία NAT. Αυτό που αλλάζει είναι ότι οι διευθύνσεις στο δίκτυο μένουν ίδιες, και αυτό χρειάζεται η πολιτική IPsec.

nat (inside,outside) source static LAN-NET LAN-NET destination static REMOTE-NET REMOTE-NET

Οι διεπαφές του κανόνα και η ρύθμιση route-lookup πρέπει να ταιριάζουν με το σχέδιο προώθησης. Κανόνας που αντιστοιχίζει σωστά τη διεύθυνση αλλά εφαρμόζεται σε λάθος ζεύγος διεπαφών δεν θα επιλεγεί για τη ροή σας. Το route-lookup αποφασίζει αν το μεταφρασμένο πακέτο δρομολογείται ή χρησιμοποιείται ο αρχικός προορισμός, και αυτό καθορίζει αν η επιστροφή έρχεται μέσα από τη σήραγγα.

Η διαχειριστική πρόσβαση στο ίδιο το ASA είναι ξεχωριστή περίπτωση. Αν χρησιμοποιείτε NAT ταυτότητας για διαχειριστική κίνηση, ισχύει η απαίτηση route-lookup της έκδοσης, και μια ευρεία εξαίρεση αντιγραμμένη από παράδειγμα VPN δεν θα διορθώσει το SSH.

Ένα deny στο ACL NAT του IOS σημαίνει δεν επιλέγεται εδώ

Στο IOS, το NAT διαδικτύου οδηγείται από λίστα πηγών, και αυτό το ACL είναι ταξινομητής, όχι φίλτρο. Γραμμή permit επιλέγει κίνηση για μετάφραση· γραμμή deny σημαίνει ότι το πακέτο δεν επιλέγεται εδώ. Αυτό το deny δεν είναι εντολή απόρριψης του πακέτου όπως ένα deny σε ACL διεπαφής.

Το δεν επιλέγεται εδώ είναι επίσης στενότερο από το δεν μεταφράζεται πουθενά. Άλλος κανόνας NAT, άλλη διεπαφή ή route-map μπορούν ακόμη να μεταφράσουν τη ροή, γι αυτό πρέπει να διαβαστεί όλος ο πίνακας NAT. Το πακέτο χρειάζεται επίσης διαδρομή, αντίστοιχο crypto ACL και άδεια στα πραγματικά όρια ελέγχου πρόσβασης.

Μια ελάχιστη διάταξη στο IOS βάζει το deny πάνω από το permit στην ίδια λίστα και κατευθύνει τον κανόνα overload σε αυτή τη λίστα. Τότε το crypto ACL προστατεύει το ίδιο ζεύγος που το deny εξαιρεί από τη μετάφραση.

ip access-list extended NAT-ACL
 deny ip 10.10.0.0 0.0.0.255 192.0.2.0 0.0.0.255
 permit ip 10.10.0.0 0.0.0.255 any
ip nat inside source list NAT-ACL interface GigabitEthernet0/1 overload

Μία ερώτηση που μπορεί να ελεγχθεί για τα δύο μοντέλα

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

Στο ASA δείξτε nat detail και τον πίνακα μεταφράσεων· στο IOS δείξτε ip nat translations και τους αντίστοιχους μετρητές ACL. Κανόνας που δεν αυξάνεται ποτέ δεν επιλέχθηκε ποτέ, και αυτό δείχνει σειρά, διεπαφή ή κατεύθυνση και όχι τη διαμόρφωση crypto.

Πού συνήθως πάει στραβά η διαμόρφωση

Οι συχνές αστοχίες είναι μηχανικές. Το deny βρίσκεται κάτω από το permit και δεν ταιριάζει ποτέ. Ο ταξινομητής εφαρμόζεται σε λάθος κατεύθυνση, οπότε μεταφράζεται η ροή επιστροφής. Ο κανόνας ταυτότητας καλύπτει τις σωστές διευθύνσεις αλλά λάθος ζεύγος διεπαφών. Το crypto ACL προστατεύει υποδίκτυο που δεν ταιριάζει πλέον με αυτό που παρουσιάζει ο κανόνας NAT.

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

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