Ko‘prik rejimidagi OpenVPN mijozlarida internet yo‘qmi? NAT qoidasini tekshiring
Ko‘prik rejimidagi OpenVPN mijozlari tap qurilmasi orqali chiqadi, shuning uchun jismoniy tarmoq kartasini nomlaydigan masquerade qoidasi hech qachon mos kelmaydi va hisoblagich nolda qoladi.
Ko‘prik rejimidagi server ishlayapti, masquerade qoidasi joyida, lekin mijozdagi brauzer hali ham aylanmoqda. Hamma narsa ishlashi kerakdek ko‘rinadi, shuning uchun birinchi soat tunnel va hisob ma’lumotlarini tekshirishga ketadi. Keyin NAT qoidasidagi hisoblagichni o‘qiysiz va qimirlamagan nolni ko‘rasiz. Birorta paketni sanamagan qoida hech qachon bittasi bilan mos kelmagan, ko‘prik rejimidagi serverda esa sabab tizimli: mijoz trafigi virtual tap qurilmasi orqali chiqadi, qoida esa eski qo‘llanmadan ko‘chirilgan jismoniy kartani nomlaydi.
Dalil — hisoblagich, jadvaldagi yozuv emas
Mavjud qoidalar va mos keladigan qoidalar boshqa-boshqa narsalar, ularni ajratadigan narsa esa hisoblagich. NAT jadvalini batafsil hisoblagichlar bilan chiqaring va biror narsani o‘zgartirishdan oldin har bir qoida yonidagi raqamlarni o‘qing. Trafik oqib turganda nolda qotib qolgan hisoblagich qoida chetlab o‘tilganini bildiradi, uning manzillari qanchalik mantiqli ko‘rinmasin. Ulanish hali ham muvaffaqiyatsiz bo‘lsa-da ko‘tarilayotgan hisoblagich sizni boshqa joyga yuboradi: yo‘naltirishga, qaytish yo‘liga yoki uzoq uchiga.
iptables -t nat -L POSTROUTING -v -nAvval interfeys mosligi yonidagi hisoblagichni o‘qing. Manba diapazoni to‘g‘ri, chiqish tomoni noto‘g‘ri bo‘lsa, tuzatish yangi qoida emas, qoida ichidagi bitta so‘z.
Yadro haqiqatda yozib oladigan nomni toping
Qoidani yozishdan oldin tunnel qurilmasining nomini xotiradan emas, interfeyslar ro‘yxatidan foydalanib aniqlang. Ko‘prik rejimidagi OpenVPN sozlamasida qurilma odatda server yaratgan tap interfeysi bo‘ladi va uning nomi mahalliy konfiguratsiyangizning qismi, universal konstanta emas. Tunnel ishlab turganda u mavjudligini tasdiqlang, chunki mijoz ulanagandan keyingina paydo bo‘ladigan qurilma oldingi sinovni qoida muammosidek ko‘rsatadi.
ip -brief linkNomni yozib qo‘ying. Bu tashxisdagi har bir keyingi buyruq unga murojaat qiladi va bu yerdagi xatolik asl xato bilan aynan bir xil nol hisoblagichni hosil qiladi.
Qoidani tunnel qurilmasiga qarab qayta yozing
Qoidani tunnel qurilmasiga yo‘naltiring va mijoz diapazonini moslik sharti sifatida qoldiring, shunda u tunnel trafigini qamrab oladi va xo‘jayin hostning o‘z ulanishlariga tegmaydi. O‘z diapazoningiz va qurilma nomingizni qo‘ying, chunki quyidagi ikkisi ham misol va hech biri o‘rnatishlar orasida ko‘chirilmaydi.
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o tap0 -j MASQUERADEKeyin xuddi shu belgi yashiradigan qolgan ikki shartni tekshiring. Yo‘naltirish yoqilganmi-yo‘qmi qarang, yoqilmasa, qayta yuklashda yo‘qoladigan echo bilan emas, distributivning o‘z konfiguratsiyasida yoqing. forward zanjirining hisoblagichlarini ham o‘qing va agar u tunnel trafigini tashlasa, o‘sha interfeysga alohida ruxsat bering, zanjir siyosatiga tegmasang.
forward zanjirini hisoblagichlar bilan o‘qish bitta buyruq oladi va boshqa qoidaga tegishdan oldin qolgan imkoniyatlarning yarmini inkor etadi.
Nima uchun jismoniy karta hech qachon mos kelmaydi
Ko‘prik — tap qurilmasi va bitta jismoniy interfeysdan yig‘ilgan dasturiy kommutator. Mijoz kadri o‘sha kommutatorga kiradi va jismoniy tarmoqqa kartadagi paket sifatida emas, ko‘prik a’zosi sifatida chiqadi. Shuning uchun yadro paketni ko‘prik va uning portiga bog‘laydi, shuning uchun siz o‘ylagan karta moslikda hech qachon ko‘rinmaydi. Jismoniy interfeysda hech narsa buzilmagan; u shunchaki yadro o‘sha paketni bog‘laydigan qurilma emas.
Odamlar keyin uchraydigan muammo xuddi shu tuzilmadan kelib chiqadi: ko‘prikdagi kadr filtrlash IP filtrlashdan alohida imkoniyat. Agar talab kadr darajasidagi cheklov bo‘lsa, u ko‘prik filtrlashiga tegishli, IP jadvalidagi qoidaga emas.
Buni boshidan oxirigacha isbotlang, keyin doimiy saqlang
Bitta mijozni ko‘taring va serverning LAN tarmog‘ida biror narsani ping qiling; bu yo‘l hech qanday tarjimasiz yo‘naltirishni mashq qiladi. Shundan keyin ommaviy biror narsa so‘rang, shunda masquerade qoidasi ishlatilishiga to‘g‘ri keladi, va hisoblagichni yana bir marta o‘qing: u shu sinov uchun qimirlashi kerak, oldingisi uchun emas. Tunnel qurilmasida olingan tutib olish kadr qayerda paydo bo‘lishini va qaysi manzilni olib yurishini ko‘rsatadi.
Oxirgi qadam: ishlaydigan qoidalarni qayta yuklash o‘qiydigan konfiguratsiyaga joylang va bu hostning ko‘prigi haqiqatda ishlatadigan qurilma nomini yozib qo‘ying. Qo‘lda terilgan hamma narsa qayta yuklashdan keyin yo‘qoladi va o‘sha nosozlik tushuntirib beradigan hech narsa qolmasdan qaytadi.
Qayta yozgandan keyin ham hisoblagich qimirlamasa, qoidadagi manba diapazonini mijoz haqiqatda olgan manzil bilan solishtiring, chunki ko‘prik rejimidagi server siz nazarda tutmagan diapazondan manzillar berishi mumkin.