Bo'lingan tunnelning ikkita profili, ikkita xususiy prefiks va ikkalasi ham da'vo qilayotgan bitta xost. Alomat kamdan-kam toza nosozlik bo'ladi: xizmat dushanba kuni ishlaydi, ikkinchi mijoz qayta ulangandan keyin vaqt tugaydi va qayta yuklashdan keyin yana ishlaydi. Mijozlarni ulagan tartibingiz natijani hal qilmaydi, mijoz interfeysidagi satrlar tartibi ham hal qilmaydi. Bu tekshiruvlarni tartib bilan bajaring va to'g'ri kelmaydigan birinchi tekshiruvda to'xtang, chunki keyingilari faqat oldingilari to'g'ri bo'lganda ma'noga ega.

1. Manzilni va manbani yozib oling

Muvaffaqiyatsiz so'rov boradigan aniq manzildan boshlang, xost nomidan emas va dastur nomidan emas. Nomni bir marta hal qiling, har bir javobni qayd eting va muvaffaqiyatsiz oqim haqiqatan ishlatadiganini tanlang. Keyin o'sha oqimning mahalliy manzilini qayd eting, chunki manba manzili qaysi siyosat qoidasi mos kelishini va shu bilan qaysi jadval ko'rilishini o'zgartirishi mumkin.

Bir nechta A yozuvlaridan biriga boradigan so'rov muvaffaqiyatsiz bo'lishi mumkin, qo'shni manzil esa muvaffaqiyatli bo'ladi, bu beqaror tunnelga o'xshaydi, aslida esa ikki xil yo'l. Agar manzil bir nechta javobga ega nom bo'lsa, biror narsani o'zgartirishdan oldin har bir javobni alohida sinab ko'ring.

2. Yadrodan qaysi yo'lni tanlaganini so'rang

Yo'llar jadvalini o'qib, javobni taxmin qilmang. Stek beradigan savolning o'zini o'sha manba manzili bilan bering: Linux da ip route get 10.20.4.10 from 10.8.0.2 yoki PowerShell da Find-NetRoute -RemoteIPAddress 10.20.4.10. Chiqish haqiqatan ishlatiladigan yo'lni nomlaydi va u jadvalni o'qiganda kutganingizdan ko'pincha boshqacha bo'ladi.

Mos keladigan yo'llar orasida odatda aniqroq prefiks yutadi: ikkalasida ham bo'lgan manzil uchun /24, /16 dan ustun. Bir xil uzunlikdagi mosliklar orasida pastroq metrika yutadi, o'chirilgan ulanishga o'rnatilgan yo'l esa o'tkazib yuboriladi. Bir xil /24 ni bir xil metrika bilan itarib yuboradigan ikkita tunnel boshqa holat: yadro ikkala yo'lni ham saqlaydi va ular orasidan tanlaydi, shuning uchun natija mijozlar ulangan tartibga ergashmay, almashinib turishi mumkin. Dushanba-ishlaydi-seshanba-ishlamaydi naqshini aynan shu holat tug'diradi va boshqa tartibda qayta ulanish buni o'zgartirmaydi.

3. Siyosat qoidasi qidiruvni boshqa joyga burganini tekshiring

Yo'llar jadvali ko'rilishidan oldin yadro o'z siyosat qoidalaridan o'tadi. Qoida berilgan manbadan, foydalanuvchidan yoki tarmoq himoyasi belgisidan kelgan trafikni butunlay boshqa jadvalga yuborishi mumkin, shuning uchun asosiy jadvaldagi yutuvchi prefiks o'sha oqim uchun hech qachon ko'rilmasligi mumkin. ip rule show ularni baholash tartibida sanab chiqadi, ip route show table 100 esa tanlangan jadvalda aslida nima borligini ko'rsatadi.

