DNS服务器是计算机域名系统 (Domain Name System 或Domain Name Service) 的缩写,它是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程就称为“域名解析”。
DNS劫持和解决方案
DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能反应或访问的是假网址。
用户在接入网络运营商(联通、电信等)网络时,一般都默认获取运营商自动下发的DNS服务器地址,这样当用户在浏览器里面输错域名,或者访问不存在的域名时,运营商的DNS会把用户引导到类似号码百事通,黄页,广告页之类的页面,这种页面都是运营商维护的,成为运营商免费的广告页,可以分得一部分用户流量。
解决办法:本来没有太大不便,如果不愿意接受,可以使用公认的DNS服务器,而不是用运营商的DNS服务器,如google的8.8.8.8,或者cnnic的1.2.4.8、210.2.4.8等等。 1.打开网络连接,右键-属性-双击“Internet 协议版本 4”。 2.点击“使用下面的DNS服务器地址”。
3.在首选DNS服务器地址里面输入:8.8.8.8 (google的dns。)
4.在备用DNS服务器地址里面输入ISP的DNS地址(或不设置或设置其他公认的DNS) 5.点击确定,保存设置即可。 备注:免费的DNS服务还有8.8.8.8 (谷歌DNS)和208.67.222.222(Open DNS)等,不过这些DNS在国内使用不是很快,因此不建议使用。
DNS污染及解决方案
做一个小实验,在运行中(win+R)输入cmd启动命令行,再输入 ping www.google.com,可以看到类似如下的结果。
C:\\Users\\Fidel>ping www.google.com
正在 Ping www-g-com-chn.l.google.com [66.249.89.104] 具有 32 字节的数据: 来自 66.249.89.104 的回复: 字节=32 时间=64ms TTL=51 来自 66.249.89.104 的回复: 字节=32 时间=78ms TTL=51 来自 66.249.89.104 的回复: 字节=32 时间=80ms TTL=51 来自 66.249.89.104 的回复: 字节=32 时间=99ms TTL=51 66.249.89.104 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位):
最短 = 64ms,最长 = 99ms,平均 = 80ms
我们得到了一个来自ip地址的回复,计算机网络正是通过DNS服务器知道访问www.google.com需要到这个ip地址的。
实际上,DNS是一个有些复杂的层次系统,但我们简单理解为一个将域名翻译成IP地址的服务器即可。
什么是DNS污染?
简单粗暴的理解:就是有人通过种种手段使得DNS服务器把域名翻译成错误的IP地址。现在再做一个小实验,ping encrypted.google.com,你会得到一个无法连通的IP。
C:\\Users\\Fidel>ping encrypted.google.com
正在 Ping encrypted.google.com [59.24.3.173] 具有 32 字节的数据: 请求超时。 请求超时。 请求超时。 请求超时。
59.24.3.173 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 0,丢失 = 4 (100% 丢失),
它的真实IP地址其实不是你得到的IP,DNS服务器欺骗了你,导致你用浏览器访问https://encrypted.google.com/会走入死胡同。
4 hosts文件
首先我们要找到hosts文件,在windows系统里,它的位置通常在这里
C:\\WINDOWS\\system32\\drivers\\etc
你可以用记事本等文本编辑器打开这个文件(如果你想修改这个文件,在win7中注意用管理员权限运行记事本)。
你会看到类似如下的条目
127.0.0.1 localhost
#0.0.0.0 www.baidu.com 173.194.33.100 encrypted.google.com
其中以#开头的是注释,不会起作用。
简单粗暴的理解,hosts文件是你自己电脑上的DNS服务器,可以把域名翻译成IP地址。因此,在浏览器中,访问127.0.0.1和访问localhost是等价的。而且这个DNS服务器是最优先查找的。
现在如果我们知道了被DNS污染的网站的可以访问的真正的IP,在hosts文件中加上一条即可。(即上述条目的第三条)
173.194.33.100 encrypted.google.com
...
扩展知识:关于hosts文件的使用 免疫一些病毒(实际上是屏蔽网站,禁止访问有毒网站从而达到免疫一些已知有毒网站上的病毒)。
# 机器狗木马病毒 127.0.0.1 yu.8s7.net 127.0.0.1 1.jopanqc.com 127.0.0.1 2.joppnqq.com 127.0.0.1 wg.47255.com 127.0.0.1 1.joppnqq.com 127.0.0.1 xxx.m111.biz 127.0.0.1 1.jopenqc.com 127.0.0.1 1.jopenkk.com 127.0.0.1 xxx.vh7.biz 127.0.0.1 xxx.j41m.com
127.0.0.1 xxx.youxiji5858.com 127.0.0.1 3.joppnqq.com 127.0.0.1 d.93se.com
127.0.0.1 www.868wg.com 127.0.0.1 xxx.mmma.biz 127.0.0.1 ilove.com 127.0.0.1 tp.shpzhan.cn 127.0.0.1 www.tomwg.com 127.0.0.1 www.cike007.cn 127.0.0.1 www.22aaa.com 127.0.0.1 xx.exiao01.com 127.0.0.1 www.exiao01.com 127.0.0.1 www.exiao01.com 127.0.0.1 new.749571.com 127.0.0.1 xtx.kv8.info 127.0.0.1 cao.kv8.info 127.0.0.1 1.jopmmqq.com 127.0.0.1 171817.171817.com 127.0.0.1 d2.llsging.com 127.0.0.1 down.malasc.cn 127.0.0.1 llboss.com 127.0.0.1 nx.51ylb.cn 127.0.0.1 my.531jx.cn 127.0.0.1 qqq.dzydhx.com 127.0.0.1 qqq.hao1658.com 127.0.0.1 www.333292.com 127.0.0.1 down.18dd.net 127.0.0.1 up.22x44.com
127.0.0.1 aaa.faba01.com 127.0.0.1 bad.tqdlt.cn 127.0.0.1 1.chsipo.com 127.0.0.1 c3.aishangai.net 127.0.0.1 c2.aishangai.net 127.0.0.1 xxx.188dm.com 127.0.0.1 x2.1a2b3c1.com 127.0.0.1 d1.163500.net
127.0.0.1 down.google-serv.cn # 磁碟机dummycom病毒
127.0.0.1 gxgxy.net 127.0.0.1 c0mo.com
更改hosts文件快捷批处理
语句:notepad \"%SystemRoot%\\system32\\drivers\\etc\\hosts\"
ipconfig /flushdns bat文件格式
因篇幅问题不能全部显示,请点此查看更多更全内容