Afsona shundaki, L2TP Android'da shell skript ishga tushirishi mumkin bo'lgan yana bir narsa: marshrut qo'sh, eski xizmatni chaqir, tamom. Bu mumkin emas, chunki tunnel paketni olib o'tishidan oldin to'rt xil qatlam kelishishi kerak. IPsec qatlami yo'lni himoya qiladi, L2TP sessiyani olib yuradi, PPP ulanishni muzokara qiladi va Android natijani atrofida marshrutlay oladigan VPN sifatida ro'yxatdan o'tkazishi kerak. Men buni ko'chirilgan buyruqlar bilan ikki marta urinishganini ko'rdim, ikkalasida ham marshrut bor edi, lekin hech narsa shifrlanmagan edi.

Marshrut o'zgarishi aslida nima beradi

Marshrut qo'shish paketning keyin qayerga ketishini hal qiladi. U xavfsizlik assotsiatsiyasi bo'yicha muzokara qilmaydi, L2TP sessiyasini ochmaydi va manzil, sherik va DNS sozlamalarini ishlab chiqaradigan PPP almashinuvini bajarmaydi. Telefonda ko'rinadigan natija noto'g'ri yo'ldan chiqadigan yoki chiqib o'ladigan trafik bo'lib, hech qayerda tunnel holati yo'q.

Xuddi shu eski versiyadan ko'chirilgan xizmat chaqiruviga ham tegishli. Android'ning ichki VPN quvurlari e'lon qilingan avtomatlashtirish API emas, va boshqa versiyaning raqamlangan tranzaksiyasi boshqa operatsiyaga urilishi yoki skriptda yo'q imtiyozlarni talab qilishi mumkin. Parolni olib yuruvchi avtomatlashtirish hech qachon taxmin qilingan ichki argumentlarga tayanmasligi kerak, chunki nosozlik shakli yo jim no-op, yo hech kim tozalamaydigan yarim yaratilgan profildir.

To'rt egasi, va skript ulardan biri emas

Ularni tartib bilan oling. IPsec himoyalangan yo'lni o'rnatadi va saqlaydi, sheriklarni autentifikatsiya qiladi. L2TP sessiyani uning ustidan olib yuradi, va aynan qatlamlanish standartning ularni bitta protokol emas, alohida mexanizmlar deb hisoblashiga sabab. Uning ichida PPP mijoz ishlatadigan ulanish parametrlarini muzokara qiladi. Keyin Android platforma tomoniga ega: ro'yxatdan o'tgan VPN interfeysi, har bir ilova uchun qamrov, always-on holati va ilova o'ldirilganda nima bo'lishini hal qiladigan hayot tsikli.

Skript o'sha qatlamlarning faqat oxirgisini ko'ra oladi, odatda bilvosita. Agar mijoz hujjatlashtirilgan boshqaruvni taqdim etsa, u mijozdan ulanishni so'rashi va keyin interfeys holatini kuzatishi mumkin. U pastdagi uch qatlamni almashtira olmaydi va platformani ro'yxatdan o'tmagan interfeysni VPN deb hisoblashga majburlay olmaydi.

Nega daemon ham qisqa yo'l emas

Qurilmada imtiyozli Linux daemonini ishga tushirish yetishmayotgan qismga o'xshaydi va ko'pincha haqiqatan ham tunnelni ko'taradi. U qilmaydigan narsa — o'sha tunnelni Android'da ro'yxatdan o'tkazish. Interfeys yadro ichida mavjud, lekin platformaning VPN tanlovi, har bir ilova bo'yicha marshrutlash, always-on siyosati va hayot tsikli bu haqda bilmaydi, daemonning o'z marshrut va DNS o'zgarishlari esa bir xil jadvallar uchun tarmoq menejeri bilan raqobatlashadi.

Natija daemon trafigi uchun ishlaydigan va siz uchun muhim bo'lgan ilova uchun sirli ravishda ishlamaydigan ulanish, yoki tizim tarmoqlarini qayta baholamaguncha saqlanadigan ulanishdir. Ikkala natija ham platforma xatosi emas; bu socketga egalik va VPN imkoniyatiga egalik o'rtasidagi chegara.

Qo'llab-quvvatlanadigan yo'llar qanday ko'rinadi

Agar tashkilot Android o'zi taqdim etadigan profilga o'ta olsa, platforma yo'li haloldir. API 30 dan boshlab VpnManager ilovalar tomonidan platforma VPN profillarini taqdim etish va boshqarishni qo'llab-quvvatlaydi, chaqiruvchi ilovaga bog'langan avtorizatsiya oqimi bilan. Bu L2TP konverteri emas: IKEv2 uchun taqdim etadigan profil modeli mavjud L2TP konfiguratsiyasini tarjima qilmaydi, protokolni almashtirish esa migratsiya, nomini o'zgartirish emas. Identifikatorlar, marshrutlar, shaxsiy DNS va kirish ruxsatlari ataylab ko'chirilishi kerak.

Agar xizmat L2TP/IPsec bo'lib qolishi kerak bo'lsa, qo'llab-quvvatlanadigan kombinatsiya operator haqiqatan hujjatlashtiradigan mijoz va OS versiyasi, va agar mavjud bo'lsa, uning avtomatlashtirish shartnomasidir. Hujjatlashtirilgan nazoratsiz boshqaruv bo'lmaganda, to'g'ri javob bitta buildda tasodifan ishlaydigan mo'rt imtiyozli skript emas, balki qo'llab-quvvatlanadigan qo'lda ulanishdir.

To'g'ri avtomatlashtirish nima qiladi

Hujjatlashtirilgan boshqaruv berilganda, avtomatlashtirishning kichik va himoya qilish mumkin bo'lgan ishi bor: nomlangan ulanishni so'rash, tayyorlikni kutish, autentifikatsiya yoki sozlash xatosida to'xtash, mo'ljallangan ish yukini bajarish va tozalashni ulanishga ega komponentga qoldirish. Hisob ma'lumotlari ularni saqlash va almashtirishni biladigan mijozda qoladi.

Birinchi qatorni yozishdan oldin qaysi komponent qaysi qatlamga ega ekanini yozing va natijani shunga qarab tekshiring:

  • IPsec va PPPni mijoz boshqaradi, skript marshrutlari emas.
  • Ulanish platformaning VPN holatida ko'rinadi, shuning uchun har bir ilova qamrovi va always-on unga tegishli.
  • Hech qanday ichki xizmat chaqiruvi, tranzaksiya raqami yoki taxminiy argument hisob ma'lumotlarini olib yurmaydi.
  • Har qanday bosqichdagi nosozlik yarim ro'yxatdan o'tgan profil qoldirmaydi.

O'xshash maqolalar