如何实现 DNS 刷新自动化?

如何实现 DNS 刷新自动化?

我有几个虚拟机。很少有应用程序使用主机名在他们的配置文件中联系这些机器。

一切都运行良好,一切都很顺利!直到应用程序停止使用主机名连接到虚拟机或虚拟机中的服务!经过一番研发,我发现我们仍然可以使用 IP 连接虚拟机!这意味着这是 DNS 问题!所以我运行了下面三个命令,一切都开始正常工作

  1. ipconfig /flushdns
  2. ipconfig /registerdns
  3. netsh winsock 重置

但现在的问题是,我们无法预测什么时候会再次发生。那么最佳做法是什么?我是否必须将这些命令放入脚本中并每天运行?

答案1

如果您控制环境,则应考虑为 DHCP 租约设置更高的值(例如 7 天)并降低 DNS 服务器上的 TTL 值(例如 15 分钟或 1 小时)。

在配置良好的环境中,不应观察到这种行为。

答案2

我是否必须将这些命令放入脚本中并每天运行?

绝对是坏主意,见下文。这应该作为最后的手段。

那么最佳实践是什么?

排除 DNS 服务器和网络连接故障,配置主机的 DNS 客户端缓存。

来源:https://technet.microsoft.com/en-us/library/cc959309.aspx

解析器缓存和服务器缓存是分开维护的。有关服务器缓存的信息,请参阅 Windows 2000 Server 帮助。DNS 客户端上缓存肯定或否定响应的时间长度取决于以下注册表项中的值: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters

这里重要的是,您的客户端可能会缓存否定答案。您的应用程序应配置适当的名称解析超时。如果您的主机具有 L2 连接,那么您可以将 NetBIOS 配置为备份。如果没有,那么您也可以使用 WINS。确保主/备份浏览器选举是什么样的以及如何控制它。

相关内容