Lítil ping fara um göngin allan daginn, SSH-borðinn berst og þá frystist lotan um leið og skráaflutningur hefst. Þetta mynstur bendir á bætafjárhagsáætlun sem talin var á röngu lagi, þar sem ytri göngin voru mæld fyrir eigin yfirhöfuð og enginn dró innri göngin frá. Innskeytt IPIP-pakki er WireGuard bara enn eitt IP-pakkinn, og þess vegna eyðir hann bætum sem þú tókst aldrei frá. Lagfæringin er stærðfræði og kemst fyrir í þremur skipunum og einni töflu.

Einkennið sem gefur það upp

Sundrunarvandamál tilkynna sig með stærð, aldrei með vistföngum. Jafningi þinn svarar 56 bæta ping í klukkustund og verður þá þögull við 1400 bæti á meðan göngin haldast uppi og engin leið breyttist. Handabandið kemst fyrir, fyrsti fulli TCP-glugginn ekki, og flutningurinn stöðvast sekúndum eftir að hann virtist heilbrigður.

Mældu þakið áður en þú breytir einhverju, því ómælt þak er það sem þú eltir tvisvar. Sendu eina rannsókn undir grunaðri stærð með do-not-fragment bitanum stilltum, ping -M do -s 1000 10.9.0.2, og endurtaktu hana svo á stærð sem þú veist nú þegar er of stór. Þegar viðsnúningurinn fylgir stærð hleðslunnar á meðan áfangastaðurinn helst óbreyttur, er leiðsögnin að sinna sínu og haus vantar í fjárhagsáætlunina.

Teldu hvern haus einu sinni, á réttu lagi

Byrjaðu á minnsta MTU á leiðinni frekar en á tengi ganganna, því veggurinn er ofan við báða enda. WireGuard eyðir 60 bætum í ytri IPv4-flutning: 20 fyrir IP, 8 fyrir UDP og 32 fyrir eigin haus, og 80 bætum þegar sá flutningur er IPv6. wg0 að stærð 1420 bæti heldur 20 bætum í slaka undir 1440 sem 1500 bæta leið getur raunverulega skilað, og þess vegna passar talan sem afritað var af wiki enn hér. Teiknaðu allan staflann á skýringarmyndina, því sá sem næst breytir MTU mun annars velja nýja kringlótta tölu og erfa villuna þína.

LayerBytesRemaining
Path MTU on the wired linknone yet1500
WireGuard outer: IP, UDP, WG header601440
Slack kept for safety201420 (wg0)
IPIP header inside the tunnel201400 (ipip0)
Original IPv4 and TCP headers401360 payload

Fimmta röðin er þar sem fjárhagsáætlanir fara úrskeiðis, því 1400 bætin sem innskeytt tengi ber innihalda þegar 40 bæti af hausum upprunalega pakkans. Aðeins 1360 af þeim bætum ná til ferlisins sem les skrána. Meðhöndlaðu 1400 sem hleðslu forritsins, eins og hver skýringarmynd án þess dálks býður þér, og innra tækið endar 40 bætum of örlát við vegg sem hefur ekki hreyfst.

Stilltu MTU-in tvö sitt í hvoru lagi

Berinn og innskeytta tækið eru aðskildir hlutir, svo hvort þarf sitt gildið. Beittu þeim í þessari röð, því innskeytta tækið erfir ekkert frá beranum:

ip link set wg0 mtu 1420
ip tunnel add ipip0 mode ipip remote 203.0.113.9 local 198.51.100.4
ip link set ipip0 mtu 1400

Reglan sem er þess virði að muna: innra MTU = ytra MTU - 20 þegar pakkinn sem IPIP-göngin bera er IPv4, og - 40 um leið og hvor sem er hlið innra pakkans er IPv6, því innskeytti hausinn stækkar úr 20 bætum í 40. Ekkert annað á heima í þeirri frádrætti. Yfirhöfuð WireGuard var þegar eytt þegar þú valdir 1420, og að rukka það tvisvar framleiðir göng sem virka fullkomlega og verða áfram hæg svo lengi sem enginn mælir þau. Uppsetning þar sem bæði tækin bera kringlótt 1400 er fingrafar nákvæmlega þeirrar villu.

IPv6 á hvorri hlið innskeytta pakkans ógildir hverja tölu hér að ofan, svo endurreiknaðu í stað þess að afrita tölu af svipaðri síðu. Frádrættu hausarnir eru 40 bæti hver um leið og IPv6 birtist á ytri leiðinni eða í upprunalega gagnagramminu, og hleðslutalan lækkar nákvæmlega um það.

Eldveggjareglan sem þú þarft líklega ekki

Milli tveggja WireGuard-jafningja er það eina á vírnum UDP, svo inngönguregla fyrir siðareglu 4, töluna sem RFC 2003 úthlutar IPv4-í-IPv4-umbúðum, hvorki býr til innskeytu leiðina né heldur henni lifandi. IPIP-hausinn lifir inni í dulkóðuðu hleðslunni, þar sem enginn jaðareldveggur sér hann. Að opna siðareglu 4 eingöngu kaupir ekkert umfram eina leyfða leið til inn í hýsilinn.

Stefna sem nefnir uppruna og áfangastaði upprunalega pakkans á heima eftir afumbúðun, á tengjum ganganna og í leiðavalstöflunni. Settu hana þar og jaðarreglan getur verið lokuð.

Hvað WireGuard staðfestir í raun

AllowedIPs dæmir uppruna pakkans sem WireGuard ber, og það sem það ber er IPIP-umbúðaði pakkinn. Leyfður IPIP-uppruni er samþykktur jafnvel þótt hausinn inni nefni hýsil sem þú myndir frekar ekki leiðsenda. Upprunalegi uppruninn er því ekki það sem jafninginn athugaði fyrir þig, og það innra vistfanga par þarf eigin framfylgd eftir afumbúðun.

Umbúðirnar veita leiðsagnarbyggingu, ekki annað lag dulritunar. Að kalla IPIP aukna vernd inni í WireGuard lýsir annarri hönnun.

Staðfestu með stiga, ekki einu pingi

Prófaðu stærðir sem umlykja mörkin sem þú reiknaðir, og staðfestu svo hvað kjarninn telur um bæði tækin. Þegar 1360 bæti af hleðslu plús 40 bæti af hausum gera 1400, kemst fyrsta bergmálið hér að neðan fyrir og annað situr einu bæti handan þaksins:

ping -M do -s 1372 10.9.0.2
ping -M do -s 1373 10.9.0.2
wg show wg0
ip -d link show ipip0

Hrein leið undir þakinu og bilun á fyrstu stærð yfir því þýða að stærðfræðin heldur frá enda til enda. Keyrðu þá flutninginn sem stöðvaðist upphaflega aftur, því tilbúin rannsókn sannar fjárhagsáætlunina og segir ekkert um skrifstærðir sendandans sjálfs. Ef innskeytta leiðin brotnar enn á stærð sem þú sannaðir að komst fyrir, skoðaðu afumbúðun og leiðir fjarlæga endans áður en þú skerð tíu bæti til viðbótar af MTU-inu.

Tengdir greinar