Справаздача пра DNS у VPN: што ўключыць, каб яе можна было прайграць
Карысная справаздача пра DNS называе катэгорыю збою, шлях да рэзалвера і дакладны адказ. Схавайце прастору імён, пакіньце сувязі, якія яе тлумачаць.
«DNS зламаны» — гэта выснова, і яна не тая, з якой памочнік можа нешта зрабіць. Карысная частка справаздачы — гэта форма збою: якое імя, праз які рэзалвер, з якім адказам. Тры дэталі ператвараюць скаргу ў нешта паўторнае, і ўсе тры бяспечна дзяліць, калі прыватныя часткі перайменаваныя. Далей ідзе мінімум, які патрэбны справаздачы пра DNS у VPN, перш чым хто-небудзь зможа дапамагчы.
Катэгорыя імені, а не прысуд
Пачніце з самога імені і класіфікуйце яго: публічнае, унутранае, кароткае, цалкам кваліфікаванае або абслугоўванае адным пэўным суфіксам. Унутранае імя, якое не спраўляецца, пакуль публічныя імёны вырашаюцца, паказвае на выбар рэзалвера, а не на дасяжнасць. Калі не спраўляюцца ўсе імёны, гэта паказвае на шлях да рэзалвера, а гэта іншае расследаванне з іншымі доказамі. Катэгорыя нясе дыягназ, а дакладны радок можна схаваць.
Скажыце, ці патрэбны збою ўзняты тунель, ці ён адбываецца пасля адключэння. Імя, якое ламаецца толькі пры актыўным VPN, паказвае на канфігурацыю для кожнага злучэння, а тое, што ламаецца пасля адключэння, — на рэшткавы стан. Справаздачы звычайна гэта апускаюць і потым дзівяцца, чаму першая парада не дапамагае.
Запішыце шлях да рэзалвера
Запыт, адпраўлены на яўна выбраны сервер, і звычайны пошук праграмы — гэта розныя эксперыменты. Скажыце, які з іх выклікаў збой, бо ручны запыт да працоўнага сервера даказвае толькі тое, што сервер працуе. Каманды ніжэй аддзяляюць сістэмны шлях ад прамога пытання.
resolvectl status --no-pager
getent hosts host.internal
dig +short host.internal @10.20.30.53
Вывад стану называе серверы для кожнага злучэння і дамены маршрутызацыі, а гэта дзе вызначаецца split DNS. Выклік getent ідзе тым жа шляхам, што і праграма, уключаючы парадак nsswitch. Прамы запыт абыходзіць абодва і правярае адзін сервер ізалявана. Паведаміце, які з трох не спраўляўся і які атрымаўся, і чытачу больш не трэба здагадвацца пра шлях.
Пакажыце кантраляванае параўнанне
Змяніце адну зменную і скажыце, што змянілася. Публічныя імёны вырашаюцца, а ўнутраныя не — гэта праблема выбару; кожнае імя сканчаецца па тайм-аўце — гэта праблема шляху; а прыватнае імя, якое вырашаецца ў публічны адрас, — гэта ўцечка ў няправільны рэзалвер. Дзве з гэтых трох не маюць ніякага дачынення да таго, ці ўзняты тунель. Справаздача, якая сцвярджае, што ўсе запыты зламаныя, звычайна ўтрымлівае параўнанне, якое так і не правялі.
Аддзяліце вырашэнне ад дастаўкі. Калі імя вырашаецца, а сайт усё яшчэ не працуе, этап DNS прайшоў паспяхова, і справаздача павінна гэта сказаць, бо наступны крок — гэта маршрут або слухач, а не рэзалвер. Гэтае адзінае адрозненне часцей за любы фрагмент журнала зэканоміць цэлы раўнд пытанняў.
Схавайце прастору імён, пакіньце сувязі
Унутраныя імёны можна замяніць, абы замены захоўвалі структуру. Спавяжыце кожны асобны сервер і суфікс з пастаяннай пазнакай і трымайце гэту адпаведнасць па-за агульнай копіяй. Замена кожнага ўнутранага хоста адным і тым жа запаўняльнікам знішчае менавіта тыя доказы, якія патрэбны справаздачы, бо чытач больш не бачыць, што адзін суфікс вырашыўся, а другі не. Тое ж правіла дзейнічае для адрасоў: захавайце сувязі прэфіксаў і змяніце біты хоста, калі гэтага патрабуе палітыка.
Дашліце запіс па правераным канале і апусціце тое, што дыягназу ніколі не патрэбна. Паролі, прыватныя ключы і староннія назвы кампаній не ўваходзяць у пытанне пра DNS. Чытачу патрэбны катэгорыя збою, шлях да рэзалвера, дакладная памылка і тое адзінае параўнанне, якое вы правялі.