我们的 VoIP 软件有很多用户。软件电话每分钟检查每个用户的域,用户拨打电话、发送消息等都是常见的 VoIP 操作。每个用户通常每分钟进行几次 DNS 检查,总共有相当多的请求。
我们无法控制最终用户尝试解析哪个公共 DNS。有时,当使用 Google 公共 DNS 时,它会随机失败。对于其他 DNS(如 Cloudflare (1.1.1.1)),它始终有效。
我们对此进行了研究,问题不在于最终用户对 Google DNS 的 DNS 检查数量,我们知道这是有限制的。实际上,问题出在 Google DNS 和我们的域名服务器,因为 Google 有时拒绝检查子域名看来这里还有另一个限制。
以下是 nslookup 之后对 8.8.8.8 的请求失败的示例(该域存在)。
dns.google can't find 7157599388.sip.teltel.io: Non-existent domain
知道如何改变这个限制吗?
非常感谢您的帮助!
先感谢您!
答案1
我不能完全确定是什么原因导致8.8.8.8
(有时)无法解析您的名字,但我可以看到有一件事已经损坏并且可能会导致问题。
该区域的名称服务器sip.teltel.io
对sip.teltel.io NS
查询做出无意义的响应:
$ dig @ns1.teltel.io sip.teltel.io NS +norec
; <<>> DiG 9.11.24-RedHat-9.11.24-2.fc33 <<>> @ns1.teltel.io sip.teltel.io NS +norec
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40833
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;sip.teltel.io. IN NS
;; ANSWER SECTION:
sip.teltel.io. 3600 IN CNAME www.teltel.io.
;; Query time: 82 msec
;; SERVER: 3.9.142.25#53(3.9.142.25)
;; WHEN: Mon Dec 07 17:20:52 UTC 2020
;; MSG SIZE rcvd: 60
$
这意味着,如果8.8.8.8
要缓存sip.teltel.io NS
响应,它会知道没有名称服务器,这可能成为你烦恼的原因。