找回密码
 加入我们
搜索
      
查看: 18054|回复: 30

[网络] 【Openwrt】DNS污染分析,问题100%复现

[复制链接]
发表于 2023-5-26 22:18 | 显示全部楼层 |阅读模式
本帖最后由 JasonB 于 2023-5-28 20:11 编辑

本帖最后由 jasonbili 于 2023-5-26 22:07 编辑


A和B网络是两个独立的网络,没有任何物理连接。

在B网络下,软路由运行在虚拟机中,软路由作为旁路由,用软路由里的PW插件运行着魔法,手机的网关是软路由地址,手机上国外网站,显示手机的IP和DNS都是美国的。
在A网络下,软路由运行在虚拟机中,软路由作为旁路由,用软路由里的PW插件运行着魔法,手机的网关是软路由地址,手机上国外网站,显示手机的IP是美国的,但是DNS是国内的。

故障分析:
1、一开始以为是软路由设置问题,所以将B网络的软路由系统复制了,放到A网络的虚拟机里,问题依旧,显示手机的IP是美国的,但是DNS是国内的。(所以不是软路由设置问题)
2、将电脑网关改成软路由地址,显示电脑的IP是美国的,但是DNS是国内的。

3、将手机网关改成主路由地址,手机里的小火箭运行魔法(软路由和手机是同一个魔法节点),显示手机的IP和DNS都是美国的。同样方法在电脑上试了一下,显示电脑的IP和DNS都是美国的。
4、两个网络的手机都是静态IP和静态DNS,DNS是软路由地址。
5、无线路由(192.168.1.3)是运行在AP模式下的,主路由(192.168.1.1)是一个H3C企业路由器(是企业路由器导致这种问题?)
6、两个网络均没有IPV6环境。


问题分析:
1、请问这个现象属于DNS污染吗?


2、是什么导致出现DNS异常的呢?应该如何解决?


A的网络拓扑图如下
6213730.png
发表于 2023-5-26 22:32 | 显示全部楼层
没啥有用的信息啊,PW插件我也没用过,
看一下两个网络里DHCP下发的DNS是啥呗,也要注意一下ipv6。
发表于 2023-5-26 23:16 | 显示全部楼层
正常的B和A有什么不同呢
 楼主| 发表于 2023-5-26 23:25 | 显示全部楼层
monkeylab 发表于 2023-5-26 22:32
没啥有用的信息啊,PW插件我也没用过,
看一下两个网络里DHCP下发的DNS是啥呗,也要注意一下ipv6。 ...

PW是passwall。
两个网络的手机都是静态IP和静态DNS,DNS是软路由地址。还需要什么信息,我补充一下。
发表于 2023-5-26 23:32 | 显示全部楼层
同样遇到这个问题,没发现解决办法。估计是看对方是怎么测出DNS的。等大佬解惑。
发表于 2023-5-26 23:43 | 显示全部楼层
JasonB 发表于 2023-5-26 23:25
PW是passwall。
两个网络的手机都是静态IP和静态DNS,DNS是软路由地址。还需要什么信息,我补充一下。 ...

两个环境都有ipv6嘛?我看到这个问题第一反应是一个网络有ipv6另一个没有,然后pw没有处理ipv6dns就会出问题。
 楼主| 发表于 2023-5-26 23:48 | 显示全部楼层
iooo 发表于 2023-5-26 23:16
正常的B和A有什么不同呢

两个网络拓扑都是一样的,设置也一样。就是显示的DNS不一样。
发表于 2023-5-26 23:48 | 显示全部楼层
可以试试把AB的网络WAN口互换 看看问题是否会交换
发表于 2023-5-26 23:49 来自手机 | 显示全部楼层
这不算DNS污染
DNS归属地检测有点意思
发表于 2023-5-26 23:50 | 显示全部楼层
不知道手机是啥系统,安卓机的IPV6不能设置静态,建议路由关闭V6的DNS。
 楼主| 发表于 2023-5-26 23:55 | 显示全部楼层
monkeylab 发表于 2023-5-26 23:43
两个环境都有ipv6嘛?我看到这个问题第一反应是一个网络有ipv6另一个没有,然后pw没有处理ipv6dns就会出 ...

A网络主路由的网络有提供IPV6,软路由魔法上网没有IPV6网络。B网络应该也一样,没有测。A和B的软路由设置完全一样,IPV6也禁用了。
 楼主| 发表于 2023-5-26 23:57 | 显示全部楼层
chainofhonor 发表于 2023-5-26 23:48
可以试试把AB的网络WAN口互换 看看问题是否会交换

A和B网络不在同一个地方
 楼主| 发表于 2023-5-26 23:57 | 显示全部楼层
rx_78gp02a 发表于 2023-5-26 23:50
不知道手机是啥系统,安卓机的IPV6不能设置静态,建议路由关闭V6的DNS。

