QUOTE:
原帖由 abel 于 2006-7-11 09:02 发表
問題是你的 DNS request 根本沒有送到國外某些 Server 上,
因為 GCD 用的是 man in the middle 手法,加上 UDP 的可偽照性,
所以你會認為是國外不 response , 為什麼台灣可以 response 而
你卻不能,為什麼會和你 ...
問題是你的 DNS request 根本沒有送到國外某些 Server 上,
因為 GCD 用的是 man in the middle 手法,加上 UDP 的可偽照性,
所以你會認為是國外不 response , 為什麼台灣可以 response 而
你卻不能,為什麼會和你 ...
abel兄举的例子,让我有点相信了man in the middle手法,但也不能十分确定。
CODE:
[Copy to clipboard]
:~# dig @a.gtld-servers.net ********.com NS
; <<>> DiG 9.3.2 <<>> @a.gtld-servers.net ********.com NS
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35413
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;********.com. IN NS
;; ANSWER SECTION:
********.com. 86400 IN A 169.132.13.103
;; Query time: 17 msec
;; SERVER: 192.5.6.30#53(192.5.6.30)
;; WHEN: Tue Jul 11 10:25:48 2006
;; MSG SIZE rcvd: 46
这里,敏感词已经被我用*替代。; <<>> DiG 9.3.2 <<>> @a.gtld-servers.net ********.com NS
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35413
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;********.com. IN NS
;; ANSWER SECTION:
********.com. 86400 IN A 169.132.13.103
;; Query time: 17 msec
;; SERVER: 192.5.6.30#53(192.5.6.30)
;; WHEN: Tue Jul 11 10:25:48 2006
;; MSG SIZE rcvd: 46
从结果看,我查询一个NS记录,它却回应一个A记录给我,显然是被劫持了。
从劫持的结果猜测一下手段,觉得也未必就是标准的man in the middle,还可能是简单的包过滤吧。基于UDP的无连接特性,直接过滤会造成client老是在等待响应,直到Time out,所以,过滤的同时,给了个伪装的响应,让client不要傻等。这倒是在必须过滤的大前提下,提高网路效率的好事呢。如果没有敏感词,包应该还是能送到国外Server去的。
再用有连接的测试一下:
CODE:
[Copy to clipboard]
~# dig +tcp @a.gtld-servers.net ********.com NS
;; communications error to 192.5.6.30#53: connection reset
;; communications error to 192.5.6.30#53: connection reset
嘿嘿,看,干脆利落,reset。如果处心积虑用man in the middle,一样有办法给假响应的。
所以,个人觉得,还是简单的包过滤。
当然,这个仅仅是黑盒法,不当之处,还请abel兄斧正。如果有必要,我还可以问一下ISP的朋友,正好他管这方面。
会员注册
会员登录
个人空间
发表评论