Адат WireGuard туура эмес иштей баштаганда эле MTUну төмөндөтүү, жана бул адат башка кемчиликти жашырат. Өткөрбөгөн дарбаза жана чоң пакеттерди ташыбаган жол айырмалоого боло турган үлгүлөрдү жаратат: бири эки багытта тең жана бардык өлчөмдө ийгиликсиз болот, экинчиси кичине суроолордон аман калып, чоңдорунда өлөт. Кандайдыр бир санды өзгөртүүдөн мурун кайсы форма экенин аныктаңыз. Сыноо арзан жана мүмкүн болгон себептердин жарымын жок кылат.

Эки бузулуу, эки башка форма

Берүү маселеси серверден кийин дароо көрүнөт. Кол алышуу ийгиликтүү болот, туннелдин дареги жооп берет, ал эми дарбазанын артындагы эч нерсеге кичине суроо менен да жетүүгө болбойт. Пакет серверге жетти жана өткөрүлгөн жок, же жооптун кайтуу жолу болгон эмес.

Өлчөм маселеси чегинен жогору гана көрүнөт. DNS, TCP кол алышуусу жана кичине API чакыруусу иштейт, ал эми файл жүктөө же чоң жооп илинип калат. Батышкан пакеттер башынан аягына чейин өттү, ал эми батпагандар пайдалуу отчетсуз бир жерде ташталды.

Бул сүрөттөмөлөр ар башка адамдарды жана ар башка конфигурация файлдарын көрсөтөт, ошондуктан божомолдон форманы өлчөө баалуураак. Дарбазага бир ping аларды ажырата албайт.

Бир нерсени кичирейтүүдөн мурун берүүнү жокко чыгарыңыз

Дарбазанын өзүн эмес, анын арындагы багытты сынаңыз. Сервердин туннел дарегине ping интерфейстин күйүп турганын жана туннелди бүтүргөн машинага жеткенин гана далилдейт. Кененирээк тармактын трафиги ошол машинада IP берүүнүн күйгүзүлүшүнө жана өткөрүлгөн агымга уруксат берген firewallга көз каранды. Экөө тең туура болушу керек, ал эми бири жалган болсо ошол эле үнсүздүк пайда болот.

Кайтаруу маршруттоо да ошончолук маанилүү. Эгер багыттагы тармак кардардын туннел дарегине кантип жетүүнү билбесе, суроо келет жана жооп жоголот, ал эми кардар ташталган берүүгө окшош убакыт бүтүүсүн билдирет.

Дизайн даректүү которууну колдонгон жерде которуу эрежеси ошол кайтуу жолунун бөлүгү болуп саналат. MTU маселесин кууганда аны жоюу иштеп турган дизайнды бузулганга айландырат, ошондуктан аларды оңдоодон мурун учурдагы эрежелерди окуңуз.

Үзүлүү кандан башталарын өлчөңүз

Алгач берүү абалын жана чыпкалоо эрежелерин окуңуз. Бул тек окууга арналган текшерүүлөр жана арзан суроого жооп берет:

sysctl net.ipv4.ip_forward
sudo iptables -S FORWARD
ip route get 10.30.0.9

Андан кийин кардардан дарбазанын арындагы хостко карай don’t-fragment бити менен өлчөмдөрдү сынаңыз:

ping -M do -s 1200 10.30.0.9
ping -M do -s 1400 10.30.0.9

Эгер биринчи текшерүү иштесе, экинчиси фрагментация катасы менен ийгиликсиз болсо, жол өзүнүн колдонууга жарактуу өлчөмүн айтат. Эгер экөө тең иштебесе, сиз берүүгө же маршруттоого карап жатасыз, ал эми MTU өзгөртүлүүчү өзгөрмө эмес.

ObservationPoints towardWhere to look
Nothing beyond the gateway worksForwarding or return routeForwarding flag, filter rules, routing table
Small works, large stallsPacket size on the pathTunnel MTU and the link underneath
Only names failDNS resolutionThe resolver configured for the tunnel
Works sometimesMultiple paths or state expiryFlow selection and NAT state

Далилдеген катмарды оңдоңуз

Берүү кемчилик болсо, оңдоо — дизайн уруксат бергендей тар түрдө айтылган берүү эрежеси же маршрут. Өлчөм кемчилик болсо, оңдоо — ушул конкреттүү жолдогу инкапсуляцияны эске алган MTU, ал ага муктаж интерфейске колдонулат, флоттогу ар бир адаптерге эмес.

Кандай болбосун, кийин ошол тапшырманы ошол багытка кайталаңыз. Эгер баштапкы чоң өткөрүү эми бүтсө, өзгөртүү ийгиликсиз болгон катмарды чечти. Эгер кичине текшерүү гана жакшырса, сиз симптомду дарыладыңыз жана чыныгы чек дагы эле ордунда.

Өзгөртүүдөн мурун кайсы форманы байкаганыңызды жазыңыз. Оңдоонун жанына жазылган ошол бир сап — кийинки адамдын эч качан маселе болбогон MTUну төмөндөтүүсүнө жол бербейт.

Тектеш макалалар