Ο φορητός υπολογιστής συνδέεται, το εσωτερικό δίκτυο φορτώνει και μια χούφτα δημόσιοι ιστότοποι κολλάνε. Η πιστοποίηση και η δρομολόγηση λειτουργούν προφανώς, κάτι που αφήνει το μέγεθος πακέτου ως εξήγηση. Σε σήραγγα L2TP/IPsec το διαθέσιμο MTU είναι μικρότερο από αυτό που ο προσαρμογέας εξακολουθεί να διαφημίζει, και ο πελάτης συνεχίζει να στέλνει πακέτα πλήρους μεγέθους με το bit «να μη θρυμματίζεται» ενεργό. Σε μια πύλη pfSense μπορεί να δοθεί εντολή να καθαρίσει αυτό το bit, και αυτός είναι ο γρηγορότερος τρόπος να επιβεβαιώσετε τη διάγνωση πριν τη διορθώσετε σωστά.

Ξεκινήστε από τις σελίδες που αποτυγχάνουν

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

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

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

Τι κάνει το bit DF στην έξοδο

Η ενθυλάκωση είναι ο λόγος που διαφέρουν οι αριθμοί. Το IPsec προσθέτει ESP, το L2TP προσθέτει άλλη μια κεφαλίδα, και επομένως η σήραγγα μεταφέρει λιγότερο ωφέλιμο φορτίο από τον φυσικό σύνδεσμο. Τα Windows εξακολουθούν να αναφέρουν 1500 byte στον προσαρμογέα και θέτουν «να μη θρυμματίζεται» σε ό,τι στέλνουν. Όταν ένα τέτοιο πακέτο δεν χωράει, η σωστή απάντηση από την πύλη είναι ένα μήνυμα ICMP που ζητά από τον αποστολέα να συρρικνωθεί. Γι’ αυτό μια σήραγγα που περνά μικρά ping μπορεί παρ’ όλα αυτά να αποτύχει σε λήψη αρχείου.

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

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

Η επιλογή του pfSense και τι δεν κάνει

Η επιλογή βρίσκεται στη σελίδα Σύστημα, Για προχωρημένους, Τείχος προστασίας και NAT, με ετικέτα «Καθαρισμός μη έγκυρων bit DF αντί για απόρριψη των πακέτων». Αντί να πετάει ένα υπερμέγεθες πακέτο που φέρει τη σημαία, το φίλτρο αφαιρεί τη σημαία και αφήνει το πακέτο να διαιρεθεί πιο κάτω. Ένα πακέτο θεωρείται μη έγκυρο όταν δεν μπορεί να διασχίσει τη διεπαφή εξόδου σε ένα κομμάτι.

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

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

Μια στενότερη διόρθωση που κρατά το TCP χωρίς κατακερματισμό

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

Αυτό αφήνει το UDP στην ανακάλυψη ή στην επιλογή DF. Όταν οι ιστότοποι που αποτυγχάνουν είναι συνηθισμένες ιστοσελίδες, ο περιορισμός είναι η αλλαγή που πρέπει να προτιμηθεί.

Ο πελάτης μπορεί να αναφέρει το δικό του MTU προσαρμογέα μέσω netsh interface ipv4 show subinterfaces. Συγκρίνετε αυτόν τον αριθμό με αυτό που ο διακομιστής πιστεύει ότι διαπραγματεύτηκε, γιατί τα δύο δεν είναι πάντα ίδια. Αυτή η τιμή είναι εκείνη που θα χρησιμοποιήσει πραγματικά το λειτουργικό σύστημα, ό,τι κι αν ανέφερε η διαπραγμάτευση.

Επιβεβαιώστε με καταγραφή και μετά επαναφέρετε την κατάσταση

Καταγράψτε και στις δύο πλευρές πριν αποφασίσετε: ένα ίχνος όπου τρέχει η σήραγγα, άλλο όπου τρέχει η διεπαφή WAN. Πακέτα που φεύγουν σε πλήρες μέγεθος χωρίς ICMP να επιστρέφει δείχνουν τον περιορισμό ως το σωστό επίπεδο. Απαντήσεις που φτάνουν και μετά πεθαίνουν στην επιστροφή δείχνουν αντ’ αυτού το MTU της σήραγγας.

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

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