客户的某个软件是走 pptp 协议的,但由于 pptp server 在境外,所以跨境的时候几乎必然被随机的干扰几下
我的方案是在 openwrt 里集成 openvpn 强制走 tcp ,然后给 tcp 套个 ss 的壳。然后客户用这个路由器就行了
问题来了,每次路由器重启,都会随机的出现 pptp 可以走得通或者走不通。 现在整个人已经完全崩溃。
具体配置如下 服务器端(openvpn)
dev tap
route 127.0.0.1 port
push "route a.a.a.a"
其他省略
a.a.a.a 为客户的 pptp 服务器, openvpn 和 ss 在同一台机器上
路由器里
dev tap
其他省略
在/etc/rc.local里写入了
iptables -I FORWARD -o tap0 -j ACCEPT
iptables -t nat -I POSTROUTING -o tap0 -j MASQUERADE
目前 ping(traceroute)的通, tcp 和 udp 也都走得通,但就是 pptp 经常过不去。
1 192.168.7.1 (192.168.7.1) 1.378 ms 1.237 ms 1.285 ms
2 172.16.10.1 (172.16.10.1) 35.014 ms 15.301 ms 15.339 ms <-这个就已经在 ss 服务器上了
3 192.168.72.193 (192.168.72.193) 16.822 ms 32.985 ms 39.975 ms
也就是说是需要实现 pptp->openvpn->ss 这么一种玩法。目前就差 pptp 时断时续了……各位一起来分析分析
目前路由器里已经加装如下组件
- kmod-nf-nathelper-extra
- kmod-iptunnel
- kmod-ipt-extra
- kmod-ipt-nat-extra
- kmod-gre
应该不存在模块不全导致GRE过不去