根据官方Server配置文件:https://github.com/OpenVPN/openvpn/blob/master/sample/sample-config-files/server.conf可以得出一下配置方法:
1、客户端:
在client-config-dir指定的文件夹内配置指定客户端信息如下,比如证书Thelonious,那么路径为ccd/Thelonious的文件信息如下:
# tun模式(此模式下,如果nat30时第二位为前面IP的下一位,但nat24时第二位为子网掩码,第三位的网关不能设置)# 路由表iroute 10.9.0.0 10.9.0.1# IPifconfig-push 10.9.0.1 10.9.0.2# tap模式push "route IP 子网掩码 网关(可有可无,无时为VPN服务器地址)"ifconfig-push IP 子网掩码
2、服务端
在Server.conf文件配置如下:
#tun模式(第三位网关不能设置)push "route 192.168.10.0 255.255.255.0"#tap模式push "route IP 子网掩码 网关(可有可无,无时为VPN服务器地址)"
可以看到上面的路由都默认没有指定默认网关,那么都会走向服务端的IP,然后统一由服务端进行路由转发
民间方法如下(不一定有效):
1、客户端:
直接在客户端配置文件配置client.conf的最后加入:
route 172.16.100.0 0.0.0.0 net_gateway
2、服务端:
在server.conf加入:
push "route 172.16.100.0 0.0.0.0 net_gateway"
可以看出上面的配置都指定了默认网关。
参考:
https://www.52os.net/articles/openvpn-add-local-routing-table.html
https://xiaolife.com/wordpress/use-openvpn-route-and-vpn_gateway/
https://datahunter.org/openvpn_lan2lan
https://serverfault.com/questions/648083/openvpn-tunnel-between-two-lans-traffic-dropped-on-the-way