Windows VPN-ийн DNS алдагдал: яагаад метрик замналаас илүү
Windows резолверыг зөвхөн замналаар бус, интерфэйсийн метрикээр сонгодог. Wi-Fi-аас доогуур эрэмбэлэгдсэн туннелийн адаптер бүх пакет туннелээр явж байхад ч хайлтыг алдалт хийж болно.
Асуулга машинаас гарч гэрийн маршрутлагчд хүрнэ, харин пакет бүр туннелээр явж байна. Байгалийн дүгнэлт бол алга болсон замнал боловч замнал ихэвчлэн хэвийн байдаг. Windows интерфэйсийн метрикээр аль интерфэйсийн резолвероос асуухаа сонгож чаддаг бөгөөд туннелийн адаптер энэ харьцуулалтад утасгүй интерфэйст ихэвчлэн ялагддаг.
Нэг алдагдлын хоёр тайлбар
Замналын тайлбар нь траффикийн нэг хэсэг туннелээс гарч байна гэж үздэг тул анхдагч замнал эсвэл хуваагдсан туннелийн жагсаалт буруу байх ёстой. Тэр тайлбарыг нэг тушаалаар шалгаж болох бөгөөд анхдагч замнал туннел рүү зааж байвал асуудал хаагдана. Хямд тул эхлээд шалга, дараа нь цэвэр буцаж ирвэл хажуудаа тавь.
Эрэмбийн тайлбар нь траффик бүхэлдээ туннелд байгаа бөгөөд асуулга өөр резолвер руу явсаар байна гэж үздэг. Windows резолверын сонголтыг дараалал бүхий интерфэйс тутмын шинж чанар гэж үздэг тул илүү сайн метрик бүхий физик адаптер шийдэгдсэн хаягийн пакетууд туннелээр явж байсан ч нэрэнд DNS өгч чадна. Хоёр тайлбар алдагдлын туршилтын хуудсанд ижил шинж тэмдэг үүсгэдэг, тиймээс туршилт нь онош биш. Тэдгээрийн зөвхөн нэг нь замналыг засварлаж засагдана.
Метрик ба резолверуудыг хамт харьцуул
Туннель ажиллаж байх үед интерфэйсүүд, тэдгээрийн метрик болон тохируулсан серверүүдийг тэмдэглэ. Тэдгээрийг хоёр тусдаа жагсаалт биш, хүснэгт мэт унш, учир нь асуулт аль резолвер эхэнд байгаа тухай, ямар резолверууд байгаа тухай биш.
Get-NetIPInterface -AddressFamily IPv4 | Sort-Object InterfaceMetric | Select-Object InterfaceIndex, InterfaceAlias, InterfaceMetric
Get-DnsClientServerAddress -AddressFamily IPv4 | Select-Object InterfaceAlias, ServerAddresses
Туннелийн адаптер физик адаптераас өндөр тоо авч явбал түүний резолвер давуу эрх авахгүй бөгөөд дотоод нэр физик талын санал болгосон зүйл рүү явна. Тэр маршрутлагч кэшээс хариулж, асуулгыг цааш дамжуулж эсвэл татгалзаж болох бөгөөд эдгээр үр дүнгийн аль нь ч таны төлөвлөсөн загвар биш. Эрэмбэ нь давуу тал тул алдаа гаргахын оронд чимээгүй ялагддаг.
Резолвер огт тохируулаагүй туннелийн адаптер мөн адил түгээмэл хувилбар. Клиент DNS түлхэхгүйгээр интерфэйсийг босгож, эрэмбийн асуулт огт үүсэхгүй.
Туннелийг дээшлүүлж дахин шалга
Өргөгдсөн бүрхүүлд туннелийн интерфэйст хамгийн бага метрик өг, эсвэл физик адаптерын утгыг нэмэгдүүл. Хоёулаа интерфэйс тутмын тохиргоо бөгөөд хоёулаа буцаагдана, энэ нь таны өмнө суухгүй байж болох машиныг өөрчлөхөд чухал.
Set-NetIPInterface -InterfaceIndex 27 -InterfaceMetric 1
Get-NetIPInterface -AddressFamily IPv4 | Sort-Object InterfaceMetric
Өөрчлөлт даруй харагдана, DNS клиент болон бусад хэрэглэгчид аль хэдийн хийсэн сонголтоо кэшэлдэг. Асуулгын үр дүнгээс ямар нэг зүйл уншихаас өмнө туннелийг дахин холбох эсвэл дахин эхлүүлэх хэрэгтэй. Хэт эрт хийсэн туршилт хуучин зан төлөвийг давтаж, бүтэлгүй засвар мэт харагдана.
Дараа нь нэг дотоод, нэг нийтийн нэрийг асууж, аль сервер хариулсныг шалга. Microsoft-ын автомат метрикийн лавлагаа хамгийн бага утга яагаад давуу эрх авдаг, автомат хуваарилалт хэрхэн гаргагдадгийг тайлбарладаг.
Дахин холбогдоход тэсвэртэй болго
Холболт бүрт дахин үүсдэг адаптер дээрх гараар өгсөн метрик бол алга болдог тохиргоо. Хэрэв клиент интерфэйсийг дахин барьвал энэ дарж бичихэд холболтын дараах скрипт, бодлого эсвэл холболтын хугацаанд DNS-ийг эзэмших клиентийн тохиргоо шаардлагатай.
Физик адаптер дээр статикаар тохируулсан серверүүд ижил тэсвэрлэх чадварын асуудалтай эсрэг талаас тулгардаг. Тэдгээрийг арилгах хүртэл тухайн интерфэйсийн төлөө хариулсаар байх бөгөөд DHCP дараагийн түрээсээс дахин дүүргэх тул арилгах нь хэмжилт, загвар биш. Тэсвэртэй загвар нь дотоод нэрийн орон зайд зориулсан нэр шийдвэрлэх бодлого эсвэл холболтын туршид DNS-ийг өөртөө авах клиент юм. Ямар ч тохиолдолд дахин холбогдохоос өмнө болон дараа резолверуудын жагсаалтыг тэмдэглэ, туршилт дуусахад анхны метрикийг сэргээ, өмнөх зан төлөв эргэж ирснийг баталгаажуул.