root@OpenWrt:~# dig @202.106.46.151 www.baidu.com
; <<>> DiG 9.18.1 <<>> @202.106.46.151 www.baidu.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53410
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 285 IN CNAME www.a.shifen.com.
www.a.shifen.com. 39 IN A 110.242.68.4
www.a.shifen.com. 39 IN A 110.242.68.3
;; Query time: 9 msec
;; SERVER: 202.106.46.151#53(202.106.46.151) (UDP)
;; WHEN: Sat Jul 02 21:55:14 CST 2022
;; MSG SIZE rcvd: 90
root@OpenWrt:~# dig @202.106.46.151 www.baidu.com
; <<>> DiG 9.18.1 <<>> @202.106.46.151 www.baidu.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7202
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 1056 IN CNAME www.a.shifen.com.
www.a.shifen.com. 245 IN A 110.242.68.4
www.a.shifen.com. 245 IN A 110.242.68.3
;; Query time: 9 msec
;; SERVER: 202.106.46.151#53(202.106.46.151) (UDP)
;; WHEN: Sat Jul 02 21:55:15 CST 2022
;; MSG SIZE rcvd: 90
pppoe 下发的两个 dns, 202.106.46.151 和 202.106.195.68 都有这个问题...
相隔 1s 的两次查询, 返回的 ttl 按理来说也应该是相差 1s 才对...
这怎么会从 285s 忽然增加到 1056s...
但是公共 dns 就没有这种现象, ttl 就是很合理的每秒递减...
root@OpenWrt:~# dig @223.5.5.5 www.baidu.com
; <<>> DiG 9.18.1 <<>> @223.5.5.5 www.baidu.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34794
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 142 IN CNAME www.a.shifen.com.
www.a.shifen.com. 142 IN A 110.242.68.3
www.a.shifen.com. 142 IN A 110.242.68.4
;; Query time: 9 msec
;; SERVER: 223.5.5.5#53(223.5.5.5) (UDP)
;; WHEN: Sat Jul 02 21:56:14 CST 2022
;; MSG SIZE rcvd: 90
root@OpenWrt:~# dig @223.5.5.5 www.baidu.com
; <<>> DiG 9.18.1 <<>> @223.5.5.5 www.baidu.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12533
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 141 IN CNAME www.a.shifen.com.
www.a.shifen.com. 141 IN A 110.242.68.4
www.a.shifen.com. 141 IN A 110.242.68.3
;; Query time: 0 msec
;; SERVER: 223.5.5.5#53(223.5.5.5) (UDP)
;; WHEN: Sat Jul 02 21:56:15 CST 2022
;; MSG SIZE rcvd: 90
那么问题来了, 联通的 dns 服务器配置是不是出了什么问题...
它这个 ttl 到底是不是从权威服务器拿的...
1
dem0ns 2022-07-02 22:06:53 +08:00
可能做了负载均衡,有多个 dns 服务器
|
2
bclerdx 2022-07-02 22:21:22 +08:00 via Android
同问,这个 ttl 值是干什么用的?
|
3
laozhoubuluo 2022-07-02 22:33:04 +08:00
联通的 DNS 是多台机器负载均衡的,用 nslookup 可以看到主机名会比较明显(如以下数据)。
固网 DNS 比较混乱,除了每一台有一个 bta.net.cn 的代号设备(地址不明),其他的分布于 tucheng 或者 xingfudajie 。 移网 DNS 比较统一,两个地址指向一个集群,集群内 yzeq 和 szds 各三台。 ``` C:\Users\laozh>nslookup www.baidu.com 202.106.46.151 服务器: dialdns.bta.net.cn 服务器: c1-xingfudajie-recurse-ns1 服务器: c1-xfdj-recurse-ns5 服务器: c1-xfdj-recurse-ns4 服务器: c1-tucheng-recurse-ns1 服务器: c1-tucheng-recurse-ns2 服务器: c1-tc-pbs-recu-ns1 服务器: c1-xingfudajie-recurse-ns2 C:\Users\laozh>nslookup www.baidu.com 202.106.196.115 服务器: linedns.bta.net.cn 服务器: c1-xfdj-recurse-ns4 服务器: c1-xingfudajie-recurse-ns2 服务器: c1-tucheng-recurse-ns1 服务器: c1-tucheng-recurse-ns2 服务器: c1-xfdj-recurse-ns5 服务器: c1-tucheng-recurse-ns2 服务器: c1-xfdj-recurse-ns5 C:\Users\laozh>nslookup www.baidu.com 202.106.195.68 服务器: gjjdial.bta.net.cn 服务器: c1-xingfudajie-recurse-ns2 服务器: c1-tucheng-recurse-ns2 服务器: c1-tucheng-recurse-ns1 服务器: c1-xfdj-recurse-ns5 服务器: c1-xfdj-recurse-ns4 服务器: c1-xingfudajie-recurse-ns1 C:\Users\laozh>nslookup www.baidu.com 202.106.0.20 服务器: gjjline.bta.net.cn 服务器: c1-xfdj-recurse-ns5 服务器: c1-tucheng-recurse-ns2 服务器: c1-tc-pbs-recu-ns1 服务器: c1-tucheng-recurse-ns1 服务器: c1-xfdj-pbs-recu-ns1 服务器: c1-xfdj-recurse-ns4 服务器: c1-xingfudajie-recurse-ns2 C:\Users\laozh>nslookup www.baidu.com 123.123.123.123 服务器: 3g-yzeq-recurse-ns2 服务器: 3g-szds-recurse-ns3 服务器: 3g-szds-recurse-ns2 服务器: 3g-szds-recurse-ns1 服务器: 3g-yzeq-recurse-ns3 服务器: 3g-yzeq-recurse-ns1 C:\Users\laozh>nslookup www.baidu.com 123.123.123.124 服务器: 3g-yzeq-recurse-ns3 服务器: 3g-yzeq-recurse-ns2 服务器: 3g-szds-recurse-ns1 服务器: 3g-szds-recurse-ns3 服务器: 3g-yzeq-recurse-ns1 服务器: 3g-szds-recurse-ns2 ``` |
4
Kinnice 2022-07-02 22:34:04 +08:00 via Android
@bclerdx 当 ttl 到期,就认为这个解析记录不可信了,应该向上游 dns 获取新的 dns 解析
|
5
laozhoubuluo 2022-07-02 22:34:45 +08:00
|
6
unics 2022-07-02 22:41:20 +08:00
猜测是负载均衡上没有配置成基于源地址的会话保持策略
|
7
woaihsw OP |
8
laozhoubuluo 2022-07-02 23:00:36 +08:00
|
9
txydhr 2022-07-03 10:21:07 +08:00 via iPhone
很正常啊,对外一个 ip ,不代表只有一个服务器。dnsleak 可以查询到 dns 向上游查询到真正出口。运营商的 dns 服务器压力可比阿里大多了。
|
10
yyyb 2022-07-04 08:37:16 +08:00
我用联通 4G 的 DNS ,123.123.123.123 and 123.123.123.124 ,联通家宽那些 202 开头的的 DNS 确实总出问题
|