DNS劫持(DNS列表的问题)

DNS劫持就是dns系统被入侵或人为的修改某些记录,如A记录,用专业的术语来讲就是通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址。

DNS劫持会导致我们访问了一些不存在的或不稳定的网站的时候,访问到的却是电信114搜索(详见月光博客《断网后互联星空的浏览器劫持》)或访问Google却显示了Baidu的主页(详见月光博客《Google博客搜索摇身一变成百度》)。

  如果需要确认自己是否处在DNS劫持的环境中,我们可以在Windows命令行cmd中使用Windows自带的网络诊断工具nslookup查找一个不存在或不稳定的域名进行一下网络诊断:

  C:\>nslookup www.SomeRandomDomainName.com

  Server: ns-pd.online.sh.cn

  Address: 202.96.209.133

  Non-authoritative answer:

  Name: www.SomeRandomDomainName.com

  Address: 218.83.175.155

   我们看到,www.SomeRandomDomainName.com本应该是一个不存在的域名,DNS服务器应该告诉我们这个域名不存在,但我们却看 到DNS服务器告诉我们这个域名的IP为218.83.175.155(不同地区的114搜索的IP都不同,可能得到的IP并不是 218.83.175.155,而是自己所在地区的114搜索的服务器IP地址),而这个IP却是114搜索的IP,导致我们在浏览器中访问这个网站时看 到的是114搜索的网页。

  如果需要解决DNS劫持的问题,可以把自己的域名解析服务器换乘国外的,比如OpenDNS(详见月光博客《使用OpenDNS解决DNS域名劫持》)或Google DNS(详见月光博客《Google推出免费DNS服务》)。

  解决之后我们再次使用nslookup查找一下这个网站:

  C:\>nslookup www.SomeRandomDomainName.com

  Server: google-public-dns-a.google.com

  Address: 8.8.8.8

  *** google-public-dns-a.google.com can't find www.SomeRandomDomainName.com: Non-existent domain

  我们看到DNS服务器正确的告诉了我们这个域名不存在,我们不会被劫持到114搜索了。

解决DNS劫持的方法:
 
在Interner协议(TCP/IP)的属性页里,选择"使用下面的DNS服务器地址",首选和备用DNS服务器分别设置为8.8.8.8和8.8.4.4(Google Public DNS),完成后重新连接上网。
 
原理是由于域名劫持往往只能在特定的被劫持的网络范围内进行,所以在此范围外的域名服务器(DNS)能够返回正常的IP地址。但是由此引出了域名劫持通常相伴的措施――封锁正常DNS的IP。[中国大陆境内的客户端不一定能获得正确的解析结果]

 

通俗理解:

DNS劫持,指用户访问一个被标记的地址时,DNS服务器故意将此地址指向一个错误的IP地址的行为。

范例,网通、电信、铁通的某些用户有时候会发现自己打算访问一个地址,却被转向了各种推送广告等网站,这就是DNS劫持。

posted on 2013-07-22 16:12  TrustNature  阅读(271)  评论(0)    收藏  举报