阿里 DNS 为什么要修改 TTL( Time to live)参数?

2016-02-02 08:50:45 +08:00
 initialdp
用 wireshark 抓包 DNS 数据,发现如果采用阿里 DNS , TTL 会被修改为 15 秒。而如果采用其他 DNS , TTL 是原始值,未被修改。

这样做的目的是什么呢?修改为 15 秒,增加了大量完全不必要的 DNS 查询流量。我理解短 TTL 对某些站点的负载均衡有好处,可是擅自修改目标站点的 DNS 记录,这样合适么?
4397 次点击
所在节点    问与答
10 条回复
czz811
2016-02-02 10:43:49 +08:00
不知道你说的是权威 DNS 还是递归 DNS
权威 DNS TTL 一般情况下是可以自己设置的
刚才查看了一下阿里递归 DNS 并不是你所说的 15 秒,而是真实的来自于权威 DNS 上的 TTL 设置
julyclyde
2016-02-02 11:41:22 +08:00
采用其它的会逐渐减少的
不减少一直输出固定值的那是权威 DNS ,也就是这个域所属的服务器
initialdp
2016-02-02 11:48:41 +08:00
没有那么复杂。比如我们自己的一个服务器: stun.minisipserver.com 。使用 linode 的 NS ,很明确设置了 TTL 为 3600 秒。客户端向 223.5.5.5 查询,可以看到 TTL 被修改为 15 秒,向 119.29.29.29 查询, TTL 仍然是 3600 秒。

我只是关心了原始 NS 记录和最终客户端得到的结果是否一致,同时不是很理解阿里 DNS 修改 TTL 的意图是什么,看上去这只会增加阿里 DNS 系统自己的负担。
initialdp
2016-02-02 11:56:14 +08:00
@julyclyde 我们的服务器域名解析是放在 linode ,“ stun.minisipserver.com ”这台服务器是放在 DO ,应该不是一个域,我不清楚 linode 是不是权威 DNS 。
czz811
2016-02-02 13:40:22 +08:00
阿里应该不会修改 TTL 的,你把真实域名贴出来,我看看来。
lenovo
2016-02-02 13:58:10 +08:00
r#5 @czz811 貌似确实是改了

C:\Windows\system32>dig stun.minisipserver.com @223.5.5.5

; <<>> DiG 9.10.3-P3 <<>> stun.minisipserver.com @223.5.5.5
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24479
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;stun.minisipserver.com. IN A

;; ANSWER SECTION:
stun.minisipserver.com. 15 IN A 46.101.202.148

;; Query time: 2208 msec
;; SERVER: 223.5.5.5#53(223.5.5.5)
;; WHEN: Tue Feb 02 13:57:36 ?D1ú±ê×?ê±?? 2016
;; MSG SIZE rcvd: 56

C:\Windows\system32>dig stun.minisipserver.com @1.2.4.8

; <<>> DiG 9.10.3-P3 <<>> stun.minisipserver.com @1.2.4.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29700
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 11

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;stun.minisipserver.com. IN A

;; ANSWER SECTION:
stun.minisipserver.com. 3600 IN A 46.101.202.148

;; AUTHORITY SECTION:
minisipserver.com. 3600 IN NS ns4.linode.com.
minisipserver.com. 3600 IN NS ns3.linode.com.
minisipserver.com. 3600 IN NS ns1.linode.com.
minisipserver.com. 3600 IN NS ns5.linode.com.
minisipserver.com. 3600 IN NS ns2.linode.com.

;; ADDITIONAL SECTION:
ns1.linode.com. 172297 IN A 162.159.27.72
ns1.linode.com. 172297 IN AAAA 2400:cb00:2049:1::a29f:1a63
ns2.linode.com. 172297 IN A 162.159.24.39
ns2.linode.com. 16 IN AAAA 2400:cb00:2049:1::a29f:1827
ns3.linode.com. 172297 IN A 162.159.25.129
ns3.linode.com. 171750 IN AAAA 2400:cb00:2049:1::a29f:1981
ns4.linode.com. 170877 IN A 162.159.26.99
ns4.linode.com. 17 IN AAAA 2400:cb00:2049:1::a29f:1b48
ns5.linode.com. 165968 IN A 162.159.24.25
ns5.linode.com. 170889 IN AAAA 2400:cb00:2049:1::a29f:1819

;; Query time: 555 msec
;; SERVER: 1.2.4.8#53(1.2.4.8)
;; WHEN: Tue Feb 02 13:58:25 ?D1ú±ê×?ê±?? 2016
;; MSG SIZE rcvd: 384
czz811
2016-02-02 14:01:37 +08:00
为什么我这边正常:

Querying: stun.minisipserver.com -t A @223.5.5.5
Returned 1 Answers

0. stun.minisipserver.com has address 46.101.202.148
- record type = A (# 1)
- record data = 46.101.202.148
- record ttl = 3494
czz811
2016-02-02 14:04:41 +08:00
估计是因为阿里 DNS223.5.5.5 采用 anycast 技术,正好你那边使用的最近的一台 DNS 服务器有问题,所以导致你那边有问题,我们这边是正常的。
initialdp
2016-02-02 14:13:22 +08:00
@czz811 难道阿里 DNS 在不同区域有不同策略? 我这坐标是深圳电信。

@lenovo 是的,这个结果和我的一样,都是修改为 15 秒了。我觉得修改得莫名其妙,完全无法理解。
jsq2627
2016-02-04 02:29:30 +08:00
我这边也正常

$ dig @223.5.5.5 stun.minisipserver.com
......
;; ANSWER SECTION:
stun.minisipserver.com. 3600 IN A 46.101.202.148
......

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/254931

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX