这基本上就是问题这里但反过来。我有一个远程 OpenVPN 客户端,它连接到我的服务器并使用地址 10.1.0.29 注册自己。无论是通过 ping、ssh 还是 apache web 服务器,都可以从服务器轻松访问此地址。但是,服务器本地网络上的其他计算机无法以任何方式访问此 10.1.0.29 地址。
问题可能出在哪里?OpenVPN 服务器确实已启用 ip_forwarding,当 OpenVPN 客户端与 OpenVPN 服务器位于同一 LAN 上时,系统运行正常。但是,一旦 OpenVPN 客户端处于远程连接状态,ovpn 服务器 LAN 上的任何计算机都无法访问它,只有服务器本身可以访问它。
更新:客户端也正在接收数据包,但它只是拒绝确认或对其执行任何操作。
答案1
在客户端计算机上,使用route -n
,确保您要连接到客户端计算机的本地网络地址正在通过 OpenVPN tun0 网关路由。 在我的情况下,由于网关是10.1.8.29
,因此简单的ip route add 192.168.1.134 via 10.1.8.29
就足以允许访问。
更全面地说,route 192.168.1.0 255.255.255.0 10.1.8.29
客户端计算机上的 client.conf 文件中的选项可以对我服务器的本地网络中的任何设备起作用。