dnsmasq-тың бір жолы атауға NXDOMAIN-мен жауап бере алады, және бүкіл механизм осы. Ол ешқашан HTML оқымайды, сұраныс жолын тексермейді және қосымшаның бұрын ашқан байланысымен не істейтінін көрмейді. Сондықтан оны браузер кеңейтімімен салыстыру екі түрлі жұмысты салыстыру. Бірі атаудың шешілетінін шешеді; екіншісі одан кейін не болатынын шешеді.

Атау сүзгісі шынында нені басқарады

Соңғы қиғаш сызықтан кейін ештеңе жоқ address=/metrics.example/ опциясы шешушіні сол атау мен оның субдомендері үшін NXDOMAIN қайтаруға мәжбүр етеді. Мекенжайды бос қалдыру маңызды бөлігі: бұл клиенттерді байланысы жоқ алмастырушы серверге жіберуден немесе loopback мекенжайын нақты мақсат ретінде көрсетуден сақтайды. dnsmasq нұсқаулығы бұл пішінді қайта бағыттау емес, теріс жауап ретінде сипаттайды.

Ереже жасай алатынның бәрі осы бір шешімнен туындайды. Осы шешушіден сұраған клиент теріс жауап алады; басқа шешушіден сұраған клиент сол шешуші айтқанын алады. Сүзгі қосымша қандай жолды, сұраныс жолын немесе тіркелгіні қолданарын білмейді.

Бұл нақтылық маңызды, өйткені бір хост атауы жиі бірнеше мақсатқа қызмет етеді. Кіру нүктелері, суреттер және бақылау бір доменді бөлісе алады, ал бүкіл атауды жоятын ереже онымен бірге жұмыс ағынын да жоюы мүмкін. Атау деңгейіндегі саясат бұл айырбасты қабылдауы немесе тар атауларды таңдауы керек.

Клиент жағындағы бұғаттағыш қай жерде өзгеше

Браузер кеңейтімі сұранысты ол шықпас бұрын көреді, сондықтан URL жолын сәйкестендіре алады, нақты сұранысты болдырмайды және нәтижені көрсететін элементті жасыра алады. Ол example.com/article рұқсат етіп, example.com/ads/ бас тарта алады, мұны ешбір DNS жауабы білдіре алмайды. Жол деңгейіндегі бұл көрініс шешушіде мүлде жоқ қабілет. Сондықтан да бір құралға арналған сүзгі тізімі екіншісінде сирек бірдей әрекет етеді.

Бағасы қамту ауқымы. Бұл қорғаныс бір браузердің, бір профильдің, бір құрылғының ішінде тұрады және пайдаланушы басқа қосымшаға ауысқанда жоғалады. Шлюзде бапталған DNS сүзгісі шлюздің шешушісін пайдаланатын әрбір құрылғыны қамтиды, тіпті онда ешбір кеңейтім орнату мүмкін болмаса да.

Екі құрылымның ешқайсысы өздігінен толық емес. DNS сүзгісі бет әлдеқашан жіберген идентификаторды жоя алмайды, ал браузер кеңейтімі оны ешқашан жүктемейтін қосымшаны қорғай алмайды.

Шешушінің жолы осылардың қайсысы жарамды екенін шешеді

VPN DNS серверін жариялап, соған қарамастан әрбір сұранысты ала алмауы мүмкін. Шифрланған DNS бапталған браузер, өз шешушісі бар қосымша немесе шлюзді айналып өтетін желілік жолдағы құрылғы — бәрі басқа жерге қарайды. Мобильді платформалар туннель ұсынған нәрсені үнсіз жоятын жеке DNS параметрін жиі ұсынады.

Сондықтан саясатты емес, жолды тексеріңіз. Көзделген шешушіден тікелей шлюзден сұраңыз, содан кейін клиенттен сұрап салыстырыңыз, сосын бұғатталуы тиіс атаудың пайдаланушы іске қосқан қосымшада шынымен сәтсіз болатынын бақылаңыз.

Кэштелген жауаптар мен ашық сокеттер мұны шулы етеді. Ресурстарын әлдеқашан жүктеген бет ереже өзгергеннен кейін де жұмысын жалғастырады, сондықтан жаңа қосылым ескі қойындыны қайта жүктеуден жақсырақ сынақ.

Нәтиже жарияламас бұрын екі бағытты да тексеріңіз

Әдейі бұғатталған құжаттама атауын, рұқсат етілген ашық атауды және қызметке қажет жеке атауды пайдаланыңыз:

$ dig +short metrics.example @10.40.0.53
$ dig +short example.com @10.40.0.53
$ dig +short intranet.corp.internal @10.40.0.53

Бұғатталған атауға бос жауап, ашық атауға қалыпты мекенжай және ішкі атауға жеке мекенжай бірге сүзудің, жоғары ағындағы шешудің және жергілікті жазбалардың барлығы жұмыс істейтінін көрсетеді. Үшеуі де сәтсіз болса, сіз сүзгіні емес, жоғары ағын немесе тыңдаушы мәселесін көріп тұрсыз.

Іштей жариялайтын нәрсенің бәрінде тұжырымды тар ұстаңыз. Бұл шешушідегі домен сүзуі, мазмұнды тексеру емес, жолдарды сүзу емес және ешкім бақыланбайды деген уәде емес. Саясат иесін, ерекшелік маршрутын және сұраныстарды сақтау мерзімін ережелердің қасында көрсетіңіз, өйткені әр іздеуді тіркейтін сүзгінің өз құпиялылық құны бар.

Қатысты мақалалар