Бүхэл LAN-ийг VPN туннелийн ард байрлуулах нь хялбар хэсэг; алс тал тэдгээр клиентийг хэрхэн хардагийг шийдэх нь тийм биш. Маскарад LAN-ийн эх бүрийг гарцын туннелийн хаяг руу дахин бичдэг тул алс тал нэг түншдээ хариулдаг. Бодлогын маршрутлал анхны хаягуудыг хадгалж, алс тал тэдгээрт хэрхэн хүрэхийг мэдэх ёстой гэж шаарддаг. Аль нь ч анхдагч биш; сонголт нь алс талыг хэн эзэмших, төхөөрөмж тус бүрийн таних тэмдэг чухал эсэхээс хамаарна.

Хоёр загвар өөр өөр зүйл амладаг

Маскарад LAN-ийг нэг харагдах хост болгон бууруулдаг: гарц. Алс сүлжээ тэр нэг хаягт хариулж, гарц хариултуудыг урсгалыг эхлүүлсэн клиент рүү буцааж хөрвүүлдэг. Алс талд таны хувийн префиксүүд рүү маршрут шаардлагагүй, тиймээс энэ загвар тэдгээрийг зөөхөөс татгалздаг үйлчилгээ үзүүлэгчтэй ч тэсдэг. Гарц нь мөн холболт бүрийн эх үүсвэр болдог тул алс тал хоёр клиентийг ялгаж чадахгүй.

Бодлогын маршрутлал клиент бүрийн хаягийг хөндөгдөөгүй хадгалдаг. Алс сүлжээ бодит эх үүсвэрийг харж, бүртгэж, хост тус бүрийн дүрэм хэрэглэж эсвэл хариултыг шууд тэр хаяг руу илгээж чадна. Энэ харагдац бол бүхэл утга бөгөөд үүрэг хариуцлага дагуулдаг: алс талд LAN префикс рүү туннелээр буцах маршрут байх ёстой. Дүрмийг асаахаас өмнө тэр маршрутыг төлөвлөөрэй, учир нь туннель ямар ч байсан босох бөгөөд зөвхөн хариултууд дутах болно.

Алдааны горимууд амлалтууд шиг л ялгаатай. Дутуу маскарад дүрэм нь хувийн эх үүсвэртэй гарч, хэзээ ч буцаж ирдэггүй пакетууд үүсгэдэг. Дутуу буцах маршрут нь бодлогын маршрутлалд ижил шинж тэмдэг өгдөг, гэхдээ засвар нь гарцад биш, алс маршрутлагчид хамаарна.

Маскарад: алс талд нэг түнш

Маскарадын замд чухал дараалал бий. Ямар ч NAT дүрэм ашигтай болохоос өмнө дамжуулалт асаалттай байх ёстой, шүүлтүүрийн хүснэгт хоёр чиглэлд нэвтрэхийг зөвшөөрөх ёстой, зөвхөн тэгээд л туннелийн интерфейс дээр хөрвүүлэлт хэрэгжинэ.

sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -i eth1 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Клиентүүдэд гарц руу явах зам хэрэгтэй хэвээр. Нэг бол гарц нь тэдний анхдагч маршрутлагч, эсвэл тэд алс префикс рүү тусгай маршрут авч явдаг; хэрэв тусдаа маршрутлагч анхдагч хэвээр үлдвэл тэр маршрутлагчид туннелийн очих газрууд руу статик маршрут хэрэгтэй, эс бөгөөс гарц харахаас өмнө пакет буруу хоп руу явна.

DNS нь тусдаа шийдвэр. Алс талын шийдэгч зөвхөн хариулт нь клиент рүү буцаж чадвал хариулдаг. Маскарадын үед асуулга гарцаас ирж байгаа мэт харагддаг тул шийдэгчийн буцах зам аль хэдийн хангагдсан; бодлогын маршрутлалд шийдэгчид бусад алс үйлчилгээний адил ижил буцах маршрут хэрэгтэй.

Бодлогын маршрутлал: эх үүсвэрийг хадгал, буцах зам нэм

Бодлогын маршрутлал хүснэгт болон түүнийг сонгодог дүрмээр эхэлдэг. LAN интерфейсээс орж ирэх урсгал тусгай хүснэгт рүү илгээгдэж, тэр хүснэгт туннелээр дамжсан анхдагч маршрут агуулдаг. Үндсэн хүснэгт хөндөгдөөгүй үлддэг тул гарц өөрөө үүсгэсэн урсгал өөр замаар явж чадна.

