Та туннель холбож, хувийн хяналтын самбар нээхэд нэр таны хэзээ ч хараагүй хаяг руу шийдэгдэнэ. Эсвэл эсрэгээрээ болно: хөтөч ажилласаар байтал тушаалын мөрийн хэрэгсэл гэнэт юу ч шийдэхгүй болно. Хоёр үр дүн нэг л өөрчлөлтөөс гардаг бөгөөд хүмүүс үүнийг ихэвчлэн VPN "өөрийн DNS-ийг ашигладаг" гэсэн нэг өгүүлбэрээр тайлбарладаг нь алдаа засах, шалгахад хангалттай нарийвчлалгүй юм. Тэр өгүүлбэрт хоёр асуулт нуугдаж байна: энэ профайл ямар асуулгыг хүлээж авах ёстой, мөн таны машин тэдгээрийг өөрт нь өгсөн резолверт үнэхээр илгээсэн үү? Тэдгээрийг тусгаарлах нь бүх арга юм, учир нь тэдгээрийг хольсон тест хоёр чиглэлд итгэлтэй буруу хариулт өгдөг.

Профайл яагаад резолвер өгдөг вэ

Туннелийн дотор, алслагдсан төгсгөлийн цаанаах нэрс ихэвчлэн зөвхөн тэр сүлжээнд байдаг хаяг руу шийдэгддэг. corp.internal зэрэг хувийн бүсэд нийтийн төлөөлөл байхгүй тул түүнд хариу өгөх резолвер туннелийн дотроос хүрэх боломжтой байх ёстой. Мөн механизм нь хоёр дахь зорилгод үйлчилдэг: хэрэв асуулга өөр замаар таны үйлчилгээ үзүүлэгчээр гарч байсан бол алслагдсан талын резолвер асуулгыг шифрлэгдсэн зам дотор барина. Тиймээс DNS серверийн хаяг нь холболтын бодлогын хэсэг болж ирдэг бөгөөд машиндаа нэг удаа сонгосон глобал тохиргоо биш юм.

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

Хариултыг харьцуулахын өмнө хоёр загварыг харьцуул

Бүрэн туннель болон хуваагдсан DNS нь эсрэг хүлээлт үүсгэдэг бөгөөд аль нь ч гэмтэл биш. Бүрэн туннелийн үед асуулга бүр үйлчилгээ үзүүлэгч эсвэл корпорацийн резолвер руу шилжиж болох тул холбогдсоны дараа нийтийн нэр өөр хариулах нь хүлээгдэж байна. Хуваагдсан DNS-ийн үед зөвхөн жагсаалтад орсон домэйн хувийн резолвер руу явж, бусад нь локал хэвээр үлддэг; Windows-д домэйны жагсаалт Name Resolution Policy Table-д, macOS-д DNS тохиргооны тохирох домэйнуудад, systemd-resolved хост дээр холболт тутмын чиглүүлэлтийн домэйнуудад байдаг.

Энэ харьцуулалтыг хамгийн түрүүнд хийх ёстой, учир нь юуг гэмтэл гэж үзэхийг энэ шийддэг. Хуваагдсан DNS-ийн үед шинэ резолвероос хариулж буй нийтийн нэр бол судлах үнэ цэнэтэй зүйл, харин зөв хариулж буй дотоод нэр бол систем өөрийн ажлаа хийж байгаа хэрэг. Бүрэн туннелийн үед гажиг нь таны үйлчилгээ үзүүлэгчийн резолвероос одоо ч хариулж буй нийтийн нэр юм. Microsoft-ийн VPN нэр шийдвэрлэлтийн талаарх баримт бичиг эдгээр дүрмийн Windows дарааллыг, түүний дотор тохирох бодлогын бичлэгийг адаптерын өөрийн серверүүдээс өмнө хэрхэн авч үздэгийг тайлбарладаг.

Өрөөнд мартахад хялбар гурав дахь резолвер байна. Хөтөчийн аюулгүй DNS нэрсийг өөрөө шийдэж, туннель үйлдлийн системийн бодлогыг өөрчилсний дараа ч хариулсаар байж болно, тиймээс ачаалсан хуудас нь хөтөчийн резолвер ажилласныг батална, профайл хэрэглэгдсэнийг биш. Хэрэв зөвхөн хөтчийн харуулж буйг харьцуулбал, хагас хугацаанд буруу давхаргыг шалгаж байна.

