Windows L2TP lataa vain osan sivustoista: tyhjennä DF-bitti pfSensessä
L2TP-asiakasohjelma, joka lataa sisäverkon mutta jumittuu joillakin julkisilla sivustoilla, kärsii MTU-ongelmasta. Tyhjennä DF-bitti tai rajoita MSS ja vahvista sitten kaappauksella.
Kannettava yhdistää, sisäverkko latautuu ja kourallinen julkisia sivustoja jumittuu. Todennus ja reititys selvästi toimivat, joten selitykseksi jää paketin koko. L2TP/IPsec-tunnelissa käytettävissä oleva MTU on pienempi kuin mitä sovitin yhä ilmoittaa, ja asiakasohjelma lähettää edelleen täysikokoisia paketteja »älä pirsto» -bitillä. pfSense-yhdyskäytävälle voidaan antaa käsky tyhjentää tämä bitti, ja se on nopein tapa vahvistaa diagnoosi ennen kunnollista korjausta.
Aloita sivuista, jotka epäonnistuvat
Kirjaa ylös, mitkä kohteet epäonnistuvat ja mitkä onnistuvat, ennen kuin kosket mihinkään asetukseen. Tunnelirajan alle jäävät kättelyt sujuvat normaalisti, kun taas täysikokoista segmenttiä tarvitsevat siirrot pysähtyvät puolimatkaan. Tämä jako on kokoon liittyvän ongelman, ei suodattimen, tunnusmerkki, koska estetty kohde epäonnistuu yhteyden muodostuksessa eikä sivun keskellä. Molemmat havainnot eivät maksa mitään ja kaventavat hakua heti.
Testaa pingillä, joka asettaa bitin ja hallitsee hyötykuorman kokoa. Suurin läpi pääsevä hyötykuorma kertoo todellisen reitin MTU:n, ja sovittimen ilmoitettu arvo näyttää, kuinka kaukana ne ovat toisistaan.
Kirjoita molemmat luvut muistiin. Korjaus riippuu siitä, kumpi on väärä, ja juuri parin kaappaus myöhemmin vahvistaa.
Mitä DF-bitti tekee ulospäin
Syynä lukujen eroon on kapselointi. IPsec lisää ESP:n, L2TP lisää toisen otsikon, ja siksi tunneli kuljettaa vähemmän hyötykuormaa kuin fyysinen linkki. Windows ilmoittaa sovittimella edelleen 1500 tavua ja asettaa »älä pirsto» lähettämäänsä. Kun tällainen paketti ei mahdu, yhdyskäytävän oikea vastaus on ICMP-viesti, joka pyytää lähettäjää kutistumaan. Siksi tunneli, joka päästää pienet pingit läpi, voi silti epäonnistua tiedoston latauksessa.
Tämä viesti ei usein saavu koskaan. Jokin hyppy voi suodattaa ICMP:n, tai mikään ei tuota sitä, ja lähettäjä toistaa samaa kokoa, kunnes siirto luovuttaa.
Hiljaisuus on täällä tavallinen esitystapa, ja siksi oire luetaan valikoivaksi estoksi. Asiakasohjelman lokiin ei kirjaudu puuttuvaa ICMP-viestiä.
pfSensen asetus ja mitä se ei tee
Asetus on sivulla Järjestelmä, Lisäasetukset, Palomuuri ja NAT nimellä »Tyhjennä virheelliset DF-bitit pakettien pudottamisen sijaan». Sen sijaan että hylkäisi liian suuren lipun kantavan paketin, suodatin poistaa lipun ja antaa paketin jakautua alempana. Paketti katsotaan virheelliseksi, kun se ei voi ylittää lähtevää liitäntää yhtenä kappaleena.
Asetus palauttaa yhteyden koskematta asiakasohjelmaan, ja siksi se on suosittu. Se on myös kiertotie: pirstominen maksaa suoritintehoa ja tekee jokaisesta kadonneesta palasta kalliimman.
Se koskee vain välitettyä liikennettä, ei liikennettä, jonka palomuuri itse luo. Samalla sivulla on »Poista palomuurin siivous käytöstä», joka kytkee normalisoinnin kokonaan pois, ja se on paljon laajempi muutos kuin tämä ongelma tarvitsee.
Kapeampi korjaus, joka pitää TCP:n pirstomattomana
Lähes kaikki jumittuneet vuot ovat TCP:tä, ja TCP voi neuvotella pienemmän segmentin sen sijaan että turvautuisi pirstomiseen. MSS:n rajoittaminen tunneliliitännällä kirjoittaa ilmoitetun arvon uudelleen kättelyn aikana, joten kumpikin puoli lähettää sen, mikä todella mahtuu. Reitti käyttäytyy silloin ennustettavasti eikä yhtään pakettia tarvitse jakaa.
Tämä jättää UDP:n löydettäväksi tai DF-asetukselle. Kun epäonnistuvat sivustot ovat tavallisia verkkosivuja, rajoitus on se muutos, jota kannattaa suosia.
Asiakasohjelma voi ilmoittaa oman sovittimen MTU:nsa komennolla netsh interface ipv4 show subinterfaces. Vertaa lukua siihen, mitä palvelin uskoo neuvotelluksi, koska ne eivät aina ole samat. Juuri tätä arvoa käyttöjärjestelmä tosiasiassa käyttää, mitä neuvottelu sitten ilmoittikin.
Vahvista kaappauksella ja nollaa sitten tila
Kaappaa molemmilla puolilla ennen päätöstä: yksi jälki siitä, missä tunneli kulkee, ja toinen siitä, missä WAN-liitäntä kulkee. Täysikokoisina lähtevät paketit ilman palaavaa ICMP:tä osoittavat rajoituksen oikeaksi kerrokseksi. Vastaukset, jotka saapuvat ja kuolevat paluumatkalla, osoittavat sen sijaan tunnelin MTU:ta.
Tyhjennä tilataulu ennen uutta yritystä, koska olemassa olevat vuot pitävät vanhat segmenttikokonsa. Lataa sitten sivu, joka epäonnistui, ja lue tilanäkymää kaksisuuntaiselle liikenteelle yksipuolisten laskurien sijaan. Jos se yhä jumittuu, kaappaa uudelleen sen sijaan että kokeilet toista valintaruutua.