ip rule add iif eth1 table vpn
ip route add default dev tun0 table vpn

Дараа нь алс тал LAN префиксийг туннелээр буцааж маршрутлах ёстой. Энэ нь энэ гарцад биш, алс маршрутлагчид хийх тохиргоо. Гарц мөн үндсэн хүснэгтийн хүлээхээс өөр интерфейсээр ирэх хариултыг хүлээж авах ёстой; хатуу горим тэдгээр пакетийг хаях үед сул урвуу замын шүүлтүүр (rp_filter 2 болгож тохируулсан) ердийн засвар.

Хоёр туннель идэвхтэй үед урсгал бүрийг орох үед тэмдэглэж, тэмдэг хүснэгтийг сонгохыг зөвшөөр. Зөвхөн оролтын интерфейс рүү хардаг дүрэм хоёр туннелийн урсгалыг нэг хүснэгт рүү илгээдэг тул хоёр дахь туннель эхнийхээс урсгалыг хулгайлдаг. Тэр тэмдгийг дахин холбогдолтыг даван туулах холболтоор туршаарай, холимог бодлого тэгэхэд л илэрдэг.

Эзэмшил болон алс тал юу бүртгэдэгээр шийд

Хэрэв туннель үйлчилгээ үзүүлэгчид дуусвал маскарад хэрэглэ. Тэр оператор таны хувийн LAN хүрээг маршрутлахгүй бөгөөд гарцын чинь ард байгаа тусдаа клиентүүдийг ялгах шалтгаан түүнд байхгүй. Нэг харагдах түнш л түүний бодлого дэмждэг цорын ганц загвар тул түүнд түүнийг өгч, хөрвүүлэлтийг өөрийн зах дээр бариарай. Үйлчилгээ үзүүлэгч нэг түншийг хардаг, энэ нь яг түүний бодлогын хүлээж байгаа зүйл бөгөөд таны клиентүүд тэр нэг таних тэмдгийг өвлөнө.

Хэрэв хоёр зах чинь өөрийн чинь бөгөөд алс үйлчилгээнүүд эх хаягаар ажилладаг бол бодлогын маршрутлал өөрийн нэмэлт маршрутад хүртэх ёстой. Тэгвэл галт хананы дүрэм, хэрэглэгч тус бүрийн хандалт, аудитын бүртгэл клиентүүдийг ялгаж чадна. Хэрэв алс талд зөвхөн хүртээмж хэрэгтэй бол маскарад илүү энгийн бөгөөд буцах маршрутын алдааны бүхэл ангийг арилгадаг.

Хибрид загварууд хэвийн: өөрийн сүлжээнд бодлогын маршрутлал, үйлчилгээ үзүүлэгчийн зах дээр маскарад. Чухал нь аль хоп хөрвүүлж, аль хоп маршрутладагыг бичиж үлдээх, учир нь нэг клиентэд санамсаргүй нэмсэн NAT дүрэм ижил гинжин хэлхээний клиент бүрээс эх үүсвэрийг нуудаг.

Нэг клиентээс шалга, дараа нь хоёр дахь клиентээс

Урсгал эхлэх газарт туршилтыг явуул. Хост ашигладаг маршрутыг шалга, пакет туннелийн интерфейс дээр гарч ирэхийг ажигла, хөрвүүлэлтийн хувьд conntrack-ийг шалга. Энэ дараалал пакет зориулсан замаар явсныг батална, зүгээр л хаа нэгтээ хүрснийг биш.

Дахин холбогдолтын дараа туршилтыг давт. Интерфейсийг нэрлэсэн маскарад дүрэм шинэ туннелийн хаяг дээр тэсдэг; хуучин хаягийг нэрлэсэн дүрэм тэсдэггүй. Дараа нь хоёр дахь LAN хост туршаарай, учир нь нэг машин дээр ажилладаг загвар нь ихэвчлэн тухайн машины өөрийн маршрутаас хамаардаг, гарцын бодлогоос биш.

Сонгосон загвар, хөрвүүлсэн эсвэл хадгалсан эх үүсвэр, буцах маршрутын эзнийг гарцын тэмдэглэлд бич. Эс бөгөөс клиент эсвэл туннель нэмэх дараагийн хүн таамаглана, таамаглал нь ажиллаж байсан LAN-аас-VPN тохиргоог хагас дутуу болгох зам.

Холбоотой нийтлэлүүд