Hook skripti ishga tushadi, ppp0 ni o'qiydi va o'sha paytda shu nomga ega bo'lgan har qanday interfeysga marshrutlarni qo'llaydi. Ba'zan bu siz nazarda tutgan tunnel; ba'zan bir daqiqa oldin ulangan sessiya. Keyingi qayta ulanish raqamni siljitadi va o'sha skript jimgina noto'g'ri havolani sozlaydi. Yechim — interfeysni hozir bajarilgan chaqiruvdan olish va nazarda tutilgan profilni u bilan birga olib yurish.

Bitta sessiyani parametrlardan hookgacha kuzatib boring

Sessiya yaratiladigan joydan boshlang. xl2tpd pppd ni o'sha tunnelning pppoptfile ko'rsatgan parametrlar fayli bilan ishga tushiradi, shuning uchun plagin, birlik raqami va har qanday profil belgisi global faylda emas, o'sha yerda belgilanadi. Ulanish menejeri o'z parametrlarini yaratishi mumkin, ya'ni /etc/ppp/options ni tahrirlash sizga muhim bo'lgan tunnel o'zgarganiga dalil emas. Havola ko'tarilganda pppd tarqatmaning yuboruvchisidan bildirishnoma skriptlarini ishga tushiradi. Bu skriptlar interfeys nomini birinchi argument, profil belgisini oltinchi argument sifatida oladi.

Muhit bir xil faktlarni IFNAME va PPP_IPPARAM kabi nomlar ostida tashiydi, lekin ularning mavjudligi o'rnatilgan yuboruvchiga bog'liq. O'zgaruvchiga tayanishdan oldin yuboruvchini o'qing: ba'zi tarqatmalar upstream argument tartibini saqlaydi, boshqalari skriptingizni chaqirishdan oldin muhitni filtrlaydi. Faqat $1 va oltinchi argumentdan foydalanadigan skript ikkala holatda ham ishlaydi.

Interfeysni chaqiruvdan o'qing

An'anaviy hook interfeysni birinchi oladi. Bu pozitsion qiymat skriptni ishga tushirgan sessiyani tavsiflovchi interfeys identifikatori. Uni yuqorida o'zgaruvchiga saqlang, keyin o'sha o'zgaruvchini marshrutlar, xavfsizlik devori qoidalari va demontaj uchun ishlatib oling.

ipparam office-vpn

Profil belgisini parametrlar aniqlanadigan joyga ulang, skriptga emas. Tunnel parametrlari faylida shu satr bo'lsa, o'sha fayldan yaratilgan har bir sessiya oltinchi argument sifatida office-vpn ni olib yuradi. Skript belgi bo'yicha tarmoqlanadi va shu bilan birga haqiqiy interfeysda harakat qiladi. Kodda ikkalasini alohida tuting, chunki belgi barqaror, interfeys esa har bir sessiya uchun ajratiladi.

Nomni faqat rad etish to'g'ri bo'lganda so'rang

Qat'iy nom argumentlarni o'qishdan oddiyroq ko'rinadi, lekin muvaffaqiyatsizlik xulqini o'zgartiradi. unit parametri chiquvchi ulanish uchun raqam so'raydi va o'sha birlik band bo'lsa, pppd dinamik taqsimlashga qaytadi. Bu natijada hech narsa sizning profilingiz uchun ppp0 ni ajratmaydi.

ifname ppp-office

ifname parametri boshqacha ishlaydi: so'ralgan nom allaqachon ishlatilsa yoki tayinlab bo'lmasa, pppd boshqasini tanlash o'rniga chiqib ketadi. Bu tashqi ko'rinish o'zgarishi emas, siyosat tanlovi. Uni bir xil profilning ikkinchi parallel nusxasini rad etish kerak bo'lganda ishlating va o'rnatilgan pppd hamda ulanish menejeringiz parametrni uzatishiga ishonch hosil qiling.

Qanday bo'lmasin, skript ko'radigan nom — harakat qilinishi kerak bo'lgan nom. Sozlangan nom chaqiruvni o'qish zaruratini yo'qotmaydi, chunki qayta ishga tushirilgan sessiya avvalgisidan boshqacha nom taqdim etishi mumkin.

Demontajni sozlagan sessiyangizga moslang

Marshrutlar va xavfsizlik devori qoidalari ularni yaratgan skriptdan uzoqroq yashaydi, shuning uchun demontaj sessiyaga tegishli obyektlarni aniq olib tashlashi kerak. Qoidalarni interfeys bilan birga profil belgisi bilan ham belgilang va o'sha belgi bo'yicha o'chiring. Agar ikkita tunnel bir vaqtda ko'tarilishi mumkin bo'lsa, ppp ni eslatadigan hamma narsani o'chirish bitta uzilishning boshqa ulanishni buzish usulidir.

Xatoni ochib beradigan holatni sinab ko'ring: birinchisi hali ulangan paytda ikkinchi PPP sessiyasini ko'taring, so'ng birinchisini qayta ulang va hook qaysi interfeysni xabar qilishini kuzating. Bitta sessiya bilan muvaffaqiyatli ishga tushirish nomlar taqsimoti haqida hech narsani isbotlamaydi. VPN to'xtatilgan holatda takrorlang va demontaj eski marshrut qoldirmasligiga ishonch hosil qiling.

Belgini, interfeysni va hook yo'lini joylashtirish qaydlarida saqlang. Qayta yuklashdan keyin raqam o'zgarsa, o'sha uch qiymat hech qanday konfiguratsiya tahririsiz skript nima uchun boshqacha ishlaganini tushuntiradi.

O'xshash maqolalar