Тест за изтичане на DNS: името на резолвера не е маршрутът
Името на резолвера не може да ви каже дали DNS е заобиколил тунела. Определете политиката, която сте искали, след което сравнете получателя, маршрута и изключенията.
Три подредби се считат за правилен DNS за потребител на VPN: заявки към резолвера на оператора, заявки към криптиран резолвер, който сами сте избрали, и split DNS, който изпраща работните имена към организацията. Тестът за изтичане съобщава резолвер и този единствен етикет не може да ви каже коя подредба всъщност имате. Първо определете желаната политика, после тествайте спрямо нея. Иначе сравнявате число с усещане.
Определете какво сте искали, преди да прочетете резултата
Назовате политиката с едно изречение: всички имена към VPN резолвера, всички имена към избран криптиран резолвер или split DNS, при който вътрешните имена отиват към организацията. Всяка е защитима за различен потребител и всяка дава различен очакван отговор. Без това изречение всеки резултат, който се различава от екранна снимка във форум, изглежда тревожен. Запишете политиката преди първия тест.
Тест, направен преди политиката да е определена, не измерва нищо. Той дава име на резолвер без точка за сравнение.
Името на резолвера не доказва нито пътя, нито получателя
Два въпроса са важни: кой е получил заявката и кой маршрут я е пренесъл. До резолвер на трета страна може да се стигне през тунела, докато екранът с настройки показва адреса на доставчика. Етикетът на страницата за тест описва гледната точка на наблюдателя, а не вашата таблица за маршрутизация.
Браузърът може да използва собствения си криптиран DNS, докато трафикът на сайтовете минава през тунела, а кешираните отговори могат да позволят страница да се зареди без ново търсене. Затова резултатът за публичен IP не казва нищо за DNS. DoH и DoT защитават заявката по пътя към резолвера и този резолвер все още вижда имената.
resolvectl status
resolvectl query example.com
dig +short example.com
Split DNS прави множеството резолвери правилно
Организацията може да изпраща вътрешните имена към своя DNS, а всичко останало другаде. Затова тест, който изброява няколко резолвера, може да описва желаната политика, а не дефект. Сравнете наблюдаваното множество с документираните правила за split DNS, преди да изключвате нещо. Изключването на вътрешния резолвер, за да изглежда тестовата страница по-чиста, чупи частните имена.
Split tunneling и split DNS са различни избори: едното маршрутизира пакети, другото — въпроси. Промяната на маршрут на тунела не мести търсене на име, а промяната на резолвера не поправя път до сайт. IPv6 е трети въпрос, защото нежелана IPv6 връзка не е автоматично изтичане на DNS.
Превърнете резултата в разследване
Запишете желаната политика и настройката за защитен DNS на браузъра преди теста. Изпълнете теста с активен тунел, отбележете всеки резолвер, който той посочва, и сравнете множеството с политиката, а не с един очакван адрес.
Повторете след повторно свързване, ако симптомът се появява тогава, защото политика, приложена при свързване, може да се загуби по-късно. Използвайте документацията на клиента за вътрешни DNS изключения, вместо да гадаете настройките.
Отстранете несъответствието, което намерихте: избор в браузъра, DNS настройка на VPN или правило за split DNS. Ако заявките трябва да спрат при отказ на тунела, kill switch е отделна настройка и само DNS конфигурация няма да я осигури. Спецификацията RFC 8484 е полезна, когато трябва да обясните какво криптираният резолвер скрива и какво не.