Rekursiv marshrutlash: tunnel o'z paketlarini tutib olganda
Tunnel o'zini quradigan paketlarni tutib olishi mumkin. Standart marshrut o'zgarishidan oldin va keyin serverga boradigan yo'lni solishtiring, so'ngra o'sha yo'lning egasini tuzating.
Tunnel ko'tariladi, jurnal tugallangan qo'l siqishni ko'rsatadi, bir soniyadan keyin o'sha seans o'ladi va halqa bo'lib qayta ulanadi. Bu naqshning aniq sababi bor: serverga boradigan marshrut endi tunnelning ichini ko'rsatadi, shuning uchun tunnelni tashuvchi paketlar tunnel orqali yuboriladi. Autentifikatsiyada hech narsa o'zgarmadi, shuning uchun hisob ma'lumotlarini qayta kiritish hech qanday farq qilmaydi. Marshrut o'zgarishidan oldin va keyin tashqi yo'lni solishtiring, rekursiya ko'rinadi.
Avval tashqi yo'lni tekshiring
O'yinda bitta emas, ikkita paket bor. Ichki paket ilovaga tegishli va shifrlangan bo'lishi kerak, tashqi paket esa serverga yo'naltirilgan va unga tunnelga bog'liq bo'lmagan yo'l bilan yetib borishi kerak.
ip route get 198.51.100.7
ip rule show
ip route show table all | grep -F 198.51.100.7
wg show wg0 endpoints
Tunnel ko'tarilgandan keyin yadrodan server manziliga boradigan marshrutni so'rang va standart marshrut o'zgargandan keyin yana so'rang. Keyingi sakrash tunnel qurilmasiga tushsa, bu aynan rekursiya va uni hech qanday paket tutmasdan ko'rish mumkin. Interfeysga bog'lash, belgilar yoki tarmoq nomlar fazosi oddiy qidiruvni to'liq bo'lmagan holga keltirishi mumkin, shuning uchun mijoz o'zi ishlatadigan kontekstdan foydalaning. Javob to'g'ri ko'rinsa-da seans hali ham halqada bo'lsa, faqat asosiy jadvalni emas, marshrutlash siyosati qoidalarini o'qing.
Nega seans bir lahza saqlanib qoladi
Qo'l siqish yangi marshrut o'rnatilishidan oldin tugaydi, shuning uchun birinchi soniyalar sog'lom ko'rinadi. Mijoz standart marshrutni qo'shishi bilan keyingi tashqi paket unga ergashib, o'tishi kerak bo'lgan interfeysga kiradi. Server hech narsani ko'rmaydi, mijoz qayta yuboradi va urinish yoki vaqt tugashi bilan to'xtaydi yoki seansni o'ldirib qaytadan boshlaydi.
Bu tartib tunnel nega noutbukda ishlab, marshrutizatorda muvaffaqiyatsiz bo'lishini va nosozlik nega ulanish paytida emas, trafik boshlanganda tez-tez boshlanishini tushuntiradi. U halqani ham tushuntiradi: har bir qayta ishga tushirish seansni marshrut buni imkonsiz qilishidan oldin tiklaydi.
Oxirgi nuqta istisnosining egasini toping
Qo'llab-quvvatlanadigan mijozlar o'z istisnolarini o'zlari tayyorlaydi: dastlabki shlyuz orqali serverga xost marshruti yoki tashqi soketni tunneldan tashqarida ushlab turadigan belgi. Savol shundaki, uni boshqa narsa olib tashladimi yoki chetlab o'tdimi.
Marshrutga asoslangan IPsec'da qaysi paketlar tunnelga kirishini hal qiladigan siyosat tanlagichlarini ko'rib chiqing va hamkor manzili ulardan chiqarilganiga ishonch hosil qiling. WireGuard'da interfeysning tarmoq devori belgisi va uning siyosat qoidalari transport paketlarini tunneldan tashqarida ushlab turadi, shuning uchun qo'lda qo'shilgan standart marshrut bu tartibni buzishi mumkin. Ikkinchi VPN profili yoki standart marshrutni qayta yozadigan boshqaruv skripti ko'p uchraydigan aybdor. Birma-bir qo'shiladigan keng chetlab o'tish qoidalari odatiy natija bo'lib, ular marshrutlash xatosini hech kim saqlab turolmaydigan jadvalga aylantiradi.
Tarmoq o'zgarganidan keyin yana tekshiring
Wi-Fi shlyuzi orqali xost marshruti mashina boshqa tarmoqqa o'tmaguncha to'g'ri. Shunda xuddi shu alomat hech qanday konfiguratsiya o'zgarishisiz qaytadi.
Oxirgi nuqta manzilini, ulanishdan oldin va keyin marshrutni va har biri ishlatgan interfeysni yozib qo'ying. Bu uch fakt odatda mijoz xatosini chetlab o'tishdan ajratadi va ularni to'plagan kishi ketganidan keyin ham qoladi.
Yangi tarmoqda qayta ulanib, o'qishni takrorlang. Istisno yana bo'lmasa, tuzatish uni saqlaydigan profilda, uzilish paytida terilgan bir martalik buyruqda emas.