Зөвхөн нэг хувьсагчтай суурь шугам бүртгэ

Туннелийг өөрчил. Нэг алхамд нэр, хэрэгсэл эсвэл хайлтын дагаварыг зэрэг бүү өөрчил. Асууж болох нэрийг сонгож, ямар програмыг ашигласнаа тэмдэглэ, буцаж ирсэн хаяг эсвэл яг алдааг бич. Windows-д Get-DnsClientServerAddress -AddressFamily IPv4 адаптер тус бүрийн серверүүдийг, Get-DnsClientNrptPolicy бодлогын бичлэгүүдийг хэвлэнэ; systemd-resolved-той Linux-д resolvectl status холболт тутмын DNS сервер болон чиглүүлэлтийн домэйныг харуулна; macOS-д scutil --dns систем үнэхээр дагах резолверын дарааллыг хэвлэнэ.

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

Тодорхой асуулга болон програмын хайлт нь өөр өөр тест

Нэг тодорхой серверээс nslookup name 10.20.0.1 эсвэл dig @10.20.0.1 name ашиглан асуух нь нэг зүйлийг батална: таны нэрлэсэн сервер хүрэх боломжтой үед хариулдаг. Энэ нь сонголтын логикийг бүрэн тойрдог тул систем энэ нэрэнд тэр серверийг сонгох байсан эсэхийг хэлж чадахгүй. Үүнийг томилогдсон резолверт хүрэх боломжтой эсэхийг шалгахад ашигла, бодлогыг шалгахад бүү ашигла.

Локал резолвероор хийсэн хайлт нь сонголтыг үнэхээр ашигладаг. resolvectl query name ижил чиглүүлэлтийн домэйны дүрмээр явж, ямар протокол хариулсныг мэдээлнэ, Windows-д Resolve-DnsName бодлогын хүснэгт болон клиентийн кэшээр дамжина, scutil --dns хайлт дагах дарааллыг харуулна. Хоёр төрлийг ажиллуулж, тэдгээрийг тэмдэглэлийнхээ тусдаа баганад хадгал. Амжилттай тодорхой асуулга амжилтгүй програмын хайлтын хажууд байвал энэ нь чиглүүлэлт эсвэл сонголтын асуудал бөгөөд ажиллахаас татгалзсан резолвер биш.

Кэш таны болон хариултын хооронд зогсож байна. Үйлдлийн систем, локал stub резолвер, хөтөч болон сөрөг кэш бүгд үр дүнг хадгалдаг тул нэг ч пакет машин орхихгүйгээр хайлт амжилттай болж болно. Щохойг цэвэрлэхийн өмнө үр дүнг бүртгэ: ipconfig /flushdns, resolvectl flush-caches эсвэл macOS-д sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder. Энэ үе шатанд өргөн сүлжээний дахин тохируулгыг алгас, учир нь энэ нь таны одоо ч цуглуулж буй нотолгоог устгадаг.

Энэ ялгаа юу гэсэн үг

Бүртгэсэн хоёр мөрийг харьцуулж, нэг ч тохиргоонд хүрэхийн өмнө өөрчлөлтийг ангил.

Observation after connectMost likely causeNext step
Answer moves to a private address rangeExpected under split DNS or a private zoneConfirm the suffix is in the effective policy, then test the service
Lookup times out while connected, works after disconnectThe assigned resolver has no route from this machineProbe it with an explicit query, then re-read the policy
Internal name fails, public names workWrong namespace or a suffix missing from the policyQuery the fully qualified name and check the domain list per platform
Internal name returns a public addressSplit DNS not applied; a public resolver answeredCheck browser secure DNS first, then the per-link domain list

Нэг мөр онцлох үнэ цэнэтэй. Шийдэгддэг нэр бол ажиллаж буй үйлчилгээ биш бөгөөд DNS-ийн амжилт зөвхөн хаяг олдсоныг хэлнэ. Энэ нь дамжуулалт, галт хананы дүрэм эсвэл таны бүртгэл үйлчилгээг огт ашиглаж болох эсэхийн талаар юу ч хэлэхгүй тул гэмтэл өөрөө явсан гэж таамаглахын оронд бодит програмыг туршиж дуусга.

Суурь шугамыг сэргээж, шалга

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

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

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