Тестване на разделен DNS без изтичане на вътрешни имена
Заявка за вътрешно име към публичен резолвер го издава и пропуска правилото, което сте искали да тествате. Използвайте две одобрени имена и реалния път на резолвера.
Заявката за вътрешно име към публичен резолвер издава името и пропуска правилото, което сте искали да тествате. Заявката стига до сървър, който не контролирате, отговорът идва от пространство от имена, което не е трябвало да го вижда, а резултатът не казва нищо за това дали разделеният DNS работи. Да тестваш разделен DNS означава да тестваш пътя на резолвера, който приложението наистина използва. Този път се избира от операционната система, от списъка с домейни в профила на VPN и понякога от браузъра.
Изберете две имена и първо предскажете двата отговора
Поискайте от собственика на мрежата едно документирано вътрешно тестово име и изберете обикновено публично име, което не казва нищо за организацията. Запишете какво трябва да се случи с всяко от тях, преди да пуснете каквото и да е: вътрешното име трябва да стигне до резолвера на тунела и да върне вътрешен адрес, а публичното име трябва да се резолвира през резолвера, който системата обикновено използва. Тези две предсказания са тестът, защото без тях всеки отговор може да бъде оправдан след факта. Дръжте двойката постоянна между пусканията, за да има смисъл по-късното сравнение.
Проверявайте действителните правила, а не предвидените. Списъкът с домейни, прикачен към VPN връзката, решава кои суфикси към кой резолвер отиват, а печатна грешка в този списък дава правдоподобно, но грешно разделяне. На управлявано устройство използвайте диагностичния път на администратора, тъй като локалните замени могат да бъдат нулирани от политика при следващата проверка.
Запишете предсказанието до наблюдавания отговор в същия тикет. Тест без предсказание не може да се провали, а тест, който не може да се провали, не учи на нищо.
Тествайте пътя, който приложението използва, а не един избран от вас сървър
Команда, която изрично посочва резолвер, тества само този резолвер и нищо друго. Тя ви казва дали вътрешният сървър отговаря, което е полезно, и не ви казва дали приложение изпраща името там. Първо тествайте през нормалния път: резолвирайте вътрешното име така, както би го направило приложение, после резолвирайте публичното име по същия начин. Едва след това питайте конкретни сървъри, за да намерите къде поведението се разминава.
Браузърите усложняват картината, защото настройките за сигурен DNS могат напълно да заобиколят системния резолвер. Браузър, конфигуриран със свой собствен криптиран резолвер, никога не вижда разделянето и повредата изглежда като счупен VPN профил. Проверете тази настройка, преди да променяте тунела.
Повторете търсенето след повторно свързване, ако въпросът е възстановяване. Отговор, кеширан отпреди повторното свързване, може да представи правилно възстановено разделяне като по-добро или по-лошо, отколкото е.
Записвайте категорията на отговора, не само успех или неуспех
Запишете кое от четири неща се е случило: вътрешен адрес, публичен адрес, отрицателен отговор или изчакване. Всяко има различно значение. Вътрешен адрес за вътрешното име е очакваният успех; публичен адрес за вътрешно име подсказва, че заявката е напуснала тунела; отрицателен отговор от авторитетния сървър сочи липсващ запис, а не маршрутизационна повреда; а изчакването показва проблем с достъпността или резолвер, който никога не е получил заявката. Успех и неуспех са твърде груби, за да се действа по тях.
Отчетете кеша, преди да тълкувате липсваща свежа заявка, защото отрицателен отговор в кеша изглежда идентично на име, което не съществува. Запазете отговора, преди да изчистите каквото и да е чрез поддържани средства, защото първият отговор е доказателството.
Тълкувайте двата клона без догадки
Ако вътрешното име се резолвира правилно, а приложението все още се проваля, резолверът си е свършил работата и следващите заподозрени са маршрутите и разрешенията върху самия ресурс. Ако частното име е стигнало до публичен резолвер, правилото за разделяне не се прилага за това търсене, затова прегледайте списъка с домейни и всяка браузърна политика с собственика на пространството от имена. Тези два клона имат различни собственици и затова да запишете кой от тях сте видели е по-важно от това да запишете, че нещо се е счупило.
Скрийте споделения изход, като запазите структурата: кое пространство от имена, кое правило, коя категория отговор. Отговорът на резолвера може да носи вътрешни адреси и имена на хостове, а тикетът е траен дом за двете.
След това предайте резултата на собственика на пространството от имена с двете наблюдавани категории и премахнати имена. Това е петминутен разговор вместо седмица догадки.