Пуснете ping към буквален адрес и той отговаря. Отворете сайт по име и нищо не се случва, докато иконата на мрежата настоява, че връзката е наред. На Mac, който току-що се е свързал към VPN, тази комбинация почти винаги означава, че търсенията са насочени към сървър, който вече е недостъпен, а не че мрежата е паднала. Адресите са били закрепени към услугата Wi-Fi в някакъв по-ранен момент и нищо не ги е премахнало оттогава. Диагностицирайте чрез отстраняване, после изтрийте закрепените записи.

Поправката е изтриване, а не изчистване, и разликата е важна, защото командите, които повечето хора пробват първо, правят съвсем друго.

„Свързано“ е твърдение за връзката

macOS пази конфигурация на резолвер за всяка мрежова услуга. Стойностите от DHCP са един източник, въведените на ръка са втори, а изтласканите от профил или записани от клиент са трети. Закрепените имат предимство пред това, което мрежата предлага, и нищо в стека не ги препроверява. Затова сървър, който е изчезнал, остава в списъка, докато човек не го премахне или услугата не бъде изградена наново от нула.

Ето защо тунел, който завършва ръкостискането си, не променя нищо в търсене, което вече е било насочено погрешно. VPN добави резолвер; не провери този, който се проваляше.

Отделете имената от пакетите

Първо стигнете до хост по буквален адрес. Когато се зареди, пакетите са наред и вината е на резолвера. Когато не се зареди, спрете дотук и третирайте проблема като маршрутен, защото промените в DNS само ще добавят променлива към и без това объркана картина.

Име, което се проваля, докато съответният адрес работи, е отпечатъкът. Отбележете и обхвата: когато всичко се проваля, това сочи към повреден глобален запис, а когато само хостовете в тунела се провалят — към друг собственик и по-тясна поправка.

Изтрийте закрепените сървъри

В настройките на мрежата отворете подробностите на услугата Wi-Fi и преминете към раздела DNS. Премахнете всеки ред със сървър, потвърдете промяната, после прегледайте домейните за търсене за стойности, които никога не сте добавяли. Оставете списъка празен, свържете услугата отново и потвърдете, че адресът, подаден от DHCP, се появява сам. Празният списък е временното състояние, което доказва, че проблемът са били закрепените стойности.

По-старите издания крият същия панел едно ниво по-надолу, зад бутон „Разширени“, с еднакво поведение и същия резултат.

Четете състоянието, а не панела

scutil --dns | head -40 отпечатва резолверите, които macOS всъщност използва, групирани по обхват, а бърз nslookup на известно вътрешно име показва дали изобщо пристига отговор. Сравнете двата изхода: чист панел, в който все още е изброен остарял сървър, означава, че друг записващ притежава тази настройка. Това е друга грешка с друго решение.

Когато и двата изглеждат чисти, а имената продължават да се провалят, грешката се е преместила другаде и вие вече не отстранявате проблем в конфигурацията на DNS.

Кой връща записите обратно

Сървърите, които се връщат след изтриване, имат източник. Проверете „Управление на устройства“ за конфигурационен профил, защото профилите могат да носят DNS и се преоценяват по собствен график. Проверете предпочитанията на клиента за опция за задаване на DNS при свързване и решете дали още заслужава мястото си на тази машина. Ако VPN наистина се нуждае от частен резолвер, ограничете го до домейните, които притежава, вместо да пишете в глобалния списък, който всяка бъдеща мрежа наследява.

Запишете предвидения резолвер и домейните, на които трябва да отговаря. След следващото обновяване на клиента проверете едно публично и едно частно име — това е по-бързо от повторно обхождане на настройките и хваща регресията, докато машината е още в ръцете ви.

Всичко друго е театър по поддръжката: команди, които изглеждат целенасочени, не променят нищо измеримо и оставят същото счупено търсене за следващия човек.

Подобни статии