An engem Container hannert enger Firmen-VPN gëtt DNS opgeléist, d'Login-Säit lued, en Health-Endpunkt äntwert, an duerno hänkt eng HTTPS-Ufro bis se an den Timeout leeft. D'Image nei bauen an d'Proxy-Variabelen änneren ännert näischt, well den defekten Deel net am Image ass. De Client authentifizéiert sech iwwer en Transport a beweegt Massendaten iwwer en aneren, an nëmmen den zweete ass futti.

Zwee Transporten, ee verwirrenden Symptom

En TLS-baséierte Firmenclient authentifizéiert sech normalerweis iwwer eng gewéinlech TLS-Verbindung an handelt duerno en zweete UDP-baséierten Datekanal fir d'Sessioun aus. Wann deen zweete Been funktionéiert, verbessere sech den Duerchgesaz an d'Latenz. Wann en gefiltert gëtt oder net duerch de Wee passt, geléngt alles virun der Massenübertragung an d'Übertragung selwer stoppt, wat genee de Muster uewe ass.

E Container ännert déi Verhandlung net; en ännert de Wee, deen déi baussenzeg Pakete huelen. Den Host iwwersetzt de Container-Floss, also ginn d'UDP-Datagrammer vun engem aneren Ausgangsport aus wéi dem lokale Socket vum Client, a si kommen iwwer en Iwwersetzungs-Andrag zeréck, dee vill méi séier ofleeft wéi e etabléierte TCP-Floss. Wann den Tunnel um Host funktionéiert an am Container feelt, vergläich déi zwee Flëss, ier s d'Applikatioun beschëllegs. Dee Verglach entscheet méi wéi all Image-Neibau.

Entscheet duerch Experiment, net duerch Bauchgefill

Dat bëllegst Experiment schalt de UDP-Datekanal aus a widderhëlt d'Ufro. Benotz de Kommandozeile-Client amplaz vum Desktop-Wrapper, sou datt de Fändel wierklech ugëtt: openconnect vpn.example.net --user=you --interface=tun0 --no-dtls. Wann d'Ufro, déi gehaang huet, elo fäerdeg gëtt, war den DTLS-Been de Problem an de Rescht Rauschen.

Bestäteg d'Resultat a béide Richtungen aus demselwechte Container, eng Massenufro mam Fändel an eng ouni. Eng Verhalensännerung, déi dem Fändel follegt, ass e Beweis; eng Säit, déi schlussendlech lued, net.

Wann de Fändel et reparéiert, entscheet firwat

Dräi Konditiounen erginn deeselwechte Symptom, an se verlaangen ënnerschiddlech Äntwerten. De Wee kann UDP komplett filteren, wat de Fändel zur richteger permanent Äntwert fir dee Netz mécht. De Wee kann UDP erlaben, awer grouss Datagramme fale loossen, wat op MTU an net op Filterung weist. Oder de Wee kann esou verloschtbehaftet sinn, datt den UDP-Been méi schlecht funktionéiert wéi TCP, wat eng Kapazitéitsentscheedung an net eng Erreechbarkeetsentscheedung ass.

Ënnerscheed se, ier s eng Ëmgeeung dokumentéiers. Filterung iwwerlieft all Pakettgréisst, MTU-Problemer erschéngen nëmmen iwwer engem Schwell, an de Verloscht weist sech als Widderreechung a verännerlecher Verzögerung an net als propper Hängerchen. All Test enkelt d'Ursaach an, ouni d'Client-Konfiguratioun z'änneren.

Kontrolléier d'Pakettgréisst, ier s d'Ëmgeeung behäls

Wann d'Gréisst d'Ursaach ass, hëlt d'Tunnelschnittstell Pakete un, déi de Wee net droen kann, an de Problem kënnt op all Transport zeréck, soubal d'Nolast wächst. Vergläich d'Schnittstellen: ip link show tun0 um Host, duerno docker network inspect bridge fir d'MTU ze liesen, déi an den Netzwierkoptiounen agedroe steet. Eng Containerbréck, déi nach op 1500 Byte steet ënner engem Tunnel deen manner dréit, ass de gewéinleche Befund.

Sich no uewen aus enger bekannter gudder Gréisst mat engem Do-not-fragment-Test am Tunnel, da senk d'MTU vum Container-Netz oder klamm d'TCP-MSS um Tunnel. Béid Korrekturen maachen de UDP-Wee dacks erëm benotzbar an huelen de Fändel fort, wat dat besser Resultat ass, wann d'Filterung net d'Ursaach ass.

Entscheet, wat s de bereet s ze tauschen

Mam ausgeschaltete Datekanal dréit den Tunnel seng Nolast an enger TCP-Verbindung. Op engem proppere Wee ass dat just méi lues; op engem verloschtbehafteten verzögert een eenzegen verluerene Segment alles hannendrun an déi baussenzeg Widderreechung konkurréiert mat der bannenzeger. Dee Tausch passt zu interaktiver Entwécklung a klengen API-Aufruffer, a passt schlecht zu Massenübertragungen oder laange Sessiounen iwwer mobil Verbindungen.

Wéi eng Optioun s de och wiels, notéier wéi en Transport den Tunnel schlussendlech benotzt huet a firwat. E Container, deen onbemierkt op engem Fändel hänkt, deen een virun Méint derbäi gesat huet, ass déi nächst Stéierung, an deen deen en debuggt weess net, ob de Fändel eng Ëmgeeung fir d'Filterung war oder en Iwwerrescht vun engem MTU-Experiment.

Ähnlech Artikelen