13

Сеть нашей компании использует xxx.companyname.local для всех серверов в нашей локальной сети. Всякий раз, когда я получаю доступ к одному из этих серверов на моем Mac, у меня задерживается 10 секунд. Я обнаружил, что эта задержка вызвана поиском DNS, потому что, по-видимому, Lion разрешает домены .local в следующем порядке:

  1. проверьте /etc/hosts для адреса IPv6
  2. проверьте DNS-сервер для записи AAAA (адрес IPv6)
  3. проверка через MDNS (Bonjour) для записи AAAA
  4. проверьте /etc/hosts для адреса IPv4
  5. проверить DNS-сервер для записи A (адрес IPv4)
  6. проверить MDNS для записи

Теперь проблема в том, что у нас нет сети IPv6. Все серверы xxx.companyname.local в нашей сети имеют только IPv4-адреса, а DNS-сервер имеет только A-записи. Это означает, что адрес разрешен в шаге 5. Проблема в том, что шаг 3 занимает десять секунд, прежде чем истечет время ожидания! Каждый раз, когда я подключаюсь к нашей вики, серверу SVN, серверу Kerberos и т.д., Задержка составляет 10 секунд.

Мне удалось обмануть Lion, добавив строки вроде следующего в /etc/hosts

::FFFF:10.99.99.99 xxx.companyname.local

Если я сделаю это, Lion подумает, что для домена существует адрес IPv6, и остановится после шага 1. Однако этот обходной путь полностью обходит все полезные функции DNS. Я не хочу вручную отслеживать IP-адреса десятков внутренних доменов! Я мог бы также прекратить использовать имена хостов и просто вводить IP-адреса!

Итак: у кого-нибудь есть идея, как изменить этот порядок поиска? Или отключить поиск IPv6, так как у нас нет сети IPv6?

2 ответа2

8

Не позволяйте вашему ИТ-отделу злоупотреблять local. ,

Как уже говорилось, злоупотребление доменным именем, которое не принадлежит вашей компании и, следовательно, не должно предполагать, что оно может создавать корпоративные субдомены, является неправильным и составляет половину проблемы здесь. Если на компьютерах компании есть Macintoshes (или что-то еще, что использует DNSSD в этом отношении), то, безусловно, не принимайте это local. Вы можете свободно возиться с таким способом.

Обновите свой Macintosh.

MacOS 10.4 действительно будет обрабатывать xxx.companyname.local. как вы описываете. Но это изменилось в более поздних версиях операционной системы. MacOS 10.5 передает только имена с двумя метками в Multicast DNS. Имена с тремя метками, такие как xxx.companyname.local. не обрабатываются MDNS. MacOS 10.6 продвигается дальше и пытается определить, был ли DNS-сервер неправильно настроен на local. зоны и действовать соответственно.

Как минимум, вы должны настроить свой Macintosh на наличие файла /etc/resolver/ companyname .local с search_order 1 в котором перечислены текущие IP-адреса вашего прокси DNS-сервера. Это не будет хорошо работать с IP-адресами DNS-сервера, назначенными DHCP, которые меняются, как говорит Apple.

Сжимая руку ...

... это просто постепенно усложняющиеся тела, чтобы приспособиться к неправильности. По словам Марка Крочмаля из Apple, «всегда будет какая-то проблема», когда люди ругают local. в том, что делает ваша компания. Известно, что с неправильной головой (быстрый поиск подсказывает мне) с 2002 года, если не раньше. Просто не делай этого.

дальнейшее чтение

0

Я не знаю Mac, поэтому не могу помочь, но я пришел с умной обходной идеей: если вы настроите где-нибудь в Интернете "somedomain.com DNAME companyname.local" - он поймает DNAME на шаге 2. Теперь я не уверен, что произойдет дальше, все еще будет возвращаться к доброй воле, или, поскольку он уже находится в середине какого-то процесса DNS, возможно, он будет придерживаться DNS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .