OpenVPN TUN va TAP: hal qiluvchi uch shart
Bir interfeys IP paketlarini, ikkinchisi Ethernet kadrlarini tashiydi. Biror narsani ko'prik qilishdan oldin ilova, mijoz qo'llab-quvvatlashi va haqiqiy alomatni tekshiring.
Ikki tunnel bir xil fayl uzatishni tashishi mumkin, lekin simga qo'yadigan narsasi bo'yicha butunlay farq qilishi mumkin. Biri ikki manzil o'rtasida IP paketlarini ko'chiradi; ikkinchisi Ethernet kadrlarini ko'chiradi va uni segmentga ko'prik qilish mumkin. Aynan shu farq qaysi ilovalar ishlashini, qaysi mijozlar ulanishi mumkinligini va qancha tarmoq loyihasini o'z zimmangizga olishingizni hal qiladi.
Amalda buni uch shart hal qiladi. Ularni tartib bilan ko'rib chiqing, chunki birinchisi odatda muhokamani tugatadi.
Har bir interfeys aslida nima tashiydi
TUN qurilmasi 3-qatlamning nuqta-nuqtaga interfeysi: yadro unga IP paketlarini beradi va tunnel ularni sherik manziliga yetkazadi. TAP qurilmasi Ethernet kadrlarini tashuvchi 2-qatlam interfeysi bo'lib, ko'prikni umuman mumkin qiladigan narsa aynan shu, yadro hujjatlari ta'riflaganidek. Ikkalasi ham foydali yukning shifrlanish usulini o'zgartirmaydi va ikkalasi ham kuch sozlamasi emas. Tanlov uchlar nimani almashishi kerakligi haqida, trafik qanchalik yaxshi himoyalangani haqida emas.
Bitta natija darhol keladi: ikkala uchi ham kelishishi kerak. Bir qurilma turiga sozlangan mijoz ikkinchisiga sozlangan serverga qo'shila olmaydi, qolgani qanchalik mos kelsa ham.
Birinchi shart: biror narsaga ikkinchi qatlam kerakmi?
Ko'prik o'z murakkabligini protokol haqiqatan ham bir xil eshittirish domeniga muhtoj bo'lganda oqlaydi: IP bo'lmagan trafik, routerdan o'tolmaydigan aniqlash yoki bitta segmentda turishni talab qiladigan ilova. Qolgan hamma narsa marshrutlash muammosi va marshrutlash uni ancha kam mexanizm bilan hal qiladi. Segmentni keng hududga cho'zish uning eshittirishlarini ham cho'zadi, shuning uchun halqalarning oldini olish, manzillarni rejalashtirish va nosozlik domenlari loyihaning bir qismiga aylanadi. Bitta marshrut qanoatlantiradigan talab uchun bu juda ko'p.
Sinov aniq: marshrutlangan tunnelda ishlamaydigan ilovani ayting va nima uchunligini ayting. Javob unga eshittirish kerak bo'lsa, ikkinchi qatlam halol javob. Javob kimdir bitta serverga yetib bora olmagan bo'lsa, talab marshrut yoki tarmoq devori qoidasi.
Ikkinchi shart: mijozlar buni qila oladimi?
Qo'llab-quvvatlash bir xil emas. Ish stoli mijozlari odatda ikkala qurilma turini taqdim etadi, mobil va ichki mijozlar esa ko'pincha faqat marshrutlangan rejimni amalga oshiradi, shikoyatsiz import qilingan profil ham interfeysni yaratishga urinayotganda muvaffaqiyatsiz bo'lishi mumkin. Platforma nomidan xususiyatlarni taxmin qilish o'rniga aniq mijoz va versiyani tekshiring.
Qo'llab-quvvatlanmaydigan parametr xatosi import muvaffaqiyatli bo'lgunga qadar notanish satrlarni o'chirishga taklif emas. Bu profil va mijoz nima mumkinligi borasida kelishmasligini bildiradi va tuzatish profilni chiqargan operatorga tegishli. Validatorni jim qilish uchun parametrni olib tashlash, ishlayotgandek ko'rinadigan, lekin o'zi uchun mavjud bo'lgan xususiyatni jimgina tashlab ketadigan ulanish yaratishi mumkin.
Uchinchi shart: bu haqiqatan interfeys masalasimi?
Interfeys muammolarida yonma-yon ikki tanlov ayblanadi. Virtual qurilma tunnelga nima kirishini hal qiladi, UDP yoki TCP tashqi transport qanday ishlashini hal qiladi, ikkalasi ham tiqilib qolgan uzatishlarni davolamaydi. Katta uzatishlar osilib, kichiklari muvaffaqiyatli bo'lsa, paket o'lchami va MTU e'tiborga loyiq.
Ulanib, keyin bitta ichki xostga yetib bora olmaydigan mijoz odatda marshrutlashni, tarmoq devori qoidasini yoki yo'qolgan qaytish yo'lini ko'zdan kechiradi.
Boshqariladigan xizmat uchun operator profili ko'rsatgan interfeys tartibini ishlating, chunki server tomoni allaqachon shu atrofida qurilgan. Xususiy joylashtirish uchun ilovaning haqiqiy talabidan kelib chiqib tanlang va sababni tanlov yoniga yozing.
Savol qaysi parametr kuchliroq ekanida emas. Trafikka aslida qaysi biri kerakligida.