OpenVPN mssfix: zergatik blokeatzen den bezero bat transferentzia handietan
mssfix-ek tunelean iragarritako TCP segmentuaren tamaina berridazten du. Ez du UDP aldatzen, eta balioak zure bertsioak dioena baino ez du esan nahi.
Eramangarri bakar bat trabatzen da tuneletik igotzean, baina zerbitzari bereko beste gailu guztiek lanean jarraitzen dute. Eredu horrek bide bakarrera eramaten gaitu, ez zerbitzariaren konfiguraziora, eta mssfix galderaren ohiko sarrera da. Aukera honek lagundu dezake, baina berridazten dituen TCP konexioetarako soilik. Bere hedadura ezagutzeak zerbitzari funtzional bat aldatzea eragozten dizu bezero bat salbatzeko.
Zer berridazten du aukerak
mssfix-ek tuneletik igarotzen diren TCP esku-emanetan iragarritako segmentu tamaina maximoa editatzen du, bidaltzaileak kapsulatutako aurrekontuan sartzen diren segmentuak aukeratu ditzan. Esku-emanari eragiten dio, hau da, aldaketaren aurretik irekitako konexio batek negoziatutako balioa atxikitzen du.
Ez ditu UDP datagramak txikitzen, eta ez du tuneleko MTU ezartzen. Bi arazo desberdinek sintoma bera sortzen dute: bidearen muga baztertzen duen TCP bidaltzaile bat, eta edozein tamainatako pakete handiak isilpean botatzen dituen bide bat. mssfix-ek lehena lantzen du eta ez du ezer bigarrenerako.
Bereizketa horrek esperimentu etsigarriak azaltzen ditu. Zulo beltzeko bide batean balio txikiagoa ezartzeak segmentuaren tamaina aldatzen du, baina ez ondorengo jauzia, beraz transferentziak beste puntu batean huts egiten du.
Hedadura tuneleko TCP da
TCP trafika soilik berridazten da. QUIC saio batek, joko batek edo UDP datagrama handiak bidaltzen dituen aplikazio batek bere pakete tamainak atxikiko ditu, eta blokeatzen diren transferentziak horiek badira, konponbidea tuneleko edo bideko MTUari dagokio. Irakurri huts egiten duen transferentziak zein protokolo erabiltzen duen TCP aukera bat bilatu aurretik, geruza okerrak bere konponbidea baitu.
Norabidea ere garrantzitsua da. Bezeroaren ezarpenak bezero horrek tunelean sartzen duen trafikan eragiten du, eta zerbitzariak bezeroengana birbidaltzen dituen fluxuak hartzen ditu. Sarrerako deskargak soilik blokeatzen badira, bezeroaren aldeko balioa ez da istorio osoa.
Zenbakia eta gako-hitza ez dira eramangarriak
OpenVPN 2.6 komunitatearen bertsioak balioaren ondoren hautazko gako-hitz bat onartzen du. mtu-rekin, zenbakiak kanpoko paketearen tamaina deskribatzen du, IP eta UDP goiburuak barne; gabe, argumentuak beste kontabilitate-konbentzio bat jarraitzen du. Beraz, bertsioen artean kopiatutako lerro batek ez du pakete-aurrekontu bera deskribatzen. Egia esan exekutatzen duzun konpilazioarekin datorren eskuliburu-orria begiratu, beste bertsio baterako tutoriala erabili beharrean.
Sintaxia horrela da:
mssfix 1400 mtu
Hartu 1400 leku-markatzat, ez zure biderako gomendiotzat. Atera balioa neurtutako bidetik eta egia esan erabiltzen den kapsulatzetik, eta gogoan izan bertsio zaharretako edo beste inplementazio batzuetako bezeroek gako-hitza baztertu edo berrinterpretatu dezaketela.
Egiaztatu lehenengo bezero bakarrean
Neurtu bidea huts egiten ari den makinatik ezer aldatu aurretik. Bideak fragmentaziorik gabe eraman dezakeen karga erabilgarria da bilatzen ari zaren zenbakia:
ping -M do -s 1472 10.8.0.1
ping -M do -s 1400 10.8.0.1
Lehen probak 1500 byteko paketean sartzen dira 28 byteko goiburuak gehitutakoan. Fragmentazio-errorearekin huts egiten badu eta txikienak arrakasta badu, tamaina erabilgarria bien artean dago nonbait, eta tuneleko kostua gainetik kentzen da.
Ondoren errepikatu blokeatutako transferentzia, konexio berri batean, eta konparatu. Bezero bakarra hobetzen bada besteek ukitu gabe jarraitzen duten bitartean, arazoaren hedadura aurkitu duzu. Bezero guztiak blokeatzen badira, zerbitzariaren aldeko balioa da berrikusi beharrekoa. Bi emaitzetako inork ez du justifikatzen huts egiten zuen bidean inoiz egon ez zen hardwarean aldaketarik egitea.