使用的是国外机器搭建的 adh ,设置请求的时候传递子网,上游 DNS 设置为阿里 DNS 和 quad9.
偶尔会发现 cdn.jsdelivr.net 解析到国外的节点了,
排查后发现是因为阿里 DNS 的原因,有时候会解析到国外节点。
另外一个小知识:部分国外 ip 使用阿里 DNS 会被路由到国内,这时候 DNS 请求是被污染的。 不过这台机器路由 223.5.5.5 是到新加坡的机房,这样的话,就算是解析被污染的域名,但是解析结果也是纯净无污染的。
[root@vultr ~]# dig cdn.jsdelivr.net @223.5.5.5 +subnet=119.6.6.7 ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> cdn.jsdelivr.net @223.5.5. 5 +subnet=119.6.6.7 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34149 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1408 ; CLIENT-SUBNET: 119.6.6.7/32/24 ;; QUESTION SECTION: ;cdn.jsdelivr.net. IN A ;; ANSWER SECTION: cdn.jsdelivr.net. 15 IN CNAME jsdelivr.map.fastly.net. jsdelivr.map.fastly.net. 15 IN A 199.232.45.229 ;; Query time: 73 msec ;; SERVER: 223.5.5.5#53(223.5.5.5) ;; WHEN: 二 11 月 30 18:45:56 CST 2021 ;; MSG SIZE rcvd: 107
![]() | 1 Sekai 2021-12-02 10:00:59 +08:00 国外机器就别用国内服务了好吧 |
3 shinichii 2021-12-02 21:25:06 +08:00 ![]() 用你那个 dig 了一下,返回的 IP 有 110.18.242.76 内蒙古巴彦淖尔乌拉特中旗 联通,119.6.234.139 四川省绵阳市 联通,151.101.113.229 德国法兰克福…… |
4 HalloCQ 2021-12-03 09:19:23 +08:00 alidns 的 edns 是这样的 要想正常 还得用 dnspod |
![]() | 5 loukky OP @HalloCQ 可惜 dnspod 的 edns 设置成国内 IP 的话,解析结果是有污染的。。 |
![]() | 6 johnjiang85 2021-12-03 20:38:34 +08:00 @loukky 在海外请求,开盖有喜 ''' dig @doh.pub google.com +subnet=119.6.6.7 ; <<>> DiG 9.11.6-P1 <<>> @doh.pub google.com +subnet=119.6.6.7 ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30750 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; CLIENT-SUBNET: 119.6.6.7/32/24 ;; QUESTION SECTION: ;google.com. IN A ;; ANSWER SECTION: google.com. 300 IN A 172.217.160.110 ;; Query time: 60 msec ;; SERVER: 162.14.21.178#53(162.14.21.178) ;; WHEN: Fri Dec 03 20:37:58 CST 2021 ;; MSG SIZE rcvd: 67 ''' |
![]() | 7 loukky OP @johnjiang85 同海外测试:dnspod ''' [root@instance-kr2-976008 ~]# dig @doh.pub www.gov.tw +subnet=119.6.6.7 ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @doh.pub www.gov.tw +subnet=119.6.6.7 ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 14668 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;www.gov.tw. IN A ;; Query time: 4866 msec ;; SERVER: 162.14.21.56#53(162.14.21.56) ;; WHEN: Sat Dec 04 00:27:54 CST 2021 ;; MSG SIZE rcvd: 39 ''' [root@instance-kr2-976008 ~]# dig @doh.pub www.gov.tw +subnet=119.6.6.7 aaaa ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @doh.pub www.gov.tw +subnet=119.6.6.7 aaaa ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 2945 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;www.gov.tw. IN AAAA ;; Query time: 2708 msec ;; SERVER: 162.14.21.178#53(162.14.21.178) ;; WHEN: Sat Dec 04 00:29:02 CST 2021 ;; MSG SIZE rcvd: 39 Alidns: ''' [root@instance-kr2-976008 ~]# dig @223.5.5.5 www.gov.tw +subnet=119.6.6.7 ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @223.5.5.5 www.gov.tw +subnet=119.6.6.7 ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10750 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1408 ; CLIENT-SUBNET: 119.6.6.7/32/24 ;; QUESTION SECTION: ;www.gov.tw. IN A ;; ANSWER SECTION: www.gov.tw. 364 IN A 223.200.155.55 ;; Query time: 2098 msec ;; SERVER: 223.5.5.5#53(223.5.5.5) ;; WHEN: Sat Dec 04 00:29:46 CST 2021 ;; MSG SIZE rcvd: 67 ''' |
![]() | 8 johnjiang85 2021-12-04 09:17:43 +08:00 @loukky 这个他自己权威的限制 |
![]() | 9 johnjiang85 2021-12-04 09:33:23 +08:00 香港的递归节点都被权威限制了 |
![]() | 10 loukky OP @johnjiang85 这是韩国服务器查询的,我看 dnspod 是有走到韩国节点,不知道是不是你说的香港递归节点被限制的原因 |
![]() | 11 johnjiang85 2021-12-05 08:19:31 +08:00 @loukky 接入点是全球 Anycast 的,但是接入点只有缓存,递归节点目前海外只有香港的多个递归服务器,目前是全部被权威封禁了,暂时也不会进行额外处理或更换。 |
![]() | 12 johnjiang85 2021-12-09 11:54:44 +08:00 ![]() @loukky 海外递归额外加了北美节点,现在全球可以解析这个域名了,后面还会适时增加其他几个海外地域的递归。 |
![]() | 13 loukky OP @johnjiang85 感谢,目前有使用 doh.pub 暂时还未发现有污染的情况 |
![]() | 14 loukky OP @johnjiang85 你好,我测试了下。在国外服务器上面使用 dot.pub 解析,subnet 为国内 ipv6 时,解析 www.zhihu.com 返回的是国外的节点 |
![]() | 15 johnjiang85 2021-12-10 00:48:22 +08:00 @loukky 测试了下,后端递归不支持 ipv6 的 ecs 的原因,只能用不带 ecs 的查询去重试了,递归实际 ip 都是海外的,结果就解析到海外了。 要下周了,我需要找人看下后端递归不支持 ipv6 ecs 的这个问题。 |
![]() | 16 johnjiang85 2021-12-10 00:50:06 +08:00 @loukky 后端递归版本比较老,确实没有支持 ipv6 的 ecs ,目前没有太好的办法,要等后面版本升级去支持了。 |
![]() | 17 johnjiang85 2021-12-10 00:51:21 +08:00 专业版 doh ,dot 是通过其他方式来规避了这个问题,后续需要解决,但是恐怕不会太快了 |
![]() | 18 loukky OP @johnjiang85 暂时在 ipv6 的机器上面使用 quad9 吧。这个是正常的.... |