本帖最后由 gocloud-xiaowan 于 2026-7-24 13:49 编辑
兄弟们,昨晚差点被一个低级网络问题搞到自闭。写出来给大伙提个醒,省得你们以后踩坑。
事件背景: 网吧B一直与网吧A进行VPN互联,这几天经常断开,最后死活拨不进服务端,经常断联,现在直接拨不上去,但是其他网吧拨VPN到A网吧是没有问题的。
排查过程(血压升高版): 1. 第一反应:账号和密码不对?确认了一下,没错。 2. 第二反应:VPN服务没开? 远程过去检查VPN服务进程,正常运行,日志里只显示对方断开连接。 3. 第三反应:防火墙/映射? 检查了服务端路由器端口映射,其他网吧拨号过去是正常的。没问题。
破案时刻(完整版): 后来测试发现客户端使用ad宽带去拨号就正常,使用专线拨号,就无法拨上VPN;
进一步测试,从专线口ping VPN服务端IP地址不通?仔细对比了两个IP: · 客户端WAN2:219.xxx.xxx.100/24 · 服务端WAN口:219.xxx.xxx.84/24
两家网吧的主线,被运营商划在了同一个/24网段里!vpn客户端使用专线IP地址去拨号的时候,目标地址与出口IP在同网段,数据并不会给到网关设备去转发,而是直接在广播域中寻找目标IP地址。但是运营商又把二层通信给隔离了,导致客户端专线IP与服务端专线IP无法直接二层互通;
解决方案: 1. 修改客户端VPN拨号的路由网关。 在VPN连接配置里,添加静态路由或者修改接口跃点数,强制让去往对端IP的数据包走专线网关,而不是试图ARP广播。 2.(最粗暴)改子网掩码。 如果条件允许,在路由器上尝试把客户端或者服务端的WAN口掩码改大,使2个路由器专线不在同网段,但是这个要根据运营商给的IP地址与网关地址来判断,让系统不认为他俩是"邻居"。 3.客户端VPN指定从其他宽带接口出去; 在VPN客户端配置页面,打开高级选项,指定出口;
注意事项: 专线IP地址的子网掩码,尽量填写准确,很多用户直接使用/24位的掩码,一般情况下运营商提供的专线,很少会使用24位掩码,如果访问的目标IP,又刚好匹配到专线所在网段,就会导致数据不会发送给运营商网关进行正确转发。
|