当我使用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地址
但如果我使用与上述相同的客户端子网查询youtube.com的google public 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如何支持工作?谷歌公共DNS是不是应该用我指定的客户端子网转发我的查询?
由于
答案 0 :(得分:0)
这取决于"什么" IP地址递归名称服务器(在本例中为8.8.8.8)转发到auth名称服务器。
通常,recursor会选择将客户端作为EDNS扩展名发送的源IP地址提交给权威名称服务器。