OpenVPN дээгүүр хуваагдсан DNS: үйлдлийн систем бүр дээр чиглүүлэлтийн домэйн юу хийх ёстой
Хайлтын дагавар, чиглүүлэлтийн домэйн, IP маршрут гэдэг нь гурван өөр зүйл юм. Платформ бүрд бодлогыг тохируулаад, асуултад аль сервер хариулсныг нотлоорой.
Хуваагдсан DNS-ийн асуулт бүр нэг өгүүлбэрээр эхэлдэг: компанийн нэрс компанийн DNS-д явж, бусад бүхэн ажилласаар байна. Тэр өгүүлбэрийг тохиргоо болгох гэдэг нь үйлдлийн систем бүрд гурван асуултад хариулахыг хэлнэ, хариултууд нь тус бүрд өөр өөр механизм ашигладаг. Linux зөөврийн компьютерт ажилладаг профайлууд Windows дээр туннельтай огт холбоогүй шалтгаанаар бүтэлгүйтдэг. Ялгаа нь ихэвчлэн маршрут гэж андуурсан резолверын тохиргоо байдаг.
Эхлээд бодлогыг нэрлээд, дараа нь түүнийг илэрхийлэх платформын примитивийг сонгоорой.
Андуурахад хялбар гурван тохиргоо
Хайлтын дагавар богино нэрийг өргөтгөдөг: files гэж бичихэд резолвер дагавруудыг дараалан турших үед энэ нь files.corp.example болдог. Чиглүүлэлтийн домэйн нь нэрийн орон зайн доторх асуултад аль резолвер хариулахаа сонгодог. IP маршрут нь зөвхөн сонгосон резолверыг хүртээмжтэй болгодог. Эдгээр гурав өөр өөр давхаргад амьдардаг бөгөөд нэгийг нөгөөгөөр сольсноор зөв харагдах боловч юу ч шийдэхгүй тохиргоо гардаг.
Эргэлзээ нь үнэтэй: хайлтын дагавар нэмбэл бүх богино нэр ажлын резолвер руу явдаг, өөр газар хамаарах нэрс ч орно. Чиглүүлэлтийн домэйн сонгосноор холбоогүй асуултууд локал резолвер дээр үлдэж, нэгэн зэрэг *.corp.example туннелээр явдаг.
Linux: зөвхөн маршрутын домэйн, хайлтын дагавар биш
systemd-resolved дээр тильдээр эхэлсэн домэйн нь зөвхөн маршрутын домэйн бөгөөд энэ нь тухайн нэрийн орон зайн асуултууд холбогдсон резолвер руу явж, хайлтын дагавар болохгүй гэсэн үг юм. resolvectl domain tun0 '~corp.example' үүнийг тохируулж, resolvectl dns tun0 10.8.0.1 серверийг нэрлэнэ. Хоёр тохиргоо интерфэйсэд хамаарах тул түүнтэй хамт алга болно. Тильда бол хүмүүсийн орхигдуулдаг хэсэг бөгөөд түүнгүйгээр богино нэрс ажлын резолвероор шийдэгдэж эхэлдэг.
Мөн адил домэйныг глобал хайлтын дагавар болгон бүү суулгаарай. Хоёр тохиргоо илүүдэл биш; нэг нь чиглүүлж, нөгөө нь таны бичсэнийг дахин бичдэг.
Windows-д нэрийн орон зайн бодлого хэрэгтэй, дагавар биш
Windows хуваагдсан DNS-ийн бодлогыг адаптерын DNS дагаварт биш Name Resolution Policy Table-д хадгалдаг. Дүрэм нь нэрийн орон зайг тодорхой сервертэй холбодог: Add-DnsClientNrptRule -Namespace .corp.example -NameServers 10.8.0.1. Зөвхөн дагаврыг тохируулах нь богино нэрс хэрхэн харагдахыг өөрчилдөг; энэ нь асуултыг өөр сервер рүү чиглүүлэхгүй.
Холбогдсоны дараа Get-DnsClientNrptPolicy-оор үр дүнтэй бодлогыг шалгаарай, учир нь өмнөх холболтын дүрэм туннелээс удаан амьдрах боломжтой. Туннель унах үед дүрмүүдийг нэрээр нь устгаж, цэвэрлэгээ зөв бичлэгт хүрэхийн тулд харуулах нэрийг тогтвортой байлгаарай.
Платформ бүрд нэг резолверын эзэн
Ажлын тавцангийн менежер, OpenVPN-ийн up скрипт болон локал резолверын демон бүгд ижил тохиргоог бичихийг оролдож болно. Тэд санал нийлэхгүй үед хамгийн сүүлд бичсэн нь ялж, үр дүн нь задлах дарааллаас хамаардаг. Резолверын төлөвийг эзэмших нэг бүрэлдэхүүнийг сонгоорой, бусад нь бичихийн оронд мэдээлэх болтугай, мөн дахин холболтыг туршаарай: бодлого дүрмүүдийг давхардуулахгүйгээр түүнийг давах ёстой. Салгалтыг ч туршаарай, учир нь үлдсэн төлөв л дараагийн холболтыг өөрөөр ажиллуулдаг.
Өөрийн шифрлэгдсэн резолверыг авч ирдэг програмууд үйлдлийн системийн бодлогыг бүрэн үл тоомсорлодог. Энэ нь програмын шинж чанар, туннелийн алдаа биш.
Үр дүнг шалгаарай, профайлын текстийг биш
Туннелээр гарах ёстой нэрийг нэг, гарах ёсгүй нэрийг нэг платформ бүр дээр шийдэж, аль сервер хариулсныг баталгаажуулаарай. resolvectl query host.corp.example болон Resolve-DnsName host.corp.example хоёулаа хариулсан серверийг мэдээлдэг. Дахин холбогдсоны дараа давтаарай. Дараа нь туннелийн резолвер профайлын түлхэж буй хаяг дээр хүртээмжтэй эсэхийг баталгаажуулаарай, учир нь хүртээмжгүй сервер рүү заасан зөв бодлого ч бодлого огт байхгүйтэй адил бүтэлгүйтдэг.
Зорьсон зан үйлийг профайлын тэмдэглэлд тэмдэглээрэй: аль дагавар чиглүүлж, аль сервер түүнд хариулж, бусад бүхэнд юу тохиолдохыг. Дараа нь таны дэмжих платформд тохиргооны файлаас илүү тэр өгүүлбэр хэрэгтэй болно.