Вопрос или проблема
У меня настроена конфигурация разделенного DNS через профиль VPN
$ scutil --dns
[...удалено для краткости, но в общем это стандартный вывод этой команды...]
resolver #2
search domain[0] : my-domain.ch
nameserver[0] : 192.168.11.41
nameserver[1] : 192.168.11.41
if_index : 24 (ipsec0)
flags : Scoped, Request A records
reach : 0x00000002 (Reachable)
Но когда я делаю запросы для поддоменов my-domain.ch
, это не работает
$ nslookup nas.my-domain.ch
Server: 172.20.10.1
Address: 172.20.10.1#53
** server can't find nas.my-domain.ch: NXDOMAIN
Похоже, он продолжает использовать адрес резолвера по умолчанию (в данном случае mac подключен к точке доступа iPhone)
Если я запрашиваю целевой DNS-сервер напрямую, это работает
$ nslookup nas.my-domain.ch 192.168.11.41
Server: 192.168.11.41
Address: 192.168.11.41#53
Name: nas.my-domain.ch
Address: 192.168.11.43
Этот же профиль работает на iOS. У меня macOS Sequoia 15.2 (24C101)
Ответ или решение
Проблемы с Разделённым DNS в macOS: Решение и Рекомендации
Проблема, о которой вы сообщили, связана с неправильно работающей конфигурацией разделённого DNS в macOS. Основной причиной этого сбоя является то, что ваша система использует стандартный DNS-сервер вместо указанного в VPN-профиле. Это может быть вызвано неправильными настройками или конфликтом с другими сетями.
Устройство Проблемы
- Вывод команды
scutil --dns
показывает, что вы настроили нужный DNS-сервер (192.168.11.41
) для вашего VPN, что является корректным. - Однако, при выполнении команды
nslookup nas.my-domain.ch
, вы подключаетесь к DNS-серверу172.20.10.1
, что не соответствует указанному в конфигурации, и, как результат, получаете сообщениеNXDOMAIN
(домен не найден). - Используя прямой запрос к DNS-серверу
192.168.11.41
, результаты получаются корректными, что указывает на то, что сам DNS-сервер работает.
Возможные Причины
-
Конфликт с Общими Соединениями: macOS может не переключаться на VPN DNS-сервер, если подключение к интернету осуществляется через iPhone. Это может возникать из-за конфигураций вашей сети.
-
Недостаточные Привилегии или Разрешения: Возможно, что macOS не может правильно применить настройки VPN или раздельного DNS из-за недостатка прав.
-
Настройки DNS на Уровне Интерфейса: Иногда при использовании нескольких сетевых интерфейсов может происходить путаница с приоритетами DNS.
Рекомендации по Исправлению
-
Переподключение к VPN: Попробуйте отключить и заново подключить VPN, чтобы убедиться, что настройки DNS правильно применяются.
-
Проверка Приоритетов Сетевых Соединений:
- Перейдите в «Системные настройки» -> «Сеть».
- Убедитесь, что VPN-подключение стоит выше других соединений (например, подключения через iPhone).
-
Очистка Кэша DNS: Иногда кэш DNS может мешать разрешению. Очистите его с помощью команды:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
-
Проверка Настроек VPN: Убедитесь, что ваш VPN-профиль корректно настроен для использования разделённого DNS. Проверьте соответствующие настройки, возможно, добавление параметра
dns
в конфигурацию VPN будет необходимо. -
Изменение DNS Серверов Ручным Способом: Если проблема остается нерешенной, вручную скорректируйте настройки DNS в разделе «Сеть». Перейдите к интерфейсу VPN и добавьте
192.168.11.41
в поля DNS-серверов. -
Обновление macOS: Периодически обновления в macOS могут исправлять ошибки, связанные с сетевыми подключениями и DNS. Убедитесь, что ваша система обновлена.
Заключение
Сложности, связанные с разделённым DNS в macOS, могут быть вызваны множеством факторов, включая конфликтующие сетевые настройки, кэширование и свойства самого VPN. Следуя приведённым рекомендациям, вы сможете устранить проблему и обеспечить стабильное и надежное разрешение DNS-имен для поддоменов вашего домена.