IOS和安卓都有一样的问题。软路由已经禁用IPV6。
发表于 2023-5-27 00:20 | 显示全部楼层
可能是 A路由的 IPv6 DNS 抢答了,建议下个 WiFi 墨盒看一下 IPv6 DNS 是否是主路由
发表于 2023-5-27 02:12 | 显示全部楼层
openwrt默认会劫持dns
发表于 2023-5-27 03:55 | 显示全部楼层
直接把所有的设备都手动设置dns,或许是最简单的方法?
发表于 2023-5-27 05:50 来自手机 | 显示全部楼层
AB网的主路由分别是什么,有无条件对调测试,主路由有无配置策略路由和dns代理或者分流之类的配置?
发表于 2023-5-27 09:26 | 显示全部楼层
油管上有个人讲过这个DNS污染问题的,你可以去搜下
发表于 2023-5-27 09:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2023-5-27 10:06 | 显示全部楼层
农夫三拳有点甜 发表于 2023-5-27 09:38
楼主这个图片使用什么软件画出来的??

看样子像visio
发表于 2023-5-27 19:19 | 显示全部楼层
看看除了IPv4 WAN外是不是还有个IPv6 WAN?
发表于 2023-5-27 20:39 | 显示全部楼层
1.可以试试清空软路由的DNS缓存,可能是dnsmasq的缓存有点问题
2.PW的DNS分流出问题,域名分流认为是国内于是用了国内DNS,返回的IP是国外然后再走了代理
3.建议不要用PW做DNS分流,openwrt上搭建adguard home直接替换openwrt上的dnsmasq,然后新建一台centos虚拟机专门安装mosdns分流,openwrt上的adguard home上游DNS指定这台centos的DNS服务器,这样是最不会出问题的
发表于 2023-5-27 21:57 | 显示全部楼层
一群人在扯IPV6.  压根不是IPV6的事情。看下企业路由的静态路由表,是否出现了另一个路由的信息
发表于 2023-5-27 22:26 | 显示全部楼层
本帖最后由 taotao0210 于 2023-5-27 22:27 编辑

你这个和DNS劫持没关系啊,DNS劫持是指你从DNS服务器拿到了错误的IP地址数据导致不能正常访问网站(相当于拿到了错误的门牌号); 我看你的意思是你发出的请求指向了不同的DNS服务器,那还是你自己设置的问题啊,如果你希望用外面的DNS解析那就手动设置下呗
发表于 2023-5-28 02:14 | 显示全部楼层
有可能是DNS劫持,比方有的地方移动会劫持8.8.8.8,其实是自己内网建的8.8.8.8。可能软路由的DNS插件返回最快DNS,导致返回了假的国外DNS。可以用软件测下响应时间,如果响应速度奇快,可能是运营商内建了假DNS服务器。
发表于 2023-5-28 02:21 | 显示全部楼层
不建议使用谷歌和CloudFlare的公共DNS,数大招风。可以用9.9.9.9。
发表于 2023-5-28 16:12 | 显示全部楼层
本帖最后由 Ownab 于 2023-5-28 16:14 编辑

使用DoT/DoH DNS
校验证书、SNI
做DNS分流


如果还是会遇到 SNI RST , 就直接上DoQ吧
 楼主| 发表于 2023-5-28 20:15 | 显示全部楼层
fyc858 发表于 2023-5-27 20:39
1.可以试试清空软路由的DNS缓存,可能是dnsmasq的缓存有点问题
2.PW的DNS分流出问题,域名分流认为是国内于 ...

一开始以为是软路由设置问题,所以将B网络的软路由系统复制了,放到A网络的虚拟机里,问题依旧,显示手机的IP是美国的,但是DNS是国内的,所以应该不是软路由设置问题?
请问MOSDNS有图形化界面吗?命令行我都需要看教程。。。
发表于 2023-5-28 20:56 | 显示全部楼层
本帖最后由 fyc858 于 2023-5-28 20:59 编辑
JasonB 发表于 2023-5-28 20:15
一开始以为是软路由设置问题,所以将B网络的软路由系统复制了,放到A网络的虚拟机里,问题依旧,显示手机 ...


https://apad.pro/easymosdns/
一键搭建,如果你的VPS服务器做了SNI反代用来进行DNS解锁可能会失效,需要手动配置一下,另外这个项目以后可能会被和谐,尤其是分流名单和gfwlist名单,所以最好是虚拟机装完以后手动改一下分流名单合gfwlist的更新地址然后导出vmdk,自己去github搜索一下
发表于 2023-5-29 15:22 | 显示全部楼层
本帖最后由 IceyHeart 于 2023-5-29 15:26 编辑

从一楼信息完全看不出A和B的差异点在哪里啊,如何判断?
从结果来看,B产生了DNS泄露,就是在代理连接国外网站前,用直连线路去查询了这个国外网站的IP。这个问题涉及到DNS分流和白名单黑名单的设定。几个建议:1、推荐使用PW2,DNS分流功能比PW完善,一般来说配合白名单就不会产生DNS泄露;2、另外使用dns分流软件,可以用楼上推荐的,也可以用dnsmasq-full,加上国内CDN加速列表 https://github.com/felixonmars/dnsmasq-china-list
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-4-27 08:20 , Processed in 0.014419 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表