之前想在公司内网环境接入一台 openwrt 作为网关来解决自己的上网,交换机 LAN 接到 Openwrt 设备 LAN 口上,指定一个静态不冲突的 IP,然后 PC 端手动指定网关为 Openwrt,Openwrt 中网关为原网关,Openwrt 中的 NAT 、DHCP 等全部关闭以免影响内网设备。
形成拓扑:我的 PC -> Openwrt -> 公司交换机 的基本架构
用起来一切正常,但是后来发现内网部分设备 DNS 解析出现问题,因为公司的交换机上层路由 iKuai 有部分 DNS 解析是自定义 Host 解析到内网 IP 的,部分机器的这部分解析受到了影响,无法解析。移除 Openwrt 后恢复正常,很明显是受到了 Openwrt 的影响。( LAN 口设置桥接、非桥接均有问题)
因为 DNS 解析是先到先得的逻辑,最近的路由返回结果就优先使用,简单分析是包会经过 Openwrt 直接返回了无法解析的结果。
@kyor0 主要是其他主机的路由根本不过这台 Openwrt,所以和劫持不劫持没关系,DHCP 等协议都是关掉的。 问题是肯定解决了的,接 WAN 口就行了,一样当内网网关,主要是想知道什么原因导致其他机器的 DNS 包会过 Openwrt
felixcode
2021-07-02 14:13:37 +08:00
tcpdump 抓包看吧,猜也猜不出个啥来
silvereagle
2021-07-02 14:14:52 +08:00
自己 dig 一下这些不能解析的地址,确认下是哪个 DNS 服务器返回来的不就知道了。很大可能是 Openwrt 上开了 chromecast 之类的 DNS 重定向。否则 Openwrt 上级 DNS 设置为公司内网的 DNS 应该不会有问题的;再或者公司内网做了 DNS 劫持?但这样解析反而应该正常才对。