Сеть нашей компании использует xxx.companyname.local
для всех серверов в нашей локальной сети. Всякий раз, когда я получаю доступ к одному из этих серверов на моем Mac, у меня задерживается 10 секунд. Я обнаружил, что эта задержка вызвана поиском DNS, потому что, по-видимому, Lion разрешает домены .local в следующем порядке:
- проверить
/etc/hosts
адрес IPv6 - проверьте DNS-сервер для записи AAAA (адрес IPv6)
- проверка через MDNS (Bonjour) для записи AAAA
- проверить
/etc/hosts
адрес IPv4 - проверить DNS-сервер для записи A (адрес IPv4)
- проверить MDNS для записи
Теперь проблема в том, что у нас нет сети IPv6. Все xxx.companyname.local
серверы в нашей сети имеют только IPv4-адреса, а DNS-сервер имеет только A-записи. Это означает, что адрес разрешен в шаге 5. Проблема в том, что шаг 3 занимает десять секунд, прежде чем истечет время ожидания! Каждый раз, когда я подключаюсь к нашей вики, серверу SVN, серверу Kerberos и т. Д., Задержка составляет 10 секунд.
Мне удалось обмануть Льва, добавив строки, подобные следующим /etc/hosts
::FFFF:10.99.99.99 xxx.companyname.local
Если я сделаю это, Lion подумает, что для домена существует IPv6-адрес, и остановится после шага 1. Однако этот обходной путь полностью обходит все полезные функции DNS. Я не хочу вручную отслеживать IP-адреса десятков внутренних доменов! Я мог бы также прекратить использовать имена хостов и просто вводить IP-адреса!
Итак: у кого-нибудь есть идея, как изменить этот порядок поиска? Или отключить поиск IPv6, так как у нас нет сети IPv6?
AAAA
записей ответов для записей, когда они (в зависимости от того, что вы говорите) не тратят столько времени, чтобы отвечать на A
запросы самых одни и те же доменные имена. Вы, кажется, находитесь на классической территории RFC 4074, где проблема в том, что серверы сломаны . Также обратите внимание, что вы столкнулись с одной из нескольких хорошо известных и долго обсуждаемых причин, по которым вы не используете local.
службу DNS с разделением горизонта. Это тоже лучше исправить.
local.
- плохая идея, но ИТ-отдел сказал мне, что они считают, что использовать local.companyname.
- это прекрасно, и я ничего не могу с этим поделать.