Kas pasirenka WireGuard MTU: wg-quick, branduolys ar jūs
WireGuard nesidera dėl MTU. Sprendžia sąrankos įrankis, tinklo tvarkyklė arba jūsų konfigūracijos eilutė, o numatytoji reikšmė yra spėjimas apie kelią, o ne matavimas.
WireGuard neturi jokio MTU derėjimosi. Jis šifruoja viską, ką jam perduoda sąsaja, ir siunčia rezultatą, o jei įkapsuliuotas paketas viršija kelią, jis kažkur numetamas arba suskaidomas, kur to nematote. Kažkas turi pasirinkti sąsajos MTU, ir tas kažkas yra įrankis, kuris pakėlė sąsają.
Yra trys kandidatai, ir juos lengva supainioti.
Trys vietos, iš kurių gali ateiti reikšmė
Reikšmę galima nustatyti tiesiogiai sąsajos konfigūracijoje, sąrankos įrankis gali ją apskaičiuoti iš maršruto informacijos arba ją nustatys bet kuri tinklo tvarkyklė, kuriai priklauso sąsaja. Paprastas wg kvietimas nedaro nieko iš to, nes wg tvarko tik raktus ir partnerius. MTU gyvena tinklo sąsajoje, todėl ip link show wg0 yra vieta, kur jį skaitote.
Jei nesate tikri, kuris atvejis galioja, pirmiausia perskaitykite MTU, tada išsiaiškinkite, kas paleido sąsają.
Spręskite pagal tai, kas valdo sąsają
Jei ją paleidžia wg-quick, laimi aiški MTU eilutė, o kitu atveju jis apskaičiuoja reikšmę. Jei ją paleidžia tinklo tvarkyklė, sprendžia tos tvarkyklės profilis. Jei ją paleidžia konteinerių vykdymo aplinka arba tiekėjo klientas, skaitykite jų dokumentaciją, o ne darykite prielaidą apie wg-quick elgseną.
Sprendimas nėra tai, kuris skaičius geriausias abstrakčiai. Tai, kurią komponentą jūs iš tikrųjų galite sukonfigūruoti.
Ką daro numatytasis skaičiavimas
wg-quick suranda maršrutą iki partnerio galinio taško, paima tos išeinančios sąsajos MTU ir atima įkapsuliavimo sąnaudas. Su išorine IPv4 antrašte tai apie 60 baitų, su IPv6 – apie 80. Rezultatas apribojamas, kad 1500 baitų kelias duotų 1420, o ne reikšmę, kuri veikia tik vienoje adresų šeimoje. Tai pagrįsta numatytoji reikšmė, o ne jūsų kelio matavimas.
Jis negali žinoti apie vėlesnį tunelį, mobilų ryšį ar filtruojamą ICMP kelią.
Ribojimas slepia tikrą klausimą. Jei jūsų kelias tikrai yra 9000 baitų nuo galo iki galo, 1420 palieka našumą ant stalo, o jei kelias yra 1400, 1420 jau per didelis. Numatytoji reikšmė yra kompromisas, ir taip ji turi būti traktuojama.
Kai kelias pasikeičia po jumis
Nebukas, keliaujantis nuo Ethernet prie Wi-Fi ir toliau prie telefono prieigos taško, išlaiko sąsajos MTU, su kuriuo pradėjo. Išorinis kelias dabar gali būti mažesnis, ir niekas iš naujo nesidera. Įdėtieji tuneliai dar labiau pablogina, nes kiekvienas sluoksnis atima savo sąnaudas iš to paties biudžeto. Reikšmė, kuri veikė biure, nėra ta, kuri veikia oro uoste.
Nesenas rankos paspaudimas įrodo, kad raktai veikia. Jis nieko neįrodo apie tai, ar telpa dideli paketai.
Tikrinkite po vieną skaičių
Išlaikykite tą pačią programą ir paskirties vietą, pakeiskite vieną reikšmę ir išmatuokite. ping -M do -s 1372 tikrina 1400 baitų paketą su nustatytu DF bitu, ir tai yra norima testo forma. Jei mažos užklausos veikia, o didelės stringa, turite dydžio, o ne maršrutizavimo problemą.
Keiskite tik MTU. Kelių paketo parinkčių derinimas vienu metu nieko nesako, kuri buvo svarbi.
Ir nesitikėkite, kad MTU pakeitimas ištaisys trūkstamą grįžimo maršrutą, persiuntimo taisyklę ar DNS gedimą. Jie taip pat sukelia simptomus be srauto, ir turi savo testus. wg-quick vadove aprašytas automatinis pasirinkimas.