DNS名称服务器caching

我想弄清楚有关DNS客户端caching的一些事情。 具体来说,我想知道当客户端首次parsinglogging时,特定域的多less个名称服务器被caching,以及如果将来的请求发生caching的名称服务器变得不可用,会发生什么情况。 另外,有没有办法在Windows服务器上的客户端caching中显示NameServers。 ipconfig / displaydns似乎只显示caching的A和CNames,而不是NameServers。

名称服务器不被caching。 他们提供的logging是。

名称服务器是基于每个连接分配的。 在Windows中,这里通常是分配给每个networking连接的两个名称服务器,尽pipe可分配的上限是多得多。 已configuration的DNS服务器按顺序尝试 – 第一个先查询,如果不可用,第二个将被查询,依此类推。

ipconfig /all会显示一个连接的当前configuration的名称服务器,就像通过GUI进入连接属性一样,但是你将不能find一个“名称服务器caching”,因为它不存在。

在这里输入图像说明

服务器不被caching。 每个DNSlogging(DNS到IP分配)具有TTL(生存时间)属性(以秒为单位)。 所以,当你第一次连接服务器的名称,你要求DNS服务器提供DNS名称的IP地址,你得到这个由操作系统caching一段时间(取决于此logging的TTL)的DNS到IP分配logging。 还有,当你从caching中存储的DNS获得这条logging的时候,以及这条logging的TTL。

如果再次连接,OS检查以前的请求是否超过TTL秒。

  • 如果TTL通过,操作系统将清除此DNS到IP分配的cachinglogging,并再次请求DNS服务器
  • 如果TTL尚未通过,则操作系统将返回从caching中分配的DNS-to-IP。

您可以使用ipconfig /flushdns强制操作系统忘记所有caching的DNS到IP分配