google public dns 和对 edns 的支持
google public dns and support for edns
当我使用 dig(使用 eDNS 补丁编译)查询权威名称服务器时:
dig @ns1.google.com www.youtube.com +client=59.155.255.200
;; ANSWER SECTION:
www.youtube.com. 86400 IN CNAME youtube-ui.l.google.com.
youtube-ui.l.google.com. 900 IN CNAME youtube-ui-china.l.google.com.
我得到youtube在中国的IP地址
但是如果我使用与上述相同的客户端子网查询 google public 的 youtube.com dns:
挖@8.8.8.8 www.youtube.com +client=59.155.255.200/32
我得到了一个不同的 IP 列表(基本上这个列表与我从连接到欧洲 ISP 的本地机器上得到的相同)
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
; CLIENT-SUBNET: 59.155.255.200/32/0
;; QUESTION SECTION:
;www.youtube.com. IN A
;; ANSWER SECTION:
www.youtube.com. 21599 IN CNAME youtube-ui.l.google.com.
youtube-ui.l.google.com. 299 IN A 193.51.224.148
youtube-ui.l.google.com. 299 IN A 193.51.224.154
我的问题是:
在这种情况下,eDNS 支持如何工作? google public DNS 不应该将我的查询转发到我指定的客户端子网吗?
谢谢
这取决于 "what" 递归名称服务器(在本例中为 8.8.8.8)转发给授权名称服务器的 IP 地址。
通常,递归器会选择从客户端作为 EDNS 扩展发送到权威名称服务器的 UDP 数据包 中提交 源 IP 地址。
当我使用 dig(使用 eDNS 补丁编译)查询权威名称服务器时:
dig @ns1.google.com www.youtube.com +client=59.155.255.200
;; ANSWER SECTION:
www.youtube.com. 86400 IN CNAME youtube-ui.l.google.com.
youtube-ui.l.google.com. 900 IN CNAME youtube-ui-china.l.google.com.
我得到youtube在中国的IP地址
但是如果我使用与上述相同的客户端子网查询 google public 的 youtube.com dns: 挖@8.8.8.8 www.youtube.com +client=59.155.255.200/32
我得到了一个不同的 IP 列表(基本上这个列表与我从连接到欧洲 ISP 的本地机器上得到的相同)
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
; CLIENT-SUBNET: 59.155.255.200/32/0
;; QUESTION SECTION:
;www.youtube.com. IN A
;; ANSWER SECTION:
www.youtube.com. 21599 IN CNAME youtube-ui.l.google.com.
youtube-ui.l.google.com. 299 IN A 193.51.224.148
youtube-ui.l.google.com. 299 IN A 193.51.224.154
我的问题是: 在这种情况下,eDNS 支持如何工作? google public DNS 不应该将我的查询转发到我指定的客户端子网吗?
谢谢
这取决于 "what" 递归名称服务器(在本例中为 8.8.8.8)转发给授权名称服务器的 IP 地址。
通常,递归器会选择从客户端作为 EDNS 扩展发送到权威名称服务器的 UDP 数据包 中提交 源 IP 地址。