V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
woaihsw
V2EX  ›  宽带症候群

北京联通下发的 dns 的 ttl 为什么这么飘忽...

  •  
  •   woaihsw · 2022-07-02 22:02:24 +08:00 · 2926 次点击
    这是一个创建于 874 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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 到底是不是从权威服务器拿的...

    10 条回复    2022-07-04 08:37:16 +08:00
    dem0ns
        1
    dem0ns  
       2022-07-02 22:06:53 +08:00
    可能做了负载均衡,有多个 dns 服务器
    bclerdx
        2
    bclerdx  
       2022-07-02 22:21:22 +08:00 via Android
    同问,这个 ttl 值是干什么用的?
    laozhoubuluo
        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
    ```
    Kinnice
        4
    Kinnice  
       2022-07-02 22:34:04 +08:00 via Android
    @bclerdx 当 ttl 到期,就认为这个解析记录不可信了,应该向上游 dns 获取新的 dns 解析
    laozhoubuluo
        5
    laozhoubuluo  
       2022-07-02 22:34:45 +08:00
    另外由于测试只是随机跑了一些次数,固网的 DNS 可能不全,如果不停跑的话有可能出来更多。

    @bclerdx TTL 是失效时间,失效时间到之后记录作废,需要重新到权威 DNS 上取记录。
    unics
        6
    unics  
       2022-07-02 22:41:20 +08:00
    猜测是负载均衡上没有配置成基于源地址的会话保持策略
    woaihsw
        7
    woaihsw  
    OP
       2022-07-02 22:48:13 +08:00
    @laozhoubuluo 老周泥嚎, 之前经常混你的贴吧...

    阿里的 dns 肯定也是集群啊...

    它为什么没有这个问题...
    laozhoubuluo
        8
    laozhoubuluo  
       2022-07-02 23:00:36 +08:00
    @unicser DNS 配这个倒是意义不大,反倒影响负载均衡效果。

    @woaihsw 这个跟部署模式有关系。阿里的集群走的是 anycast ,也就是通过 BGP 选就近路由,应该是能做到同一个地址打到一个集群。另外也有可能如楼上所说配置了同一个地址固定打一个机器的负载均衡策略。
    txydhr
        9
    txydhr  
       2022-07-03 10:21:07 +08:00 via iPhone
    很正常啊,对外一个 ip ,不代表只有一个服务器。dnsleak 可以查询到 dns 向上游查询到真正出口。运营商的 dns 服务器压力可比阿里大多了。
    yyyb
        10
    yyyb  
       2022-07-04 08:37:16 +08:00
    我用联通 4G 的 DNS ,123.123.123.123 and 123.123.123.124 ,联通家宽那些 202 开头的的 DNS 确实总出问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2600 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 01:52 · PVG 09:52 · LAX 17:52 · JFK 20:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.