Тэст уцечкі 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 карысная, калі трэба патлумачыць, што шыфраваны рэзалвер хавае, а што не.