Нэг OpenVPN зангилаа, гурван LAN: хаягийн төлөвлөгөө ба iroute файлууд
Дөрвөн давхцаагүй префикс, салбар бүрт нэг цөмийн маршрут, эзэмшигч бүрт нэг iroute. Нэр буруу үед чимээгүй бүтэлгүйтдэг гурван талбайт зангилааны ажлын дараалал.
Гурван хувийн LAN нь аль ч талбай бусдын дотоод бүтцийг мэдэхгүйгээр нэг зангилаанд уулзаж болох бөгөөд бүх загвар дөрвөн богино тохиргооны шийдвэрт тулгуурладаг. Үүнийг ажиллуулж байгаа нь экзотик протоколын шинж биш, харин хэн ч таах шаардлагагүй хаягийн төлөвлөгөө, мөн аль салбар аль префиксийг эзэмшиж байгааг зангилаанд хэлдэг үйлчлүүлэгч тус бүрийн маршрутууд юм. Эдгээрийн аль нэг нь буруу болсон ч туннель өргөгдсөн хэвээр байх бөгөөд яг энэ нь алдааг ойлгомжгүй болгодог.
Алхмуудыг дарааллаар нь гүйцэтгэ. Алхам бүр өмнөх алхмын төлөвлөгөөнөөс хамаарах бөгөөд аль нь ч шинэ гэрчилгээний байгууллага шаарддаггүй.
Хэн ч таах шаардлагагүй төлөвлөгөөнөөс эхэл
Тохиргооны файлд хүрэхээс өмнө дөрвөн давхцаагүй префиксийг бичиж аваарай: зангилааны өөрийн LAN, салбар бүрийн LAN, мөн аялагч үйлчлүүлэгчдэд олгох пул. Давхцаагүй байдал нь бусад бүхнийг энгийн байлгадаг, учир нь давхцсан хүрээнүүд чиглүүлэлтийг хамгийн урт тохирлын оньсого болгож, үүнийг ямар ч үйлчлүүлэгч тус бүрийн тохиргоо засаж чадахгүй. Дараа нь аль машин LAN бүрийн анхдагч гарц болохыг баталгаажуул, учир нь өөрийн LAN-ийн гарц биш салбарын чиглүүлэгч алсын маршрутуудыг огт өөр газарт суулгах шаардлагатай. Эцэст нь салбар бүрийг тодорхойлдог баталгаажсан нэрсийг тогтоо, учир нь тэдгээр нэр нь үйлчлүүлэгч тус бүрийн файлыг хайх түлхүүр юм.
Жишээ төлөвлөгөө пулыг гурван LAN-аас нэлээд хол байлгадаг. Таны төлөвлөгөө өөр байх бөгөөд цорын ганц хатуу дүрэм нь ямар ч хоёр хүрээ давхцахгүй байх явдал юм.
Hub LAN 172.20.0.0/24
Branch A LAN 172.21.0.0/24
Branch B LAN 172.22.0.0/24
VPN pool 10.77.0.0/24
identity branch-a owns 172.21.0.0/24
identity branch-b owns 172.22.0.0/24Зангилааны цөмд салбарууд хаана байгааг хэл
Зангилаанд салбар бүрт хоёр мэдээлэл хэрэгтэй: префиксийг туннелийн төхөөрөмж рүү илгээдэг цөмийн маршрут, мөн iroute бичлэг, өөрөөр хэлбэл аль үйлчлүүлэгч үүнийг эзэмшиж байгааг OpenVPN процессд хэлдэг бичлэг. Зөвхөн цөмийн маршрут пакетуудыг туннельд хүргээд тэнд зогсдог, учир нь демон аль пир хүлээн авахыг шийдэх ёстой хэвээр байна. Зөвхөн iroute бичлэг тэдгээр пакетыг дагах маршрутгүйгээр цөмд үлдээдэг. Хоёр мөр нь демонын бодитоор ачаалдаг тохиргоонд хамаарах бөгөөд үүнийг өөр зүйлийг дибаг хийхээс өмнө шалгах нь зүйтэй.
dev tun
topology subnet
server 10.77.0.0 255.255.255.0
disable-dco
route 172.21.0.0 255.255.255.0
push "route 172.20.0.0 255.255.255.0"
client-config-dir /etc/openvpn/ccd
route 172.22.0.0 255.255.255.0Цөм нь дүрмийг хэрэгжүүлэх цэг байх ёстой үед client-to-client-ийг унтраалттай байлга. Тэр сонголт пирүүдийн хоорондын урсгалыг демоны дотор дамжуулдаг нь тохиромжтой боловч таны дамжуулалтын дүрмүүд урсгалыг хэзээ ч хардаггүй гэсэн үг. Доорх бүхэн цөм салбаруудын хоорондын пакет бүрийг хардаг гэж үзнэ.
Салбар бүрт хэрэгтэй маршрутуудыг өг
Салбар бүрт бусад салбар руу болон зангилааны LAN руу маршрут хэрэгтэй, өөрийн холбогдсон LAN руу маршрут хэрэггүй. Алсын префиксүүдийг чиглүүлэгч бүрт наахын оронд зангилаанаас түлхэж өг, тэгвэл дөрөв дэх талбай дараа нь дөрвөн өөрчлөлтийн оронд нэг шинэ үйлчлүүлэгч тус бүрийн файл болно. Үйлчлүүлэгч тус бүрийн файл мөн iroute мөрийг агуулдаг бөгөөд энэ нь эзэмшил, зарлалыг нэг газарт байлгадаг. Серверийн эрхийн загварын дагуу каталог болон түүний файлуудыг уншигдахуйц болго, эс бөгөөс хайлт мессежгүйгээр бүтэлгүйтнэ.
# /etc/openvpn/ccd/branch-a
iroute 172.21.0.0 255.255.255.0
push "route 172.22.0.0 255.255.255.0"Дөрөв дэх талбай мөн адил загварыг дагадаг: тусдаа баталгаажсан нэр, эзэмшсэн префикс, зангилааны цөмийн маршрут, iroute бичлэг, мөн түүнд хүрэхийг зөвшөөрсөн талбайнууд руу л зарлал.
Дууссан гэж хэлэхээс өмнө хоёр чиглэлд туршиж үз
Гурван чиглүүлэгч дээр IPv4 дамжуулалтыг асаа, дараа нь галт хана зориулалтын урсгалыг хоёр чиглэлд зөвшөөрч байгааг батал, учир нь нэг чиглэлийн туршилт эвдэрсэн буцах замтайгаар хэн ч хүлээхээс илүү олон удаа тэнцдэг. Талбайнуудын хооронд эх хаягийг хөрвүүлэх шаардлагагүй бөгөөд анхны эх хаягийг хадгалах нь салбар бүрт хүсэлтэд өөрийн бодлогыг хэрэглэх боломжийг олгодог зүйл юм.
Нэг салбарын LAN дахь хостноос нөгөө салбарын үйлчилгээ рүү турш, дараа нь чиглэлийг эсрэг эргүүл, дараа нь салбараас зангилааны LAN руу турш. Тэдгээр гурван үр дүн нь өөр өөр нотолгоо бөгөөд аль нь ч бусдыг нь илэрхийлэхгүй. Хэрэв салбарын чиглүүлэгч өөрийн LAN-ийн анхдагч гарц биш бол алсын префиксүүдийг бодит гарц дээр суулга, мөн туннелийн үйлчлүүлэгчид тэр LAN руу холболт эхлүүлэх шаардлагатай үед пулыг ч оруул.
Төлөвлөгөө, үйлчлүүлэгч тус бүрийн файлууд, галт хананы дүрмийг нэг баримт бичиг болгон тэмдэглэ, учир нь дараагийн талбайн нэмэлт тэдгээрээр үнэлэгдэнэ.
Загвар нь нэгдмэл байдаг, учир нь давхарга бүр нэг л ажилтай: төлөвлөгөө префиксүүдийг өвөрмөц байлгадаг, цөмийн маршрут пакетуудыг хөдөлгөдөг, iroute эзэмшигчийг нэрлэдэг, галт хана юу зөвшөөрөгдөхийг шийддэг. Ямар нэг зүйл эвдэрвэл тэр жагсаалт нь шалгах дараалал болдог.