1

Я перешел на Comodo DNS сегодня, потому что Norton DNS, кажется, полностью отключен, а веб-сайт не был доступен в течение нескольких дней.

Comodo DNS работает нормально, но каждый раз, когда я вхожу в свой компьютер, он говорит, что avahi будет отключен из-за использования домена .local. Я просто хочу понять, что это значит, я провел небольшое исследование, но ничего не вылезло.

Когда я переключаюсь на OpenDNS, эта подсказка исчезает. У кого-нибудь есть идея, почему это происходит?

1 ответ1

2

Проблема в том, что домен .local не должен существовать в DNS - он зарезервирован для локальных mDNS - но DNS-серверы Comodo делают вид, что это так.

Почему Comodo DNS не работает

DNS Comodo не совсем чист - когда вы ищете какое-либо несуществующее имя, вместо ответа "этот домен не существует", серверы Comodo делают вид, что все такие имена указывают на их собственный веб-сайт (также известный как перехват DNS или "NXDOMAIN"). угон ").

Например, если вы попытаетесь получить доступ к адресу, подобному http://this.goes.nowhere, на общедоступном веб-сайте Comodo просто появится надпись «Недопустимое имя домена», а также логотип Comodo и некоторые текстовые рекламные объявления.

Важно понимать, что это не то же самое, что отвечать «домен не существует» поиску DNS. DNS - серверы Comodo говорят , что домены существуют и указывают на Comodo принадлежащих IP - адресов. Разница очень заметна, когда вы сталкиваетесь с этим в программах, отличных от веб-браузеров ; Например, если вы попытаетесь подключиться к другому компьютеру, используя ssh но неправильно наберете его имя, вы можете даже не заметить, что вы подключаетесь к серверу Comodo. В Википедии будет перечислено еще больше вещей, которые порочатся с такими провайдерами DNS.

Снимок экрана общедоступного веб-сайта

... и почему OpenDNS тоже сломан

Кстати, все вышеперечисленное выполняется и в OpenDNS - серверы OpenDNS делают то же самое, перенаправляя вас на "поисковый" сайт OpenDNS, когда вы пытаетесь получить доступ к несуществующему (хотя они позволяют вам отказаться).

Разница лишь в том, как Comodo и OpenDNS обрабатывают зарезервированный .local .

Что такое авахи

В OS X и Linux используется протокол mDNS, который позволяет вам получать доступ к другим компьютерам в той же локальной сети по их имени, например rockos-laptop.local без необходимости устанавливать внутренний DNS-сервер или вводить IP-адреса напрямую. (В Linux "Avahi" - это название программы, которая говорит о mDNS.) Стандартные настройки mDNS используют домен .local для всех таких имен, чтобы избежать смешивания их с глобальными.

Однако во многих корпоративных сетях уже настроены внутренние DNS-серверы, и хотя большинство используют .loc или .corp или .lan для своих собственных целей, оказалось, что некоторые используют домен .local .

Поэтому, если вы попытаетесь получить доступ к something.local , ОС не будет знать, где сначала спросить - другие компьютеры в локальной сети, использующие mDNS, или собственные DNS-серверы компании. Из-за этого, если ОС видит, что домен .local существует в DNS, она должна отключить локальный поиск mDNS. Вот о чем говорится в предупреждении.

Почему OpenDNS не вызывает предупреждение

Хотя у OpenDNS также есть общий ответ, он фактически исключает некоторые зарезервированные домены верхнего уровня, такие как .test , .local или .example , возвращая для них реальную ошибку NXDOMAIN.

Однако Comodo DNS по-прежнему утверждает, что все имена в .local указывают на универсальный веб-сайт. (И просто, чтобы добавить путаницу, веб-сайт для всех переадресует ваш браузер на http://127.0.0.1 всякий раз, когда он видит, что домен заканчивается на «.local» - так что браузер в конечном итоге пытается получить доступ к вашему компьютеру. Это перенаправление выполняется на уровне HTTP, поэтому не браузерные программы все равно будут пытаться подключиться к серверам Comodo.)

Например...

$ host superuser.com
superuser.com has address 198.252.206.140

$ host this.does.not.exist
this.does.not.exist has address 92.242.144.50

$ host nonexistent.local
nonexistent.local has address 92.242.144.50

Хороший DNS-сервер сказал бы:

$ host this.does.not.exist
Host this.does.not.exist not found: 3(NXDOMAIN)

Как это исправить

Не используйте Comodo DNS.

(Я предлагаю также избегать использования OpenDNS или, по крайней мере, отказаться от "исправления опечаток" и других подобных сервисов на своей панели инструментов.)

Подумайте об использовании "чистого" общедоступного поставщика DNS, такого как Google Public DNS, или просто запустите DNS-сервер для себя, установив Unbound и указав в настройках DNS значение 127.0.0.1 .

DNS-серверы вашего интернет-провайдера, вероятно, тоже будут работать нормально.

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