先说环境:
A:异地A家庭数据中心,整个内网DNS主从配置,主路由:Edgemax ER-12P(50MS延迟)
B:异地B家中,跑WEB,主路由:Edgemax ER-X(80MS延迟)
C:本地,主路由:红米AX6000,刷OpenWRT
A-B已经打通Site to Site,同时,在外,可以连接回A,进入整个大内网,现在C需要和整个内网打通,同时,C还需要科学(魔法)游玩,并且,在C,访问A、B资源,都走内网。
C点的OpenWRT用Open科学(魔法)游玩搞定后,开始配置Open喂屁嗯Site to Site,于是就开始了长达三天的排错之旅(只有晚上的几个小时时间折腾):
一、Site To Site 配置后,要做静态路由,常规操作去添加静态路由,死活添加失败,看日志,找不到TUN设备,最后发现,接口这里添加VPN0后,协议不能选“不配置协议”,必须要选静态地址,然后还要在接口,设备(TUN0)中,把所有IPV6相关的都取消,关闭。重启路由,你会发现,你设置的静态路由成功加入路由表。
二、还是上次的问题,因为魔法接管了整个DNS,所以,域名走了公网,我需要它走内网,复制一下上次的解决办法:
1、由于OpenWRT中dnsmasq的 “Prevent DNS-rebind attacks” 的安全配置,拒绝解析内网地址包(解决办法: 网络 ->DHCP/DNS-> 一般设置 -> 重绑定保护)
2、dnsmasq的配置导致resolv.conf中的DNS配置信息总是被还原(解决办法:修改/etc/config/dhcp文件,将localuse的值改为0,这样resolv.conf就不会被dnsmasq重置了
3、由于开放小猫接管了整个网络,所以上游DNS服务器需要设置为内网DNS(复写设置-DNS设置-自定义上游服务器勾选上,同时设置下方的NameServer以及Default-NameServer)
网上查资料,有看到用第二DNS处理这个问题的,但是用第二DNS就会存在,在打通Sit To Site时,域名解析失败(因为是动态IP,所以用DDNS,在Sito To Site打通之前,你的内网DNS其实是不通的),所以,绝对不能用第二DNS来处理这个问题。只需要设置好dnsmasq的上游IP为公共DNS,然后NameServer和Default-NameServer设置为你的内网DNS,所有问题就都解决了。用第二DNS还出出现玄学问题——Site To Site打通了,静态路由也有了,对端网段死活就是不通(这里折腾了好久,因为到对端的tun地址是通的了)
Update(23年11月13日23:36):
晚上回宿舍,发现,内网又掉了,继续排查,有了之前的经验,大概率问题又出在了魔法上,把魔法配置文件中的所有路由全部删除。重启,恢复正常,继续观察中……
评论