Ƙananan ping suna ratsa tunnel duk yini, SSH banner yana isowa, sannan zaman yana daskarewa a lokacin da watsa fayil ya fara. Wannan tsarin yana nuni ga kasafin byte da aka ƙidaya a matakin da bai dace ba, inda aka auna tunnel na waje don nauyinsa kuma babu wanda ya cire na ciki. Fakitin IPIP da aka saka shi ne kawai wani fakitin IP a wajen WireGuard, kuma shi ya sa yake cinye bytes da ba ka taɓa tanade su ba. Gyaran lissafi ne, kuma yana shiga cikin umarni uku da tebur ɗaya.

Alamar da ke tona shi

Matsalar rarrabuwa tana sanar da kanta ta girman, ba ta adireshi ba. Abokiyar sadarwarka tana amsa ping na byte 56 na awa ɗaya sannan ta yi shiru a byte 1400 yayin da tunnel ɗin yake a tsaye kuma babu hanyar da ta canza. Hannun hannu ya shiga, tagar TCP cikakkiya ta farko ba ta shiga ba, kuma watsawa tana tsayawa seconds bayan ta yi kama da lafiya.

Auna rufin kafin ka gyara komai, domin rufin da ba a auna shi ne wanda za ka bi sau biyu. Aika bincike ɗaya ƙasa da girman da ake zargi tare da saita bit do-not-fragment, ping -M do -s 1000 10.9.0.2, sannan ka maimaita shi a girman da ka riga ka san ya yi girma. Lokacin da juyawar ke bin girman kaya yayin da makoma ba ta canzawa, hanyoyi suna yin aikinsu kuma wani kai ya ɓace daga kasafin.

Ƙidaya kowane kai sau ɗaya, a matakin da ya dace

Fara daga mafi ƙaramin MTU a kan hanya maimakon daga fuskar tunnel, domin bango yana sama da dukan ƙarshen biyu. WireGuard yana kashe byte 60 a kan jigilar waje ta IPv4: 20 don IP, 8 don UDP da 32 don kan sa, da byte 80 lokacin da wannan jigilar ta zama IPv6. wg0 na byte 1420 yana riƙe byte 20 na yanci ƙasa da 1440 da hanyar byte 1500 za ta iya isar da gaske, shi ya sa adadin da aka kwafa daga wiki har yanzu ya dace a nan. Zana dukan tari a kan zane, domin wanda zai canza MTU na gaba in ba haka ba zai zaɓi sabon adadi mai zagaye kuma ya gaji kuskurenka.

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

Layi na biyar shi ne inda kasafin ke ɓarna, domin byte 1400 da fuskar da aka saka ke ɗaukarsa sun riga sun haɗa da nasu byte 40 na kan fakitin asali. Byte 1360 ne kawai daga cikinsu ke isa ga tsarin da ke karanta fayil ɗin. Ka ɗauki 1400 a matsayin kayan aiki na aikace-aikace, kamar yadda kowane zane marar wannan ginshiƙi ke gayyata, kuma na'urar ciki ta ƙare da byte 40 fiye da karimci a gaban bangon da bai motsa ba.

Saita MTU biyu daban

Mai ɗauka da na'urar da aka saka abubuwa ne daban, don haka kowanne yana buƙatar nasa ƙimar. Aiwatar da su a wannan tsari, domin na'urar da aka saka ba ta gaji komai daga mai ɗauka:

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

Ƙa'idar da ta cancanci tunawa: MTU na ciki = MTU na waje - 20 lokacin da fakitin da tunnel IPIP ke ɗaukarsa IPv4 ne, kuma - 40 da zarar kowane gefen fakitin ciki ya zama IPv6, domin kan da aka saka yana girma daga byte 20 zuwa 40. Babu wani abu da ya shiga wannan ragi. An riga an kashe nauyin WireGuard lokacin da ka zaɓi 1420, kuma cajin shi sau biyu yana samar da tunnel da ke aiki daidai kuma ya kasance a hankali muddin babu wanda ya auna shi. Wurin da dukan na'urori biyu ke ɗaukar 1400 mai zagaye shi ne sawun yatsa na wannan kuskure.

IPv6 a kowane gefen fakitin da aka saka yana ɓata kowane adadi na sama, don haka sake ƙidaya maimakon kwafin lamba daga wani shafi makamancin haka. Kan da aka cire byte 40 ne kowanne da zarar IPv6 ya bayyana a hanyar waje ko a datagram na asali, kuma adadin kaya yana faɗuwa daidai haka.

Ƙa'idar firewall da wataƙila ba ka bukata

Tsakanin abokan WireGuard biyu abin da ke kan igiya shi ne UDP kawai, don haka ƙa'idar shigowa don protocol 4, lambar da RFC 2003 ya ba da ita ga lulluɓe IPv4-cikin-IPv4, ba ta ƙirƙirar hanyar da aka saka kuma ba ta kiyaye ta da rai. Kan IPIP yana rayuwa cikin kayan da aka ɓoye, inda babu firewall na gefe da ke ganinsa. Buɗe protocol 4 duk da haka ba ya sayan komai sai ƙarin hanyar da aka yarda zuwa ga mai masaukin.

Manufar da ke ambaton tushe da makoman fakitin asali tana bayan buɗewa, a kan fuskar tunnel da cikin teburin hanyoyi. Sanya shi a can kuma ƙa'idar gefe na iya zama a rufe.

Abin da WireGuard ke tabbatarwa a zahiri

AllowedIPs yana yin hukunci a kan tushen fakitin da WireGuard ke ɗaukarsa, kuma abin da yake ɗauka shi ne fakitin da aka lulluɓe da IPIP. Ana karɓar tushen IPIP da aka yarda ko da kan ciki ya ambaci mai masaukin da ba za ka so a yi masa hanya ba. Don haka tushen asali ba shine abin da abokin ya bincika domin ka ba, kuma wannan biyun adireshi na ciki yana buƙatar nasa aiwatarwa bayan buɗewa.

Rufin yana ba da tsarin hanyoyi, ba wani matakin sirri na biyu ba. Kira IPIP ƙarin kariya cikin WireGuard yana bayyana wani zane daban.

Tabbatar da tsani, ba ping ɗaya ba

Gwada girma da ke kewaye da iyakar da ka ƙidaya, sannan tabbatar da abin da kernel ke tunani game da duka na'urori biyu. Da byte 1360 na kaya da byte 40 na kai suka yi 1400, amsa ta farko da ke ƙasa ta shiga kuma ta biyu ta zauna byte ɗaya bayan rufin:

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

Tsallakewa mai tsabta ƙasa da rufin da gazawa a girman farko da ke sama da shi yana nufin lissafin yana tsayawa daga ƙarshe zuwa ƙarshe. Sannan sake kunna watsar da ta tsaya da farko, domin bincike na wucin gadi yana tabbatar da kasafin kuma ba ya faɗin komai game da girman rubutun mai aikawa. Idan hanyar da aka saka har yanzu tana karyewa a girman da ka tabbatar ya shiga, duba buɗewar ƙarshen nesa da hanyoyinsa kafin ka yanke ƙarin byte goma daga MTU.

Labarai masu alaƙa