Hotspot mijozlari uchun tunnel bo‘linishi har bir ilova bo‘yicha istisno emas
Ilovani VPN dan chiqarish faqat telefonni o‘zgartiradi. Ulangan noutbukka manba, manzil va NAT bo‘yicha moslashtirilgan o‘z yo‘naltirish qoidasi kerak.
Bir xil eshitiladigan ikki talab bir xil emas: «bu ilovani VPN dan chiqar» va «bu bitta manzilni mening hotspotimdagi noutbuk uchun VPN tashqarisiga yubor». Birinchisi telefonda soket tarmoqni qanday tanlashini o‘zgartiradi. Ikkinchisi telefon allaqachon qabul qilganidan keyin boshqa qurilmadan kelgan paket uchun yo‘naltirish qarorini o‘zgartirishi kerak. Ikkalasini aralashtirish hotspot mijozi doim faqat telefonning o‘z brauzeriga tegishli bo‘lgan istisno bilan qolishiga olib keladi.
Ikki savolga ikki quyi tizim egalik qiladi
Android ilovalar tarmog‘i va tetheringni alohida tutadi. Ilovalar soketlarini ulanish steki tarmoqqa biriktiradi, VPN ilovasi esa o‘z soketlaridan qaysilari tunnelga kirishini hal qiladi. Ulangan mijozdan yo‘naltirilgan paketlarni tethering quyi tizimi boshqaradi, u netd dan marshrutlar, siyosat qoidalari va pastki interfeysda tarjimani so‘raydi.
Ilova bo‘yicha istisno ilova soket ochganda baholanadi. Yo‘naltirilgan paket bu tekshiruvga hech qachon yetib bormaydi, chunki u bu qurilmadagi ilova soketidan kelib chiqmagan. Ikki sozlama bir-birini almashtira olmasligining butun sababi shu va bu ikkalasining hech birida xato emas.
Ilova bo‘yicha istisno aslida nimani o‘zgartiradi
VpnService quruvchisi tunnel tashqarisida qoladigan paketlarni addDisallowedApplication bilan nomlashi yoki ichkarida ruxsat etilgan yagona paketlarni addAllowedApplication bilan nomlashi mumkin. O‘sha ilovalar keyin asosiy tarmoqda soket ochadi, VPN esa qolgan hamma narsa uchun standart marshrutga egalik qilishda davom etadi.
Qamrov aniq: paketning o‘z soketlari, shu qurilmada, tunnel ko‘tarilgan ekan. U yo‘naltirilgan trafik haqida hech narsa demaydi, ikkinchi qurilma haqida ham, tizim tethering nomidan yuboradigan paketlar haqida ham hech narsa demaydi.
Bu manzilni boshqarish ham emas. Brauzerni chiqarib tashlash o‘sha brauzer yetib boradigan har bir manzilni chiqarib tashlaydi, tunnel ichida saqlamoqchi bo‘lganingizni ham. Talab ilova o‘rniga manzilni nomlaganda, ilova tanlagichi tuzilishi jihatidan noto‘g‘ri vosita.
Tether qilingan paket telefonga qanday ko‘rinadi
Mijoz paketi hotspot interfeysiga telefon ajratgan xususiy manba manzili bilan, aytaylik 192.168.43.20, va ommaviy manzil bilan keladi. Uni yo‘naltirish uchun telefonga yuqori bo‘g‘inga marshrut va javoblar qaytish yo‘lini topishi uchun tarjima qoidasi kerak, chunki mijozning xususiy manzili uyali tarmoqda ma’nosiz.
Android buni marshrutlash jadvalini tanlaydigan siyosat qoidalari bilan ifodalaydi va tarmoqlar hamda VPN lar o‘zgarganda netd tegishli jadvallar va qoidalarni qayta quradi. Forum postidan yoki o‘sha modelning eski versiyasidan ko‘chirilgan jadval raqami, qoida ustuvorligi yoki interfeys nomi barqaror egalikni o‘rnatmaydi. Bu qayta qurish qo‘lda yozilgan qoida bir soat ishlab, keyingi qayta ulanishdan keyin to‘xtab qolishining ham sababi.
Hotspot istisnosiga aslida qanday siyosat kerak
Qoidaga tegishdan oldin qarorni manba, manzil va mo‘ljallangan yo‘l sifatida yozing. Bitta tasdiqlangan manzil uchun eng kichik shakl shunday ko‘rinadi:
| Source | Destination | Intended path |
|---|---|---|
| One authorized hotspot client | One approved public service address | Ordinary cellular uplink |
| The same client | All other covered destinations | Shared VPN |
| The phone's own apps | Their existing destinations | Unchanged phone policy |
Ikkala yo‘nalish ham to‘liq bo‘lishi kerak. To‘g‘ridan-to‘g‘ri shoxobchaga hozir amaldagi uyali yuqori bo‘g‘in orqali foydalanish mumkin bo‘lgan marshrut kerak; VPN shoxobchasiga tunnel marshruti va yo‘naltirishga ruxsat kerak. Har qanday manba tarjimasi siz tanlagan chiqishga mos kelishi kerak, chunki tunnel interfeysida qo‘llanilgan NAT tunnel manzilini ko‘rsatadi, uyali manzilni emas, va shunda qaytish yo‘li chiqish yo‘li bilan mos kelmaydi.
Javoblar kuzatilgan holat yoki aniq marshrut orqali o‘sha quyi mijozga yetib borishi kerak va chiqayotgan paketlar hisoblagichi bularning hech birini isbotlamaydi. VPN ning o‘z tashqi transportini ham istisno qamrovidan tashqarida tuting, aks holda tunnelning tashuvchi paketlari mijozning veb so‘rovi uchun yozilgan siyosatni meros qilib oladi.
Qo‘lga olingan bitta manzil manzil emas
Brauzerdan o‘qilgan bitta IPv4 manzili bir lahzalik surat. Katta xizmatlar anycast yoki aylanadigan chekka manzillar to‘plamidan javob beradi, ko‘plari ikki qatlamli, va kirish oqimi sahifa hech qachon ko‘rsatmaydigan autentifikatsiya va telemetriya xostlariga tegishi mumkin. Tasodifan ko‘rgan manzilingiz atrofida qurilgan istisno xizmat yuklamani qayta muvozanatlaganda keyingi safar buziladi.
Xizmat egasining hujjatlashtirilgan manzillaridan yoki u e’lon qiladigan diapazondan foydalaning va ikkala manzil oilasini ham hisobga oling. Agar talabni barqaror to‘plam sifatida ifodalash mumkin bo‘lmasa, bu, ehtimol, xizmat uchun siyosat savoli, telefonda marshrutlash hiylasi emas.
Quyi tomondan tekshiring
Uch tekshiruv, shu tartibda: noutbukdan tanlangan xizmat, VPN ichida qolishi kerak bo‘lgan oddiy manzil va ta’sirlanmasligi kerak bo‘lgan telefon ilovasi. Keyin qayta ulanishdan va yuqori bo‘g‘in o‘zgarganidan keyin takrorlang, chunki siyosat jadvallari o‘shanda qayta quriladi.
Agar telefonning almashish tatbiqi bu shartnomani qayta ulanish davomida tuta olmasa, qurilmada root qoidalarini to‘plash o‘rniga tanlama siyosatni qo‘llab-quvvatlanadigan quyi marshrutizatorga ko‘chiring. Marshrutizator barqaror egasi bilan manba va manzil mosligini ifodalay oladi, va tethering moduli hujjatlari telefon aslida nima qilishining to‘g‘ri manbasidir.