共计 2644 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | 自从进入网络时代,大家的生活也愈加多姿多彩起来,但也多出了很多烦恼。例如,信息海洋中时不时出现的大群垃圾,以及深渊,就令人防不胜防。 |
自从进入网络时代,大家的生活也愈加多姿多彩起来,但也多出了很多烦恼。例如,信息海洋中时不时出现的大群垃圾,以及深渊,就令人防不胜防。
这里说的正是上网过程中遇到莫名其妙的网页跳转,好端端的一个网页,突然就变成了满屏的广告; 或者本来能正常访问的页面,突然就打不开了,但 QQ 之类的软件却可以正常登录。这到底是什么原因造成的呢? 其实出现了这些令人困扰的异常现象,意味着你可能是 DNS 劫持、投毒的受害者。
虽然我们经常上网,但并不是每个人都对开启一个网页背后的机制了如指掌。轻点鼠标,网页即呈现在眼前,何其熟悉的操作,但这熟悉操作的背后,却蕴藏着一套环环相扣的流程。
从用户点击鼠标、敲下回车,到网页显示,信息首先会通过浏览器发送,然后经路由中转,接着 DNS 将域名解析成 IP,找到服务器后服务器会发送内容给用户,接着再由路由转发数据,最后浏览器将内容呈现给用户。视实际情况,这个过程中还可能存在更多关卡,比如说防火墙、代理服务器等。
在这套流程中,无论浏览器、路由、DNS、服务器等任一环节中出了叛徒,都有可能导致网页无法访问。而被人篡改最多的,或许就是 DNS 了。
DNS 全称是域名系统,它所起到的作用,在于把域名解析为 IP 地址。我们能访问到某个网站,靠的是连接到该网站服务器的 IP 地址,DNS 在这里面起到的作用就是把“www.baidu.com”解析成“123.125.114.144”这样的 IP 地址,让你能够连接到这地址的服务器来访问网站。
把网址解析为 IP 地址,就是 DNS 所起到的作用了
在上网的流程中,有太多的因素可以影响到 DNS,例如你的 PC 的设置、路由器的设置、运营商的设置等等,DNS 一旦出现了差错,就会无法把域名解析成为正确的 IP 地址,我们自然也无法访问到正确的页面。因此,如果你发现开启不了网页,但 QQ 这样直连 IP 的网络软件却可以正常服务,那 DNS 就是一个非常值得怀疑的原因。
DNS 这个环节可以被太多因素影响,所以不少利益相关者都会在这里面做手脚。例如,DNS 劫持就是非常常见的广告投放手段。
一般情况下,如果你不特别设置 DNS 服务器,那么 DNS 服务器就会由运营商来提供。按理来说,运营商提供的 DNS 服务器应该用于正确地为你提供 IP 跳转,但偏偏很多运营商 DNS 服务器的人品都不堪入目。
你常常就能看到运营商会把你给跳转到什么开通上网套餐之类的页面,甚至会出现你输入 A 购物网但却被跳转到竞争对手 B 的情况,这就是所谓的 DNS 劫持。
开个百度,整个网页都被强制跳转到 XX 娱乐城去了,这就是典型的 DNS 劫持
要对付运营商的 DNS 劫持,设置一个可靠的 DNS 服务器往往就可以解决问题。然而,很多朋友在设置了可靠的 DNS 服务器后,仍然不能解析到正确的 IP 地址,例如某个网站的 IP 地址明明是可以 Ping 通的,但就是无法访问。这种情况,通常是 DNS 污染所导致的。
虽然 DNS 服务器能够正常工作,但我们向 DNS 服务器发送域名解析请求的时候,是通过 UDP 连接发送的。UDP 并不是什么可靠的连接,所以域名解析请求能够在半路上就被人拦截,然后冒充 DNS 服务器给你发送错误的 IP 地址。IP 地址是错的,我们自然也不能正常地访问网站,有可能会看到广告、钓鱼页面,也有可能什么也看不到。
DNS 默认使用 UDP 连接,而且未经加密,很容易遭遇污染、投毒
无论是那种情况,DNS 出错就意味着你没法正确地访问网站。在整个上网的流程中,DNS 这环节无疑是脆弱而且不受用户控制的,如果一定要有人用 DNS 来害你没法正常上网,大多数人都对此无能为力。那么 DNS 频频出错到底还有没有救呢?
前面也提到过,要对付运营商的 DNS 劫持,我们可以设置一个可靠的 DNS 服务器来进行域名解析。目前很多安全厂商或者互联网企业乃至公益组织,都提供了 DNS 解析服务。
例如奇虎 360、诺顿、Comodo、百度、阿里、Google 等企业,都有提供 DNS 解析服务,你也可以选择 Open DNS 这样的老牌免费 DNS 服务。
这些 DNS 服务,都可以在网上轻易搜到具体的 IP 地址,这里就不一一罗列了。当然,并不是说用了这些 DNS 服务,就一定不会有 DNS 劫持,万一这些企业人品也不行呢? 至于谁靠谱,就得靠你来自个儿筛选了。
另外,DNS 如果不是运营商所提供的话,速度表现并不一定理想。这里推荐一款名为“DNS jumper”的软件,它能够比较全面得测试 DNS 的连接速度,并设置 DNS。
利用 DNS jumper,很容易就能够找到适合你网络状况的 DNS。另外,如果运营商 DNS 劫持行为太过猖獗,也可以到工信部投诉运营商劫持网页,这的确是非常行之有效的方法,有效到了某些运营商竟然直接屏蔽了工信部的投诉网页的程度。那么该如何到工信部投诉运营商呢?
首先,遇到网页劫持的情况,不要直接向工信部投诉。按照流程,先向运营商投诉,无效后投诉到工信部,才会被受理。工信部张贴出来的申诉条件中也包括“已经向被申诉人投诉且对其处理结果不满意或者其未在 15 日内答复”这一条,所以先走一下流程也是有必要的,万一向运营商投诉就解决问题了呢?
然而事情往往不会这么美好,运营商的回答通常很敷衍,对技术不熟悉的客服人员甚至不明白网页劫持是什么意思。无效后,就可以向工信部投诉运营商了! 如无意外,投诉后问题就会得以解决。
但即使如此,如果有人在 DNS 请求的 UDP 连接过程中做手脚,那还是防不胜防。一些公司就会利用这个原理,控制不让员工随便访问网络。如果要规避这个过程,思路就是避免 DNS 用 UDP 这样不靠谱的连接来查询。你可以利用一些手段,设置 DNS 为 TCP 连接查询,也可以通过加密来让其他服务器中转 DNS 请求。
IPV6 强制部署 IPSec,这也可以让 DNS 更安全
当然,这些方法实现起来都需要折腾,并不符合一般用户使用。或许在待到将来 IPV6 全面铺开时,DNS 的安全性才会有进一步提升。
总体而言,现在 DNS 的机制显然在设计之初没有充分考虑到安全性,导致别有用心者频频利用这一环节影响用户的正常网络访问。DNS 频频被劫持、投毒的现状如何才能改变? 从技术上来说很难,希望以后能够有更完善的监管手段,让用户有更好的上网体验吧。
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)