Bu yerda ikkita tuzoq bor. Bo'sh jadvalga ishora qiluvchi qoida keyingi qoidaga tushib ketadigan qidiruv hosil qiladi, shuning uchun qoida hech narsa qilmayotgandek ko'rinadi. Ikkinchisi — ustuvorlik raqamining o'zi: qoidalar o'sish tartibida o'qiladi, o'rnatilgan qiymatlar esa 0 local, 32766 main va 32767 default. Raqami 32767 dan kam qoida hammasini ushlab qoladigan standart qoidadan oldin ko'riladi. Raqami 32767 dan katta qoida uning orqasida turadi va faqat oldingi hech bir jadval javob bermaganda yetib boriladi, bunga main dagi oddiy standart yo'l to'sqinlik qiladi, shuning uchun amalda unga hech qachon yetib borilmaydi va o'rnatilgandek ko'rinib, jimgina hech narsa qilmaydi. Agar mijoz qoida va yo'lni yozgan bo'lsa, ikkalasini ham tekshiring va qayta ulangandan keyin yana tekshiring, chunki qayta yozilgan profil boshqa ustuvorlikdagi ikkinchi qoidani qo'shishi mumkin.

4. Yo'l tengligini takrorlangan manzil rejasidan ajrating

Ba'zan prefiks umuman muammo emas. Ikkala joy ham 192.168.1.0/24 dan foydalansa, bu bir manzil ikki xil xostni bildiradi va hech bir yo'l ularni ajrata olmaydi. Ikki javobdan biriga xost yo'li boshqa joy o'sha nomga javob bermaguncha ishlaydi, so'ng istisno jimgina o'zi nosozlikka aylanadi.

Belgisi — manzil manzili ikkala yo'lda ham bir xil, faqat mo'ljallangan egasi boshqacha. Bu manzil rejasi qarori, marshrutlashni sozlash emas: bir tomonni qayta raqamlang, bir tomonni tarjima qiluvchi shlyuz orqasiga qo'ying yoki ikkinchi joyga o'z nomlarini o'zi hal qiladigan proksi orqali yetib boring. Standart yo'lni pasaytirish yoki xost istisnolarini uyib qo'yish faqat to'qnashuvni boshqa joyga ko'chiradi.

5. Hal qiluvchi yo'l bilan rozi ekanini tasdiqlang

Noto'g'ri xususiy manzilga hal bo'ladigan nom marshrutlash to'qnashuvining barcha alomatlarini keltirib chiqaradi va uning birorta sababini keltirmaydi. Xost oladigan javobni manzil haqiqatan ishlatadigan manzil bilan solishtiring va qaysi hal qiluvchi javob berganini tekshiring. Agar tunnel hal qiluvchini itarib yuborsa, mijoz uni tunneldan foydalanadigan oqimlar uchun o'rnatishi kerak; agar yo'q bo'lsa, xost mahalliy hal qiluvchidan so'rayveradi, u qidiruv domenidan yoki keshlangan yozuvdan javob berishi mumkin.

Hal qiluvchidan to'g'ridan-to'g'ri so'rang va javob bergan serverni qayd eting. Qisqa TTL bilan keshlangan javob qayta ulangandan keyingi birinchi so'rov beshinchidan nega boshqacha ishlashini ham tushuntirishi mumkin.

6. Qayta ulaning, qo'llanilgan holatni ko'ring, so'ng ikkala oqimni sinab ko'ring

Tuzatishdan keyin qayta ulaning va profil muharririga ishonish o'rniga mijoz aslida nima o'rnatganini ko'ring. Qoidalarni, jadvallarni va ulardan chiqadigan ip route get javobini yana o'qing. Ikkinchi mijoz ulanganda o'z yo'lini qayta o'rnatishi va to'qnashuvni qayta tug'dirishi mumkin, shuning uchun holat tekshiruvi oxirgi mijoz ulangandan keyin bo'lishi kerak, undan oldin emas.

Bitta emas, ikkita oqimni sinang: avval muvaffaqiyatsiz bo'lgan so'rov va boshqa tunneldan foydalanishi kerak bo'lgan resurs. Barcha xususiy trafikni bitta ulanishga ko'chirish birinchi sinovdan o'tadi, lekin ikkinchisini buzadi va buni faqat juftlab o'tkazilgan sinov ushlaydi. Saqlab qolgan har bir istisnoni manzil va sabab bilan yozib qo'ying, shunda keyingi odam ataylab qilingan xost yo'lini qolganidan ajrata oladi.

O'xshash maqolalar