Назад | Перейти на главную страницу

Изменить TTL DNS для каждой записи в зоне

У меня есть зона прямого просмотра с большим количеством записей A. Если я изменю TTL для зоны, это не будет применяться к записям (они сохранят предыдущую настройку TTL). Мне нужно вручную изменить TTL для каждой записи.

Это ожидаемое поведение? Как я могу изменить TTL для каждой записи?

Спасибо!

Он должен обновить их, если они являются статическими записями после перезапуска DNS или перезагрузки зоны, ЕСЛИ к записям не применены ручные значения TTL.

Смотрите здесь поток Technet, в котором обсуждаются функциональные возможности и объясняется, почему изменения SOA TTL могут или не могут повлиять на существующие записи A: http://social.technet.microsoft.com/Forums/en-US/031d48f5-46ae-4e6d-ae85-ae715e7c1206/ttl-of-dns-records-not-updated-when-soa-minimum-ttl-is- изменено? forum = winserverNIS

Однако, если они являются динамическими обновлениями через DHCP или DNS, тогда TTL по умолчанию составляет 20 минут.

Всякий раз, когда клиент динамического обновления регистрируется в DNS, связанные записи ресурсов A и PTR включают TTL, который по умолчанию равен 20 минутам. Вы можете изменить настройку по умолчанию, изменив DefaultRegistrationTTL запись в следующем подразделе реестра:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters

Запись имеет значение DWORD и отображает TTL в секундах. Небольшое значение приводит к более раннему истечению срока хранения кэшированных записей, что увеличивает трафик DNS, но снижает риск устаревания записей. Быстро истекающие записи полезны для компьютеров, которые часто продлевают аренду DHCP. Большое значение приводит к тому, что кэшированные записи хранятся дольше, уменьшая трафик DNS, но повышая риск того, что записи устареют. Длительное время хранения полезно для компьютеров, которые нечасто продлевают аренду DHCP.

Но я бы не рекомендовал менять настройки по умолчанию для динамических обновлений.

Хотя это может (или не может) применяться к миру Windows, вы обычно используете псевдоним $ TTL в начале файла зоны, чтобы указать время истечения срока действия по умолчанию для всех записей ресурсов без их собственного значения TTL.

Например:

$TTL 1h
example.com.  IN  SOA  ns.example.com. username.example.com. (
          2007120710 ; serial number of this zone file
          1d         ; slave refresh (1 day)
          2h         ; slave retry time in case of a problem (2 hours)
          4w         ; slave expiration time (4 weeks)
          1h         ; maximum caching time in case of failed lookups (1 hour)
          )
example.com.         NS    ns             ; ttl = 1h
mail          3w     A     192.0.0.1      ; ttl = 3w