如果DNS服务器查找记录并且它丢失了,它通常会“消极地缓存”此记录丢失的事实,并且不会再尝试查找一段时间.我在
RFC中没有看到关于负缓存的TTL应该是什么,所以我猜它有些武断.在现实世界中,这些负面记录需要多长时间?
解决方法
负缓存的TTL不是任意的.它取自所请求记录所属区域顶部的SOA记录,如果存在的话.例如:
example.org. IN SOA master-ns1.example.org. Hostmaster.example.org. ( 2012091201 43200 1800 1209600 86400 )
SOA记录中的最后一个值(“86400”)是客户被要求在example.org下缓存否定结果的时间量.
如果客户端请求donotexist.example.org.,它将缓存结果86400秒.