Τα πλαίσια jumbo δεν κάνουν μια διαδρομή VPN να μεταφέρει πακέτα 9000 byte
Ένα μεγάλο MTU είναι τοπική συμφωνία ζεύξης. Αφαιρέστε την επιβάρυνση του τούνελ από τη μικρότερη ζεύξη της διαδρομής πριν ανεβάσετε την εσωτερική διεπαφή.
Ενεργοποιήσατε πλαίσια 9000 byte στο LAN και περιμένατε το VPN να γίνει ταχύτερο. Έγινε πιο αργό ή σταμάτησε εντελώς να περνά μεγάλες μεταφορές. Τα πλαίσια jumbo είναι μια τοπική συμφωνία ζεύξης· δεν μεγαλώνουν τη διαδρομή που διασχίζει το τούνελ.
Ο χρησιμοποιήσιμος προϋπολογισμός καθορίζεται από το μικρότερο όριο στη διαδρομή, μαζί με την ενθυλάκωση που προσθέτει το τούνελ.
Τι αλλάζουν πραγματικά τα πλαίσια jumbo
Ένα MTU είναι ιδιότητα μιας διεπαφής. Το να το ανεβάσετε σε έναν διακομιστή και στο switch του σημαίνει ότι τα δύο αυτά μπορούν να ανταλλάσσουν μεγαλύτερα πλαίσια χωρίς κατάτμηση. Δεν λέει τίποτα για τον δρομολογητή πέρα από το switch, για τον πάροχο ή για την άλλη πλευρά ενός τούνελ. Αυτές οι συσκευές έχουν τα δικά τους όρια, και ένα πακέτο που ξεπερνά ένα από αυτά απορρίπτεται ή κατατμείται σύμφωνα με κανόνες που δεν ορίσατε εσείς.
Τοπική συμφωνία, παγκόσμιες συνέπειες. Αυτή είναι όλη η σύγχυση.
Ο φόρος της ενθυλάκωσης
Ένα τούνελ τυλίγει το πακέτο σας μέσα σε ένα άλλο. Το WireGuard πάνω από IPv4 UDP προσθέτει περίπου 60 byte επιβάρυνσης· η λειτουργία UDP του OpenVPN είναι στο ίδιο εύρος, και το IPsec ποικίλλει ανάλογα με τη λειτουργία και τους αλγορίθμους. Αυτά τα byte βγαίνουν από τον προϋπολογισμό της εξωτερικής διαδρομής, όχι από το πουθενά.
Έτσι, μια εξωτερική ζεύξη 1500 byte δεν μπορεί να μεταφέρει ένα εσωτερικό πακέτο 1500 byte μόλις προστεθεί κεφαλίδα τούνελ.
Η αριθμητική αξίζει να γίνει μία φορά. Σε διαδρομή 1500 byte, μια διεπαφή WireGuard θέλει MTU γύρω στο 1420 ώστε να χωρά το ενθυλακωμένο πακέτο. Βάλτε την εσωτερική διεπαφή στο 9000 και κάθε μεγάλο πακέτο θα χρειάζεται κατάτμηση που το τούνελ δεν μπορεί να κάνει, ή θα απορρίπτεται.
Βρείτε τη μικρότερη ζεύξη στη διαδρομή
Διατρέξτε τη διαδρομή και βρείτε το χαμηλότερο MTU. Το LAN είναι συνήθως 1500 ή 9000, το WAN συνήθως 1500, και μια κινητή ή PPP ζεύξη μπορεί να είναι ακόμη χαμηλότερα. Στη συνέχεια αφαιρέστε την επιβάρυνση του τούνελ. Αν το αποτέλεσμα είναι μικρότερο από το MTU της εσωτερικής διεπαφής, έχετε την απάντησή σας. Η ανακάλυψη MTU διαδρομής μπορεί να το βρει αυτόματα, αλλά μόνο όταν τα μηνύματα ICMP από τα οποία εξαρτάται επιτρέπονται.
Το φιλτραρισμένο ICMP είναι ο κλασικός λόγος που μια μεγάλη μεταφορά κολλάει ενώ τα μικρά αιτήματα δουλεύουν μια χαρά.
Δοκιμάστε την εξάρτηση από το μέγεθος χωρίς να διευρύνετε την αλλαγή
Χρησιμοποιήστε μια αντιπροσωπευτική μεταφορά και κρατήστε τις αρχικές τιμές ώστε να μπορείτε να τις επαναφέρετε. ping -M do -s 1472 δοκιμάζει ένα πακέτο 1500 byte με ενεργό το bit DF· μειώστε το μέγεθος μέχρι να περάσει. Αν αποτυγχάνουν μόνο τα μεγάλα πακέτα, έχετε πρόβλημα μεγέθους και όχι δρομολόγησης.
Προσοχή στο offload στην πλευρά του κεντρικού υπολογιστή όταν διαβάζετε καταγραφές. Το offload τμηματοποίησης μπορεί να δείξει πλαίσια πολύ μεγαλύτερα από ό,τι πέρασε πραγματικά από το καλώδιο, κάνοντας μια διαδρομή που δουλεύει να φαίνεται χαλασμένη και μια χαλασμένη να φαίνεται εντάξει.
Πότε ένα μεγάλο MTU είναι το σωστό σχέδιο
Ένα ελεγχόμενο ιδιωτικό δίκτυο μπορεί νόμιμα να τρέχει μεγαλύτερα πλαίσια από άκρη σε άκρη, αρκεί κάθε συσκευή στη διαδρομή να συμφωνεί και να υπολογίζεται η επιβάρυνση του τούνελ. Αυτό είναι ένα συντονισμένο σχέδιο με τεκμηριωμένη τιμή ανά ζεύξη, όχι ένας μεγάλος αριθμός πληκτρολογημένος σε έναν πελάτη.
Για μια συνηθισμένη δημόσια έξοδο, υποθέστε 1500 ή λιγότερο και αφήστε το τούνελ να διαλέξει ένα ασφαλές εσωτερικό MTU. RFC 8201 καλύπτει την ανακάλυψη MTU διαδρομής για την περίπτωση IPv6 και είναι μια χρήσιμη αναφορά για το πώς υποτίθεται ότι λειτουργεί η ανατροφοδότηση.