dig
我有一个PHP脚本,通过Ubuntu上的函数调用bash命令exec
来监控数百个域。
该脚本的作用是调用dig
以获取每个域上的一些 DNS 记录进行分析。此脚本每 10 分钟由 cron 作业运行一次。
我想知道,在短时间内发出数百个 DNS 查询是否会遇到一些速率限制问题并最终导致其失败。
如果这样的 DNS 查询流量目前没有问题,我想知道什么样的流量会导致我陷入任何类型的 DNS 速率限制问题(如果有),因为我管理的域数量正在增长。
谢谢!
答案1
除非您专门前往名称服务器获取 DNS 记录,否则我相信 dig 命令只会命中缓存的 DNS 记录(除非 TTL 已过期)缓存提供商可能设置了某种速率限制,因为这种请求可用作攻击媒介。
您可以检查每个网站的记录的 TTL,并推迟再次请求该记录,直到 TTL 过期。这可能会大大减少您发出的请求数量。当然,这取决于您正在处理的记录的 TTL,但大多数网站的 TTL 大约为 3 小时或更长时间。
编辑:我还发现之前问过有关限制 DNS 请求速率的问题: 查询 DNS 通常有速率限制吗?