流氓运营商某动,为了节省流量费大量使用缓存服务,起初换一下别的公共 dns 就好了,
现在为了强制用户使用自已的 dns ,耍流氓,把 114 ,阿里的 dns 封了算了,现在放狠招,对一切非使用自家 dns 的解析进行干扰
cmd 执行
nslookup www.jd.com 180.76.76.76
(以京东为例、使用没被封掉的非运营商自家 dns ,上面的是百度 dns )
大约每 3-4 次返回 1-2 次无效结果
正常的结果:
服务器: public-dns-a.baidu.com
Address: 180.76.76.76
非权威应答:
名称: www.jdcdn.com
Address: 183.232.41.1
Aliases: www.jd.com
再执行一下上面的命令,获得了一个无效的 IP :
异常的结果:
服务器: public-dns-a.baidu.com
Address: 180.76.76.76
非权威应答:
名称: www.jd.com
Address: 10.10.100.31
如何使用路由器的 dnsmasq 解决呢?
开启防污染功能,或者直接 block 掉这个虚假 ip 会导致网页无法打开(不返回解析结果),
如何设置获得 IP 为 10.10.100.31 则丢弃并重试直到获得其它结果??
1
crazyfengs OP 114 等 dns 光荣被封:
nslookup whether.114dns.com 114.114.114.114 服务器: public1.114dns.com Address: 114.114.114.114 非权威应答: 名称: whether.114dns.com Address: 127.0.0.1 |
2
adrianzhang 2015-10-15 16:33:13 +08:00 1
可以采用 socks 代理方式出去,曾经做 SecDNS 的时候就是这么干的。
如果你不着急,可以关注一下我,未来会将这种服务与 v2 上某个跨栏的项目合并发布出来。 |
3
bazingaterry 2015-10-15 16:40:05 +08:00
首先你得知道是怎么封的,如果是 UDP 53 端口的封锁,用一个支持非 53 端口的 DNS 就可以了。
|
4
crazyfengs OP @adrianzhang 很好,国内的运营商太流氓了,多次投诉都是爱用不用的态度。只要垄断一天在,这类问题都是无法解决的,只能用户自己想办法了。
这某动也是牛呀,要封就封得彻底,现在故意制造 dns 不稳定的假像。目前被迫用运营商自己的 dns 。用其它 dns 打开网页需要多按几次 F5 才能显示。 socks 要等入手 hk vps 才能用了。 |
5
crazyfengs OP @bazingaterry 对的, 53 被封了,但 opendns 的解析不准确, dnspod 家也没提供非 53 端口的服务,自建的话目前暂时没条件。目前随机出现 10.10.100.31 ,设想是假定获得此 IP 则重新解析直至获得真实 IP 可以解决,不清楚 dnsmasq 是否有此功能。
|
6
lanlanlan 2015-10-15 17:00:47 +08:00
@crazyfengs 移动还直接 /32 把其他的公共 DNS 给劫持到自己的递归 DNS 上 仅仅 udp53 的话 用 tcp 查询就可以了
|
7
lanlanlan 2015-10-15 17:06:30 +08:00
oh 不对 刚没看你的回复 114 那个返回 127 说明你那边 114.114.114.114/32 已被移动给劫持到自家 DNS 上了 把 IP 都劫持了的 用 tcp 方式作用不大了。。。
|
8
zhanglp888 2015-10-15 17:09:03 +08:00
用 dnscrypt ,自己搭建一个 dns 服务器
|
9
yexm0 2015-10-15 17:13:22 +08:00 via Android
不如试试 @johnjiang85 的 dns 119.29.29.29
|
10
crazyfengs OP @lanlanlan 晚点我测试一下 180.76.76.76,114 的确被劫了。。
|
11
crazyfengs OP @yexm0 其实我就是在用 119.29.29.29 出现这个问题,怕某动看到了所以贴百度 dns 的 ip 。都一样,非移动自家的 dns 就会出现干扰
|
12
CRH 2015-10-15 18:34:36 +08:00
这种事,上工信部网站投诉应该还是有用的吧
|
13
ChangeTheWorld 2015-10-15 20:23:28 +08:00
Dnsspeeder
|
14
Daniel65536 2015-10-15 20:39:22 +08:00
用 pacp_dnsproxy 即可……
|
15
ericFork 2015-10-16 02:20:19 +08:00
http://www.thekelleys.org.uk/dnsmasq/CHANGELOG
version 2.73 [...] Add --ignore-address option. Ignore replies to A-record queries which include the specified address. No error is generated, dnsmasq simply continues to listen for another reply. This is useful to defeat blocking strategies which rely on quickly supplying a forged answer to a DNS request for certain domains, before the correct answer can arrive. Thanks to Glen Huang for the patch. |
16
ericFork 2015-10-16 02:21:52 +08:00
如果只是做了投毒,抢先返回投毒 IP ,则上述选项可治。根据你自己的推断,可以用这个解决。
然而估计运营商是做的劫持而非投毒,不一定有后续正确解析结果返回的。 |
17
johnjiang85 2015-10-16 10:21:43 +08:00
@crazyfengs 能测试下 http://119.29.29.29/d?dn=www.jd.com 的返回结果吗,目前 DNSPod 公共 DNS 对外提供服务的有 53 和 80 ( D+)端口,如果 80 未被劫持的话,我们看看提供的转换程序搭配 dnsmasq 使用。
另外我们正在考虑非 53 端口的支持。 还有楼主能反馈下哪个地区的移动运营商吗,我们通过线下关系找运营商沟通下,看能否解决。 |
18
crazyfengs OP @johnjiang85 广东 FS , 80 端口一直正常,返回 183.232.41.1 正常结果
今天很神奇的发现它不再搞 119.29.29.29 了,使用 dnspod 家的 dns 不再跳出 10.10.100.31 这个假 ip 了。 追踪了路由,测试了不存在的域名,证明没有被劫持。 终于能愉快地上网了。持续两个多月的问题好了,难道是运营商良心发现? 但再测试百度的 180.76.76.76\以及 opendns 208.67.222.222 依旧跳出假 IP 。 只是担心 dnspod 的 dns 有一天跟 114 一样,被劫持到它自家的 dns 。。。 ---------------------------------------------------------------------------- 总结一下,小型网站的域名,无论尝试多少次都是正确的 IP 。 而类似: nslookup www.jd.com 180.76.76.76 nslookup e.hiphotos.baidu.com 180.76.76.76 nslookup img1.gtimg.com 208.67.222.222 都是访问量大的网站及其二级 cdn 域名随机跳出 10.10.100.31 这个内网 IP ,这估计是一个已经挂掉的缓存服务器吧。 |
19
crazyfengs OP @CRH 为了上个网还要投诉,活得真心累哈哈。。
|
20
crazyfengs OP @ChangeTheWorld @Daniel65536 好工具,谢谢!!
|
21
hjny 2015-10-16 23:47:51 +08:00
dnscryt ,选择 cisco 的 server ,可改善。
|
22
johnjiang85 2015-10-20 11:45:52 +08:00
@crazyfengs 我们最近在和一些运营商沟通劫持的问题,主要是部分地区移动和铁通,但是即使以腾讯的关系依然收效甚微,囧。
|
23
snsd 2015-11-11 18:53:17 +08:00 via iPhone
你那还好点了,我这直接锁死 dns ,改了移动默认 dns 直接断网
|
24
bclerdx 2018-02-16 01:09:32 +08:00
@johnjiang85 为什么会依然收效甚微!难道 DNS 劫持是运营商故意而为之的?
|