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

Δύο μηχανισμοί κατάτμησης, ένα σύμπτωμα

Το IKEv2 έχει τη δική του επέκταση κατάτμησης, που ορίζεται στο RFC 7383, η οποία χωρίζει τα προστατευμένα μηνύματα IKE σε μικρότερα μηνύματα IKE. Οι ομότιμοι διαπραγματεύονται αυτή τη δυνατότητα, και ένα μήνυμα επανασυναρμολογείται από την υλοποίηση IKE και όχι από το επίπεδο IP.

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

Η διέλευση NAT προσθέτει μια τρίτη μεταβλητή, γιατί τότε το ESP τυλίγεται σε UDP και το εξωτερικό πακέτο μεγαλώνει ενώ μοιάζει με συνηθισμένη κίνηση UDP στη θύρα 4500. Μια διαδρομή που περνά καλά το UDP μπορεί ακόμη να αποτύχει σε ένα αυτοδύναμο πακέτο που δεν χωρά πια.

Διαβάστε την ανταλλαγή που απέτυχε

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

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

Αλλάξτε τη διαδρομή, όχι το πιστοποιητικό

Δοκιμάστε τον ίδιο πελάτη, το ίδιο πιστοποιητικό και την ίδια διαμόρφωση από διαφορετικό δίκτυο. Ένα κινητό hotspot είναι συνήθως η φθηνότερη δεύτερη διαδρομή, και είναι πραγματικά διαφορετικό από τη σύνδεση του γραφείου, όχι μόνο ονομαστικά.

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

Μετρήστε την ανταλλαγή πριν επεξεργαστείτε οτιδήποτε

Βρείτε το μέγεθος της αλυσίδας και το μέγεθος της διαδρομής. Και οι δύο αριθμοί περιορίζουν τι μπορεί να στείλει η χειραψία, και και οι δύο μετριούνται φθηνά:

openssl crl2pkcs7 -nocrl -certfile chain.pem | openssl pkcs7 -print_certs -noout | grep -c subject
ls -l chain.pem
ping -M do -s 1400 198.51.100.7
ip -s link show eth0 | sed -n '1,6p'

Τα δύο πρώτα δίνουν τον αριθμό των πιστοποιητικών και το μέγεθος του αρχείου, που είναι ένας λογικός δείκτης για το πόσο μεγάλο θα είναι το μήνυμα ελέγχου ταυτότητας. Η δοκιμή ping αναφέρει αν ένα αυτοδύναμο πακέτο αυτού του μεγέθους επιβιώνει στη διαδρομή, και οι μετρητές της διεπαφής δείχνουν αν θραύσματα απορρίφθηκαν στο δικό σας άκρο. Στα Windows, η ισοδύναμη δοκιμή είναι ένα ping με τη σημαία do-not-fragment και ρητό μέγεθος ωφέλιμου φορτίου.

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

Διορθώστε το επίπεδο που είναι πραγματικά χαλασμένο

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

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

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

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