更改区域中每个logging的DNS TTL

我有一个有很多Alogging的正向查找区域。 如果我更改区域的TTL,它不适用于logging(他们保持以前的TTL设置)。 我必须手动更改每个logging的TTL。

这是预期的行为? 我怎样才能改变每个logging的TTL?

谢谢!

它应该更新它们,如果它们是您重新启动DNS或重新加载区域后静态条目如果条目没有应用于它们的手动TTL。

请参阅此处的Technet线程,讨论function并解释为什么SOA TTL更改可能会影响现有Alogging,也可能不会影响: http : //social.technet.microsoft.com/Forums/en-US/031d48f5-46ae- 4e6d-AE85-ae715e7c1206 / TTL-的域名系统DNSlogging,没有更新,当SOA的最小-TTL-被改变的?论坛= winserverNIS

但是,如果它们是通过DHCP或DNS进行dynamic更新,则TTL默认为20分钟。

每当dynamic更新客户端在DNS中注册时,关联的A和PTR资源logging都会包含TTL,默认情况下该TTL设置为20分钟。 您可以通过修改以下registry子项中的DefaultRegistrationTTL条目来更改默认设置:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters

该条目具有DWORD值,并以秒为单位列出TTL。 一个小的值会导致caching条目更早过期,从而增加DNSstream量,但却降低了条目过期的风险。 快速过期条目对于经常续订DHCP租约的计算机很有用。 较大的值会导致高速caching的条目保留更长时间,从而减lessDNSstream量,但会增加条目过期的风险。 较长的保留时间对于不频繁续订DHCP租约的计算机很有用。

但我不build议更改dynamic更新的默认值。

虽然这可能(或可能不适用)Windows世界,但通常在区域文件的开头使用别名$ TTL来指定所有资源logging的缺省到期时间,而不使用它们自己的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