MTU au MSS? Mabadiliko ya VPN hurekebisha nini hasa
MTU huweka kikomo cha kile kiungo hubeba; MSS huweka kikomo cha mzigo wa TCP ndani yake. Weka kikomo kwa ile sahihi na ujue itifaki zipi hakuna hata moja inayozishughulikia.
Ping hufaulu, uhamishaji mkubwa hukwama, na handaki hujitangaza kuwa na afya. Mtu hupunguza MTU ya kiolesura, mwingine huzuia MSS, na mara kwa mara tatizo huondoka kwa sababu ambazo hakuna anayezirekodi. Namba hizo mbili hueleza vitu tofauti, kwa hiyo kubadilisha ile isiyo sahihi hutoa suluhisho linaloonekana kama bahati. Hii ni taratibu: tambua tabaka, tumia marekebisho yanayofaa, kisha jaribu kwenye muunganisho mpya.
Namba mbili, vitu viwili
MTU ni ya kiungo au kiolesura: ni pakiti kubwa zaidi inayoweza kuwasilishwa bila kugawanywa. MSS ni ya TCP: ni kiwango kikubwa zaidi cha mzigo wa TCP ambacho sehemu inaweza kubeba, na haijumuishi kichwa cha TCP wala cha IP. Kwenye kiungo cha kawaida cha Ethernet chenye IPv4, MTU ya bai 1500 hutoa MSS inayojulikana ya bai 1460. Namba hizi hueleza tabaka tofauti na hubadilishwa kwa mifumo tofauti. Ni rahisi kuzichanganya kwa sababu zote hupimwa kwa bai na zote ziko karibu na 1500.
Moja huja kama mpangilio wa kiolesura. Nyingine huja kama chaguo ndani ya sehemu ya SYN, ikijadiliwa kati ya ncha ambazo hazioni kiolesura chako kamwe.
Uzito wa ziada wa nje huangukia wapi
VPN huweka pakiti ya ndani ndani ya nyingine, na pakiti ya nje lazima itoshe kwenye njia halisi. Vichwa vya ufungashaji, kichwa cha nje cha IP, kichwa cha usafirishaji na lebo yoyote ya uthibitishaji hutumia bai ambazo pakiti ya ndani haiwezi kutumia. Acha kiolesura cha handaki kwenye 1500 na pakiti ya nje huzidi mara kwa mara kile njia inaweza kubeba. Biti ya 'usigawanye' ikiwekwa, kipanga njia huiacha na inapaswa kurudisha hitilafu ya ICMP; hitilafu hiyo ikichujwa, mtumaji hajui kamwe.
Ndiyo sababu kushindwa kunaonekana kuchagua. Maombi madogo hukamilika na kila kitu kinachojaza sehemu hukwama, kwa sababu ni pakiti kubwa tu zinazotupwa. Handaki inayopitisha ping si handaki inayobeba data.
Uzuiaji wa MSS, na mahali unatumika
Uzuiaji wa MSS huandika upya thamani katika sehemu ya SYN inapovuka hatua iliyochaguliwa, na kuwafanya ncha zote mbili kuchagua mzigo mdogo bila kujua kwa nini. Kwenye Linux ni lengo la jedwali la mangle linalotumika kwa kanuni dhahiri, na lazima igonge pakiti za SYN katika mwelekeo unaokusudia. Izuie kwa kiolesura cha handaki na masafa ya anwani, kwa sababu kanuni pana hubadilisha tabia ya trafiki isiyoingia kamwe kwenye handaki.
Athari ni kwa TCP tu. Programu ya UDP, kikao cha QUIC na itifaki yoyote inayojenga datagram zake haiathiriwi.
Chunguza kwa njia isiyobadilika
Shikilia kigezo kimoja kwa wakati mmoja. Jaribu kwa pakiti unayochagua ukubwa wake mwenyewe, na weka bendera ya 'usigawanye' ili kerneli iripoti matokeo badala ya kuyaficha.
Rekodi kushindwa kunaanzia wapi: ndani ya handaki, kwenye kiolesura cha handaki, au kwenye njia halisi baada ya ufungashaji. Kisha badilisha namba moja na sio nyingine, rudia jaribio lilelile. Muunganisho uliopo huhifadhi MSS iliyojadiliwa, kwa hiyo mabadiliko ya sera yanaonekana tu kwenye muunganisho mpya, na ndiyo sababu ukurasa uliohifadhiwa huhakikisha chochote kwa upande wowote. Ikiwa upakiaji mmoja mkubwa utaanza kufanya kazi, umejifunza kuhusu njia hiyo na sio kuhusu kila itifaki juu yake.
Kila mabadiliko hayarekebishi nini
Kupunguza MTU ya kiolesura hakubadilishi MSS ya kikao kilichoanzishwa tayari. Uzuiaji wa MSS hausaidii mtiririko wa UDP, na haurekebishi njia ambayo hitilafu za ICMP huchujwa upande mmoja tu. Kila mabadiliko hurekebisha aina moja ya matatizo na kuacha mengine kama yalivyokuwa.
Andika marekebisho uliyotumia, wapi, na jaribio gani lilionyesha tofauti, vinginevyo mhandisi anayefuata atatumia yote mawili na atapoteza uwezo wa kusema lipi lilikuwa muhimu. Ikiwa kizuizi ni halisi na cha kudumu, chagua MTU ya handaki inayolionyesha badala ya uzuiaji unaolificha. Ikiwa lazima uzuie, acha kanuni ikiwa na mipaka na maoni, kwa sababu kanuni ya mangle isiyoelezwa huwa ya kudumu kwa chaguo-msingi.