防止dns的重定向

最近在访问一些网站时,经常页面闪现一下,然后就被重定向到一个丑陋异常的页面,显示:

    “尊敬的用户:您访问的域名有误或网页不存在,您可以使用我们提供的以下服务”


具体如下图:


打开Chrome的开发者工具,查看Nerwork Log(勾上Preserver Log复选框),找到当前页面的启动器(initiator),发现是来自

http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fbootsnipp.com&width=130&height=20&colorscheme=light&layout=button_count&action=like&show_faces=false&send=true&appId=112989545392380

的一段脚本,将该页面另存为html文件,查看其源代码:

<html>
<script src="http://s23.cnzz.com/stat.php?id=5816172&web_id=5816172" language="JavaScript"></script>
<script language=javascript type="text/javascript">
    window.location.replace("http://bjdnserror3.wo.com.cn:8080?HOST=" 
        + location.hostname + "&R="
        + location.pathname + "&" + location.search.substr(location.search.indexOf("\?")+1));
</script>

<noscript>
<meta   http-equiv="refresh"   content="0;URL=http://bjdnserror3.wo.com.cn:8080">
</noscript>
<head>
<title>Redirect</title>
</head>
<body bgcolor="white" text="black">
</body>
</html>


由此我们就明白了我们访问的目标页面一闪而过的原因了:

我们访问的页面引用了www.facebook.com域下的一个资源,而这个地球上貌似根本就不存在什么www.facebook.com,

所以dns很聪明的把www.facebook.com解析到了另一台主机,而这台主机就给我们返回了上面那段代码,于是也就产生了上面那张丑图。


遇到这种问题,我们有如下解决办法:

1.把http://www.facebook.com/plugins/like.php?。。。这个页面加入黑名单,比如使用Adblock Plus
2.修改hosts文件,把www.facebook.com这个不存在的域名解析到我们自己的主机

3.把返回上面那段烂代码的主机ip加入防火墙的黑名单里。


前两个方法之对特定访问不到的域好用,如果我们访问的页面引用了别的不存在的域(如google等),还要再麻烦一遍,毕竟不存在的东西还是很多的。

所以使用第三个方法最彻底,以我的CentOS 7 为例,需要如下操作:

1.找到要屏蔽的ip,如图:




2.把它加到防火墙黑名单中,如图:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值