我在我的centOS 8服务器上安装了带有recursion yes;配置的D1服务。我注意到每小时从我的服务器发送一个非常大的通信量(~ 8GB),我无法检测到这个流量的来源是什么。然后我更改了命名的配置和禁用的递归:recursion no;
在禁用递归和测量流量之后,我可以看到发送流量急剧下降到200 MB以下。现在我的问题是,这种递归怎么会导致如此大的发送流量?!
发布于 2020-08-27 10:34:57
递归意味着名称服务器正在尽最大努力回答每个查询,甚至对于他不负责的区域也是如此。
启用递归并让他不受任何限制地回答每个客户的任何查询是个坏主意,因为那里会有很多白痴,他们要么喜欢使用其他开放的名称服务器,要么试图用答案淹没第三方。
应该只为客户端启用递归,此命名服务器必须作为解析器进行添加。所以,如果你有
recursion yes;你也应该有一个限制,比如:
allow-recursion { 127.0.0.1; x.x.x.x; };列出所有有效的客户IP。
如果此名称服务器不是域名称的主NS,则还可以打开该名称以回答允许的客户机的查询。
allow-query { 127.0.0.1; x.x.x.x; };
allow-query-cache { 127.0.0.1; x.x.x.x };此外,如果这个名称服务器只负责少数几个客户端,那么您应该考虑使用防火墙关闭每一个其他IP的UDP 53和TCP 53。
https://serverfault.com/questions/1031703
复制相似问题