nslookup получает SERVFAIL, но не в Windows

Вопрос или проблема

На моем рабочем VPN есть DNS-сервер 10.92.131.26, который, похоже, настраивается на моем компьютере, когда я подключаюсь к нашему серверу VPN anyconnect. Когда я выполняю nslookup server на своем рабочем месте с Linux, я получаю SERVFAIL для этого:

;; Получен ответ SERVFAIL от 10.92.131.26, пробую следующий сервер
Сервер:     10.50.177.208
Адрес:      10.50.177.208#53

** сервер не может найти сервер: SERVFAIL

Но когда я открываю виртуальную машину Windows на своем рабочем месте и выполняю nslookup, она успешно работает для того же самого DNS-сервера.

Сервер по умолчанию:  a.company.domain
Адрес: 10.92.131.26

Почему так?


TMI: Почему мне это интересно? На работе наша система MFA накладывает дополнительные ограничения, когда я пытаюсь получить доступ к определенным сайтам компании с моего компьютера под управлением Linux, но я не сталкиваюсь с этими ограничениями, когда запускаю Windows, или когда пытаюсь с виртуальной машины Windows из своей системы Linux. (И я не могу удовлетворить эти дополнительные ограничения, так как ИТ, похоже, не планировала, что кто-то на самом деле столкнется с ними легитимно.)

ИТ говорит мне:

Обычно это связано с проблемой маршрутизации VPN к [нашим] серверам… Попробуйте в Google Chrome, если по-прежнему не работает, так как Firefox иногда использует свои собственные DNS для разрешения адресов, и это может вызвать эту ошибку, в то время как Chrome просто будет работать.

…И действительно, их утверждение кажется обоснованным: в виртуальной машине Windows мои попытки через Chrome удачны, а попытки через Firefox — нет. Тем не менее, мои попытки на моем Linux-хосте вообще не работают.

Я wonder, удастся ли мне выполнить запросы из Linux, если я смогу настроить мой компьютер с Linux на использование 10.92.131.26 в качестве своего DNS-сервера.


Выводы

Обновление: по запросу, вот выводы для netstat -rn на каждой машине. Они довольно длинные, поэтому я просто ссылаюсь на pastebin: на Linux, на Windows

Вот tracert 10.92.131.26 из виртуальной машины Windows:

Отслеживание маршрута до 10.92.131.26 с максимальным количеством 30 переходов

  1    29 мс    27 мс    25 мс  192.168.100.1 
  2    35 мс    31 мс    33 мс  173.36.212.117 
  3    35 мс    34 мс    29 мс  50.216.158.108 
  4    41 мс    35 мс    37 мс  10.92.131.26 

Отслеживание завершено.

Поскольку ситуация становится немного более сложной, чем это можно выразить в комментариях, я использую ответ.

Мы видим две машины:

  • Машина с Linux, с IP, вероятно, в 192.168.68.0/24 и шлюзом 192.168.68.1
  • Виртуальная машина с Windows, с IP в 10.0.2.0/24 и шлюзом 10.0.2.2.

Сеть 10.0.2.0/24 — это то, что видит виртуальная машина. Теперь нам не хватает немного информации. Я предполагаю, исходя из приведенной выше информации, что виртуальная машина Windows имеет мостовой адаптер, и VPN настроен с хоста Linux. Пожалуйста, подтвердите это.

Если хост Linux предоставляет VPN, он должен иметь возможность достигать шлюза VPN. С помощью ifconfig вы должны увидеть IP-адрес на интерфейсе tun. Вы должны иметь возможность достичь шлюза на VPN-туннеле, иначе вы не сможете маршрутизировать ничего через туннель.

Ваша виртуальная машина Windows видит 10.0.2.2 как шлюз на VPN; следовательно, ваш хост Linux также должен видеть это как маршрутизатор. Поэтому странно, что вы получили недоступную сеть, добавляя конкретный маршрут на вашем Linux-компьютере; вы уверены, что VPN был активен, когда вы пытались добавить маршрут?

В качестве дополнительной отладочной информации tracert от клиента Windows к 10.92.131.26 будет полезен.

Ответ или решение

Решение проблемы: nslookup возвращает SERVFAIL на Linux, но не на Windows

Проблема, с которой вы столкнулись, связана с различиями в конфигурации сети и разрешении DNS между вашей Linux-системой и Windows VM. Рассмотрим несколько аспектов, которые могут помочь в диагностике и устранении этой проблемы.

1. Различия в конфигурации сети

Наиболее вероятной причиной получения ответа SERVFAIL на Linux является проблема с маршрутизацией или настройками DNS-сервера. Обратите внимание на следующие моменты:

  • IP-адреса и шлюзы: Наличие различных подсетей на Linux и Windows VM может повлиять на доступность ресурсов VPN. Запрашивайте у вашей IT-службы информацию о правильной конфигурации.

  • VPN и маршрутизация: Убедитесь, что VPN действительно настроен правильно, и ваш Linux-обозреватель правильно передаёт трафик через туннель. Старые маршруты могут конфликтовать с новыми, установленными при соединении с VPN. Для этого используйте команду ip route на Linux, чтобы проверить, передается ли трафик через VPN.

2. Решение DNS

Возвращение SERVFAIL обычно указывает на проблему с DNS:

  • Настройки DNS: Убедитесь, что ваш Linux работает с 10.92.131.26 в качестве DNS-сервера. Это можно проверить и изменить в файле /etc/resolv.conf. Убедитесь, что у вас есть правильная запись:

    nameserver 10.92.131.26
  • Проверка доступности DNS: Используйте команду dig для более детального анализа:

    dig @10.92.131.26 server

    Если эта команда также возвращает ошибку, возможно, проблема в самом DNS-сервере.

3. Различия в браузерах

Замечания по поводу проблем с разрешением в разных браузерах важны. Firefox иногда использует альтернативные DNS-серверы через функции, такие как DNS-over-HTTPS, что может повлиять на результаты. Вы можете отключить эту функцию в настройках Firefox.

4. Трассировка маршрута

Ваше использование команды tracert из Windows VM показывает, что этот компьютер может успешно добраться до DNS-сервера. Чтобы проанализировать маршрут из Linux, используйте аналогичную команду:

traceroute 10.92.131.26

Это даст вам понимание, существует ли проблема на маршруте.

5. Дополнительные рекомендации

  • Логи: Проверьте логи вашего VPN-клиента на наличие каких-либо ошибок или предупреждений.
  • Файрвол: Убедитесь, что на вашей Linux-системе нет настроек файрвола, которые блокируют доступ к DNS-серверу.
  • Проверка конфигурации: Сравните сетевые конфигурации обоих устройств: /etc/netplan или /etc/network/interfaces на Linux и параметры сетевого адаптера на Windows VM.

Заключение

Проблема, с которой вы столкнулись, — это сложный вопрос, требующий внимательного анализа конфигураций сети и разрешения DNS. Советую обратиться за помощью к специалистам из IT-отдела вашей компании, предоставив им всю доступную информацию и результаты тестов для более быстрой диагностики проблемы.

Оцените материал
Добавить комментарий

Капча загружается...