47-protokol va TCP 47-porti: ikki sarlavha, ikki qoida
Protokol raqami va port turli sarlavhalarda yashaydi, shuning uchun bir qoida ikkinchisini almashtira olmaydi. PPTP ikkalasini ajratadi, port katagi esa GRE ni ifodalay olmaydi.
Mehmonxona tarmoqlari va konferensiya xavfsizlik devorlari ko'pincha maxsus ruxsat katagini ko'rsatadi va kimdir PPTP ishlaydi deb umid qilib unga 47 yozadi. Qoida yaratiladi, tunnel baribir ishlamaydi, keyingi urinish esa boshqa raqamdan foydalanadi. Xato paketning o'zida: IPv4 da IP sarlavhasidan keyin nima kelishini nomlaydigan protokol maydoni bor, TCP va UDP da esa faqat shu sarlavhalardan birining ichida bo'lganda mavjud bo'lgan port maydonlari bor. Bular bir ruxsatning ikki yozilishi emas.
IPv4 sarlavhasi keyingi protokolni nomlaydi
Protokol maydoni IPv4 sarlavhasida bir bayt va foydali yukni tavsiflaydigan raqamni saqlaydi: TCP uchun 6, UDP uchun 17, GRE uchun 47, ESP uchun 50. Paketlarni filtrlaydigan har qanday narsa chuqurroq qarashdan oldin bu qiymatni o'qiydi, chunki chuqurroq sarlavha faqat tur ma'lum bo'lgach ma'noga ega bo'ladi. Suhbatning keyingi qismida portni o'zgartiring, bu maydon joyidan jilmagan.
Shuning uchun 47-protokolga qarshi yozilgan qoida IP qatlamini tavsiflaydi. Qarorda hech qanday port qatnashmaydi.
Portlar TCP va UDP ichida bo'ladi, boshqa joyda emas
Portlar TCP va UDP sarlavhalari ichidagi o'n olti bitli identifikatorlar bo'lib, ularning vazifasi bitta manzilni baham ko'radigan suhbatlarni ajratishdir. GRE sarlavhasi protokol turi qiymatini, ko'pincha EtherType ni, qo'shimcha ravishda multiplekslash uchun ixtiyoriy kalitlarni olib yuradi. Shuning uchun port 47 iborasi GRE paketi mos kelishi mumkin bo'lgan hech narsani nomlamaydi.
Xavfsizlik devori interfeyslari buning qanchaligini ko'rsatishi bilan farqlanadi. Ba'zilari protokol raqamini qabul qiladi, ba'zilari nomli ro'yxat taklif qiladi, ozchiligi esa faqat portlar bilan TCP yoki UDP ni qabul qiladi.
PPTP ikkala qatlamni bir vaqtda ishlatadi
PPTP eng aniq misol, chunki u ishini ataylab ikki qatlam o'rtasida bo'ladi. Boshqaruv ulanishi 1723-portga TCP sessiyasi, ma'lumot yo'li esa GRE, 47-protokol bo'lib, hech qayerda port qatnashmaydi. 1723 ga ruxsat berib boshqa hech narsaga ruxsat bermaydigan xavfsizlik devori muzokaralarni boshlashga yo'l qo'yadi va keyin foydali yukni tashlab yuboradi. Tunnel ulanmagan holda autentifikatsiyadan keyin osilib qolgandek ko'rinadi va shu sababli belgi ko'pincha parol muammosi sifatida xabar qilinadi.
| Path | Outer protocol | Port |
|---|---|---|
| Control channel | TCP, protocol 6 | 1723 |
| Data channel | GRE, protocol 47 | None |
Qoidani yozayotganda ikki qatorni alohida o'qing va har birini ishlab chiqaruvchining sintaksisi bilan tekshiring. Bir qatorga port kerak, ikkinchisiga protokol raqami kerak va bitta ham yozuv ikkalasini qamrab olmaydi.
Nega port yo'naltirish sahifasi GRE ni ifodalay olmaydi
Faqat TCP va UDP ni qabul qiladigan yo'naltirish shakli GRE ni tavsiflay olmaydi, shakl qanday nomlansa ham. Manzil tarjimasi ikkinchi qiyinchilikni qo'shadi, chunki GRE da portlar yo'q va tarjimon buning o'rniga chaqiruv identifikatorini kuzatishi kerak. Ba'zi uy routerlari buni hal qiladigan yordamchi bilan keladi; ko'pchiligi kelmaydi va hech qanday qo'shimcha TCP ruxsat yozuvi bu xatti-harakatni yaratmaydi.
Agar haqiqiy talab zamonaviy tunnel bo'lsa, tarjimon to'g'ri taxmin qiladi deb umid qilish o'rniga ataylab TCP yoki UDP dan foydalanadigan dizaynni tanlang.
Inkapsulyatsiya filtr nimani ko'rishini belgilaydi
Inkapsulyatsiya tashqi paketni o'zgartiradi va qoida aynan tashqi paket bilan mos keladi. Tabiiy ESP 50-protokol, NAT dan o'tish esa ESP ni UDP 4500 ichiga o'rab, manzil tarjimasidan omon qoldiradi. UDP 4500 ga ruxsat beradigan filtr 50-protokolni hech qachon ko'rmaydi, 50-protokol uchun yozilgan filtr esa o'ralgan shakl bilan hech qachon mos kelmaydi.
Mijoz va shlyuz qaysi inkapsulyatsiya bo'yicha kelishganini so'rang, keyin qoidani aynan shu tashqi shakl uchun yozing, undan ortiq emas.
Qoidani kimdir tekshira oladigan qilib yozing
Har bir qoidani manzil oilasi, tashqi protokol, bo'lsa transport portlari, yo'nalish va ikkala oxirgi nuqta sifatida ifodalang. Taqrizchi bu gapni paket yozuvi bilan solishtirib xulosaga kelishi mumkin. 47 ni ochish haqidagi ko'rsatmani hech kim tekshira olmaydi va shu sababli u yillar davomida tartib qo'llanmalarida qoladi.
Buni isbotlaydigan sinovni qo'shing: tashqi interfeysda yozib olayotganda ulaning va izda haqiqatan ko'rinadigan tashqi protokol hamda portni tasdiqlang.