由于最近调整家中的拓扑结构,原本 x86(pfsense)作为一级路由负责拨号,WNDR4300(Openwrt)作为二级路由负责科学上网,光猫桥接的;后来调整为直接一级路由 x86(openwrt),WNDR4300 仅作为 AP。调整期间为了保证家人的网络连通,临时采用光猫作为一级路由拨号,这个是前提。
在调整完拓扑后,科学上网似乎可以工作正常,G 站和 Y 站都可以访问,以为告一段落。在一段时间使用后,经常会无法访问,开头以为是机场有问不稳定。经过排查,发现机场基本都是正常,问题在域名解释上。ping G 站和 F 站得到的 IP 是错的。难道是路由的 DNS 被拦截和污染了(路由 unbound 设置的 upstream 是机场的服务器,这一段路径没有走$$)?通过排查后发现是本机 DNS 被污染了,主要通过下面几点发现:
既然定了方向,那就尝试去排查一下,Windows 下能调试本地 DNS 的工具少之又少;还好在 Mac 上重现了,看 mDnsResponder 的日志,似乎每 3-5 秒就会刷一些日志,而我本地的网络活动基本没有(刚重装的系统,几乎没装软件)。日志上没有给出数据的来源地址,只好上 TCP Dump。有一堆 UDP 数据,其中很大部分是从一个外贸盒子来的,而且这个盒子是已经关机的了(我以为是关机的,因为已经按了电源键,而且 LED 灯已经关了,其实盒子应该是处于类似手机关屏的状态),拔掉网线后,UDP 数量减少,但是 DNS 依然会受到污染。
如果不是盒子,那污染源是从哪里来的呢?会不会是从光猫那里来的呢?电信跟 G|F|W 合作,想想都觉得恐怖。不过如果是光猫发出的污染,那之前应该也有才对啊;突然想起来在光猫拨号的时候有一个PPPoE 路由桥混合模式
我是勾选了,会不会跟这个有关呢?果然在删掉 wan 连接之后,世界清净了。
现在唯一不确定的是为什么会有污染数据?是外网的污染数据通过桥接进入到内网了吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.