Die MSS-Regel wirkt auf dem Router, verfehlt aber Squid
MTU-Logik auf die separaten TCP-Verbindungen eines Proxys anwenden, statt anzunehmen, jedes Paket durchlaufe FORWARD.
Ein Administrator fügt TCPMSS-Clamping in FORWARD hinzu. Direkt gerouteter Verkehr wird besser, aber Downloads über die lokale Squid-Instanz hängen weiterhin. Die Website-Verbindung des Proxys ist nicht einfach die TCP-Verbindung des Clients, die diese Kette durchläuft.
Bei einem gewöhnlichen terminierenden Forward-Proxy endet die clientseitige Verbindung lokal. Der Proxy baut eine zweite TCP-Verbindung zum Ursprung oder Parent auf. Unter Linux folgen die für diese Verbindung erzeugten Pakete dem lokalen Ausgabepfad.
Eine reine FORWARD-Regel kann daher völlig funktionsfähig sein und dennoch den Handshake verfehlen, den sie anpassen sollte. Ordne die tatsächliche Verbindung und die Richtung des SYN zu, bevor du einen Hook wählst. Container oder getrennte Namespaces können ein weiteres geroutetes Segment hinzufügen, daher hängt die richtige Platzierung davon ab, wo der Prozess läuft.
Die PMTU-Zahl nicht direkt in MSS einsetzen
Die Pfad-MTU ist eine IP-Paketgröße. TCP MSS beschreibt die TCP-Nutzlast und muss die relevanten Header berücksichtigen. Ebenso ist eine Ping-Nutzlastlänge nicht die vollständige IP-Paketlänge. Die geläufige Addition von 28 Byte gehört zu einer einfachen IPv4-ICMP-Echo-Anordnung, nicht zu jeder Adressfamilie oder Kapselung.
Das TCPMSS-Target dokumentiert explizite Werte und PMTU-Clamping. Clamping stützt sich weiterhin auf die MTU-Informationen der Route; es ist kein Beweis für eine gesunde Pfaderkennung und kein Ersatz dafür, die nötigen ICMP-Nachrichten zuzulassen.
Verknüpfe auch das Symptom mit der Theorie. Ein abgeschlossener Handshake mit anschließendem Stocken bei größeren Übertragungen kann eine Untersuchung der Paketgröße rechtfertigen. Wiederholte unbeantwortete SYNs oder ein sofortiges Reset verlangen eine breitere Erklärung; fehlschlagende kleine Pakete belegen kein übergroßes Datensegment.
Halte eine funktionierende direkte Verbindung und eine scheiternde Proxy-Verbindung im Protokoll getrennt. Sie können unterschiedliche Quellen, Routen und Kapselung nutzen, selbst auf derselben Maschine.