none
DNS Cache

    Вопрос

  • Здравствуйте!

    Есть некий внешний ресурс, назовем его empty.ru. В нашем лесу home.com есть сервер пересылки с ролью DNS испульзующий root hints DNS1.home.com. И есть сервер пересылки DNS2.home.com, использующий Форворды, настроенный на гугл и яндекс.

    Ресурс empty.ru имеет особенность раз в час менять свои внешние адреса. Кэш на серверах DNS1 и DNS2 настроен по дефолту, то бишь, хранение записей 1 день. Происходит такая закономерность, когда меняется внешний адрес ресурса empty.ru, наш DNS1 перестает резолвить данный ресурс, а сервер DNS2 успешно и честно отдает его адрес. 

    Естественно с внешним ресурсом мы сделать ничего не можем. Но можем поиграться с нашим DNS1. Как только очищаю кэш (Clear Cache) на сервере DNS1, резолв, ресурса empty.ru, проходит успешно, до истечение ближайшего часа, после чего резолв опять прекращается (меняется адрес внешнего ресурса). 

    Общим мозговым штурмом было решено понизить время обновления кэша, были выставлены значения сначала 1 час (результат остался прежним), потом 30 минут (результат остался прежним) и 10 минут (результат остался прежним). Причем явно видно в Cached Lookups как истекает время кэша, как обновляются записи, но резолв ресурса empty.ru пропадает.

    С рабочей станции запускаю nslookup empty.ru DNS1 получаю ответ:

    *** DNS1 can't find empty.ru: Server failed

    Запускаю с сервера DNS1 nslookup empty.ru резолв проходит успешно.

    Подскажите, пожалуйста, куда смотреть, что копать? Уже крыша едет. Идея в том что использовать на сервере DNS1 только root hints.

    Заранее спасибо!

    14 ноября 2017 г. 12:06

Все ответы

  • Дико извиняюсь, но ошибся в:

    Запускаю с сервера DNS1 nslookup empty.ru получаю:

    *** UnKnown can't find server-net.ru: Non-existent domain

    14 ноября 2017 г. 12:15
  • nslookup -type=ns empty.ru
    Non-authoritative answer:
    empty.ru       nameserver = ns1.******.com
    empty.ru       nameserver = ns2.******.com

    на своих серверах настройте "Условную пересылку" для домена empty.ru указывающую на ns1.******.com и ns1.******.com (подставьте свои значения)

    14 ноября 2017 г. 12:21
  • А без Условной пересылки есть какие либо варианты? Не хотелось из-за прихоти данного ресурса пладить Условные пересылки. И забава в том, что сервер DNS2 Который работает через форворды настроенные на гугл и яндекс, благополучно резолвит данный ресурс, даже когда он меняет свой адрес. Почему так? На серверах гугла и яндекса тоже настроена Условная пересылка на ресурс empty.ru?
    14 ноября 2017 г. 12:27
  • На серверах гугла и яндекса тоже настроена Условная пересылка на ресурс empty.ru?

    видимо у них по-другому настроена работа кеширования.

    попробуйте в PowerShell установить время хранения записи 1 час:

    set-DnsServerCache -MaxTTL 0.01:00:00

    14 ноября 2017 г. 12:47
  • Устанавливал, не помогает, я же писал, в описании проблемы, какие временные интервалы устанавливались.
    14 ноября 2017 г. 12:55
  • А без Условной пересылки есть какие либо варианты? Не хотелось из-за прихоти данного ресурса пладить Условные пересылки. И забава в том, что сервер DNS2 Который работает через форворды настроенные на гугл и яндекс, благополучно резолвит данный ресурс, даже когда он меняет свой адрес. Почему так? На серверах гугла и яндекса тоже настроена Условная пересылка на ресурс empty.ru?

    Нет, как Вам уже ответили выше, у разных серверов разные параметры кэширования. У Яндекса они чаще обновляются, нежели чем у рут хинтов вот и весь сказ. Кстати, а какой именно список хинтов используете? Попробуйте f. серверы поставить наверх и проверить. (службу DNS только перезапустите)

    14 ноября 2017 г. 14:34
  • Дико извиняюсь, но ошибся в:

    Запускаю с сервера DNS1 nslookup empty.ru получаю:

    *** UnKnown can't find server-net.ru: Non-existent domain

    у вас днсами на DNS1 в настройках интерфейсов что прописано?
    14 ноября 2017 г. 14:38