Linux mijozidagi uchta sozlama ham «paketlarni kichraytir» kabi eshitiladi va ular turli qatlamlarda ishlaydi. Interfeys MTU qurilma yuboradigan har bir paketni cheklaydi. Marshrut MTU shu marshrutdan foydalanadigan paketlarni cheklaydi, bu esa bitta VPN manzili uchun ko'pincha sizga chindan kerak bo'lgan narsa. TCP MSS chegarasi ikki tomon kelishadigan narsani o'zgartiradi va UDP uchun hech narsa qilmaydi.

Bitta tugmaga o'xshab ko'rinadigan uchta nazorat

Tanlashdan oldin ularni yonma-yon qo'ying, chunki noto'g'ri qatorni tanlash ishlamaydigan maslahatlarning ko'pini tushuntiradi:

ControlScopeWhat it cannot fix
Interface MTUEvery packet the device sendsNothing, but it over-constrains unrelated traffic
Route MTUPackets using that routeA send that the lookup never routes there
MSS clampTCP handshake on that pathUDP payload sizes and ICMP

Butun mashina uchun Ethernet MTU ni pasaytirish bu tuzatishning qo'pol varianti. U ishlaydi va xostdagi har bir boshqa dasturni ham jazolaydi, yo'llari joyida bo'lganlarini ham. Har bir marshrut uchun qiymat o'sha niyatni yon xarajatlarsiz ifodalaydi.

Taqqoslash faqat xost o'zi yaratadigan trafik uchun amal qiladi. Boshqa mijoz uchun paketni uzatish uning o'z yo'lini va tunnelning tashqi byudjetini o'z ichiga oladi, bu xostdagi marshrut metrikasi esa bu chegaradan oshmaydi.

Byudjetni qidiruvda g'alaba qozonadigan marshrutga bog'lang

Namunali IPv4 marshrut yozuvi shunday ko'rinadi:

ip -4 route get 10.60.0.20
ip -4 route add 10.60.0.0/16 dev tun-office src 10.90.0.2 mtu 1380

Yozuvni yopishtiriladigan qiymat sifatida emas, niyat tavsifi sifatida o'qing. Prefiks, qurilma va afzal manba haqiqiy konfiguratsiyaga mos kelishi kerak, va raqam blog postidan emas, inkapsulyatsiya qilingan yo'l haqidagi dalillardan kelishi kerak. Marshrut MTU ichki IP paketni cheklaydi, bu esa 1380 baytli TCP yuki yoki 1380 baytli shifrlangan tashqi paket bilan bir xil emas.

Biror narsa qo'shishdan oldin qidiruv aslida qayerda hal bo'lishini ko'ring. Siyosat qoidalari bo'lgan xost berilgan manzilni main dan boshqa jadval orqali yo'naltirishi mumkin, va faqat main jadvalda mavjud metrika bu so'rov uchun ko'rinmaydi. Taqqoslang ip -4 route show table all va ip route get javobini, qoidalar foydalanganda belgi yoki nomlar bo'shlig'i konteksti bilan. Agar ikkisi mos kelmasa, metrika javob bergan jadvalga kerak, ko'rinishi tartibliroq bo'lganiga emas.

mtu bu mtu lock emas

Odatiy holatda yadro yo'l MTU ni ICMP qayta aloqasidan yangilashi mumkin, yo'l MTU aniqlash shu uchun. Qo'shish lock buni to'xtatadi. Bu boshqa qaror, xuddi shu raqamni saqlashning kuchliroq usuli emas, va IPv4 uchun «bo'laklamang» bitining hujjatlashtirilgan ishlovini o'zgartiradi.

Yo'lni o'lchagan bo'lsangiz va nima kelsa ham qiymat joyida qolishini istasangiz, qulflash o'rinli. Tarmoq qonuniy o'lcham qayta aloqasini yuborganda bu yomon odatiy holat, chunki yadro endi moslasha olmaydi va nosozlik boshqa alomatga o'tadi.

Agar ICMP yo'lda biror joyda filtrlansa, hech qanday marshrut sozlamasi buni tuzatmaydi. Tuzatish filtrga tegishli, kichikroq MTU esa keyingi yo'l o'zgarishigacha haqiqiy nuqsonni yashiradigan vaqtinchalik chora.

Tunnel dasturiy ta'minoti o'zining o'lcham tugmalarini qo'shadi

OpenVPN- mssfix o'zining hujjatlashtirilgan UDP tunnel holati uchun TCP segment o'lchamini sozlaydi. U TCP suhbatida ishlaydi, shuning uchun bu operatsion tizim marshrut MTU ning boshqa yozilishi emas va kelishuvni e'tiborsiz qoldiradigan UDP xizmatiga yordam bera olmaydi.

Bitta o'zgarish oynasida marshrut MTU, interfeys MTU o'zgarishi va MSS chegarasini ustma-ust qo'ymang. Muammo yo'qolsa qaysi biri muhim bo'lganini bilmaysiz, qolganlari esa yillar davomida trafikni cheklaydi, sababini hech kim eslamaydi.

Uni qaytarish mumkin qilib yarating, keyin isbotlang

Marshrutning haqiqiy egasi o'zgarish qayta ulangandan keyin qolishini hal qiladi. Marshrutni dinamik o'rnatadigan VPN mijozi odatda uni sizning metrikangizsiz qayta quradi, va qo'lda kiritilgan ip route add keyin bir kundan keyin muvaffaqiyatsiz bo'lgan tuzatishga o'xshaydi. Qiymatni menejer konfiguratsiyasiga qo'ying, vaqtinchalik tajriba kerak bo'lsa avval asl marshrutni yozib oling.

To'xtab qolgan amalni bajaradigan yangi ulanish bilan sinang, so'ng ko'zda tutilgan xususiy marshrut hali ham g'alaba qozonishini va aloqasiz manzillar o'zgarmaganini tasdiqlang. Tunnelni qayta ulang va marshrutni yana o'qing, chunki qayta ulanishda yo'qoladigan qiymat tuzatish emas.

Agar dalillar o'zgarishni qo'llab-quvvatlamasa, bekor qilishni uning menejeri orqali olib tashlang va marshrutni o'chirish o'rniga asl marshrut atributlarini tiklang. So'ng nima va qaysi yo'lda o'lchaganingizni yozib qo'ying, keyingi odam haqiqiy yaxshilanishni ishga tushirilgan tajribadan ajrata olishi uchun.

O'xshash maqolalar