У меня есть локальный DNS-сервер, настроенный для моей сети, который настроен для разрешения локальных машин и пересылки всего нелокального по цепочке.
Некоторые из определений поддоменов одной глубины, например
time A 192.168.0.1 files A 192.168.0.2 dev A 192.168.0.3
и т.д
Некоторые из них являются многоуровневыми или подстановочными, например
foo.files CNAME files *.dev.files CNAME files
Это работает абсолютно нормально либо без пересылки, либо если я использую пересылку своего интернет-провайдера. Однако у нас была необходимость использовать серверы OpenDNS, и когда мы сделали это переключение, мы заметили странное поведение.
Одноуровневые домены (время, файлы) будут правильно разрешаться в локальной сети без проблем, однако многоуровневые домены или домены с подстановочными знаками будут перенаправлены. Это вернется с IP-адресом из их "полезного" "вы имели в виду ...?" сервер.
Это если я не использую полное доменное имя, то есть с путем поиска DNS. так что foo.files.mydomain.local. Я понимаю, что локальные домены должны разрешаться авторитетным DNS-сервером, который находится в сети, однако, похоже, он пересылается вышестоящему серверу пересылки.
Кажется, что происходит то, что что-то (привязка?) Правильно добавляет домен поиска в поиск для одноуровневых субдоменов, но не для поддоменов или многоуровневых. Но только когда я использую сервер OpenDNS в качестве сервера пересылки (предположительно, потому что он получает "действительный" ответ от OpenDNS для всего)
Я предполагаю, что одним из подходов было бы отключить поисковый домен для моего IP-адреса с их панели управления, но кажется очевидным, что я где-то неправильно сконфигурировал, поскольку эти домены должны разрешаться локально. Возможно, мне нужно указать что-то дополнительно в моем файле зон, чтобы убедиться, что многоуровневые домены рассматриваются как локальные?
Какие-либо предложения?