VPN ulanadi, menyu satri buni ko'rsatadi, lekin ichki xost baribir vaqt tugashiga uchraydi. Bunday holatda uchta mumkin bo'lgan sabab bor va qaysi biri tegishli ekani tunnel qanday sozlanganiga bog'liq. Yoki marshrut buyrug'i tarmoq manzili kerak bo'lgan joyda xost manzilini ishlatgan, yoki profilning o'zi qarorni yutib yuboradigan standart marshrutni o'rnatadi, yoki mijoz profil kaliti o'rniga ilgak kerak bo'ladigan PPP tunnelidir. Ularni shu tartibda tekshiring, chunki birinchisini chiqarib tashlash eng arzon.

Manzil tarmoq manzili, maska prefiksni tavsiflaydi

networksetup -setadditionalroutes manzil, quyi tarmoq maskasi va shlyuz uchligini oladi. Bitta ichki quyi tarmoqni tunnel orqali yuboradigan chaqiruv shunday ko'rinadi:

sudo networksetup -setadditionalroutes "VPN (L2TP)" 192.168.1.0 255.255.255.0 10.2.0.0

Manzil nima ekaniga e'tibor bering: tarmoq manzili, siz yetib bormoqchi bo'lgan server manzili emas. Ushbu maqolani tug'dirgan holatda, o'sha joyda 192.168.1.20 bo'lgan bir xil buyruq hech qanday foydali ish qilmadi va uni 192.168.1.0 bilan almashtirish darhol ishladi. Bir xil maska, bir xil shlyuz, bitta boshqa raqam. Butun nosozlik kichraytirilgan holda shu.

Sabab siyosat emas, arifmetika. /24 maska bilan juftlangan xost manzili 192.168.1.0/24 ni tavsiflamaydi; marshrutlash jadvali foydali ushlab tura olmaydigan narsani tavsiflaydi, shuning uchun yozuv rad etiladi yoki e'tiborsiz qoldiriladi va tunnel oxir-oqibat siz o'ylagandan kamroq tashiydi.

Aynan bitta xost kerak bo'lsa, xost manzilini 255.255.255.255 maskasi bilan ishlating. Xato aralash juftlarda bo'ladi, xost manzilidan foydalanishning o'zida emas. Bitta manzildan qurilgan /32 qonuniy marshrut; bitta manzildan qurilgan /24 xato.

Chaqiruv ro'yxatni almashtiradi, nom esa so'zma-so'z

Birinchi urinishda ikkita xatti-harakat odamlarni hayratda qoldiradi. Buyruq qo'shish o'rniga to'liq qo'shimcha marshrutlar ro'yxatini o'rnatadi, shuning uchun bitta prefiks qo'shadigan chaqiruv avval mavjud bo'lgan boshqalarni jimgina olib tashlaydi. Butun to'plamni bitta chaqiruvda quring.

Xizmat nomi ham siz o'ylab topgan yorliq emas. Uni asbobdan o'qing va tur qo'shimchasi bilan birga aniq nusxa ko'chiring:

networksetup -listallnetworkservices

Bitta belgi bilan farq qiladigan nom o'qishga arziydigan xato ham, marshrut ham bermaydi. Bu yerda to'g'ri usul nusxa ko'chirish va joylashtirish, xotiradan qayta yozish emas.

Profil standart marshrutni talab qilganda

Bo'lingan marshrutlar o'zlari aniq qamramagan har qanday manzil uchun standart marshrutga yutqazadi va to'liq tunnel uchun sozlangan L2TP profili aynan shuni o'rnatadi. Agar profil hamma narsa tunneldan o'tadi desa, qo'shimcha marshrutlar ro'yxati juda oz o'zgaradi. Sizning yozuvingiz xato emas; u hech qachon nomlamaydigan manzillar uchun shunchaki ahamiyatsiz. Buni boshqarish odatda biron bir marshrut buyrug'ida emas, profilning barcha trafikni yuborish sozlamasida bo'ladi.

Yana yozuvlarni tahrirlashdan oldin qaysi model kerakligini hal qiling. Istisnolar bilan to'liq tunnel aniq prefikslar bilan bo'lingan tunneldan boshqa konfiguratsiya va ikkalasini aralashtirish hech kim bashorat qila olmaydigan jadval hosil qiladi.

Agar tashkilot to'liq tunnelni talab qilsa, uni mahalliy bo'lishga urinishni to'xtating va talabni siyosat egasiga olib boring. Bunga zid mahalliy qo'shilgan marshrut keyingi profil yangilanishida baribir olib tashlanadi.

PPP tunnellari kalit o'rniga ilgakka muhtoj

PPP asosidagi tunnellar uchun defaultroute standart marshrut yaratadigan profil kaliti; uni olib tashlang va mijoz har bir manzilni talab qilishni to'xtatadi. Keyin marshrutlar interfeys paydo bo'lgandan keyin qo'shiladi, odatda /etc/ppp/ip-up ichidan:

#!/bin/sh
/sbin/route add -net 192.168.1.0 -interface ppp0

Skriptni root egaligida va bajariladigan holda saqlang va mashinada bir nechta tunnel profili bo'lsa, interfeys nomiga qo'riqchi qo'shing. Har bir PPP ulanishi uchun ishlaydigan va bitta qurilma nomini taxmin qiladigan ilgak uzoq umrli kichik xato.

Bo'linishni uchta so'rov bilan tekshiring

Ulangan holda jadvalni oling va qaysi interfeys tunnelga xizmat qilishini qayd eting. Keyin uni yaratgan buyruqning chiqish holatiga ishonish o'rniga aniq manzilni tekshiring. Chiqish kodi asbob argumentlarni qabul qilganini bildiradi, trafik siz mo'ljallagan yo'ldan ketishini emas.

Bo'linishni isbotlaydigan uchta so'rov bilan yakunlang: manzil bo'yicha bitta ichki xost, ichki hal qiluvchi orqali bitta ichki nom va hali ham mahalliy ulanishdan foydalanishi kerak bo'lgan bitta ommaviy sayt. Agar ommaviy sayt endi tunneldan ham o'tsa, marshrutlar ro'yxati nima desa ham, bo'linish hech qachon bo'lmagan.

Yana bir marta ulanib, ichki so'rovni takrorlang, chunki qo'lda qo'shilgan marshrutlar ularni haqiqiy qilgan interfeysdan uzoqroq yashashi mumkin va tunnel yiqilgandan keyin trafikni jimgina qora tuynukka aylantiradi.

O'xshash maqolalar