如何访问OpenVPN客户端子网

我正在build立一个站点到站点的OpenVPN,

目前:

客户端的用户可以访问服务器端的子网。

访问VPN客户端机器[其在客户端子网上的IP]工作正常。 但是我无法访问同一客户端子网上的其他计算机。

我已经在服务器configuration中使用这个选项:因为这些是私人子网我将他们添加它们:

route 172.20.56.0 255.255.255.0 client-config-dir ccd 

并创build与客户端名称相同的文件,其内容如下:

 iroute 172.20.56.0 255.255.255.0 

客户端机器有本地IP 172.20.56.1,我可以从服务器端访问。

问题是,我无法访问客户端上的任何其他机器。

有什么build议么….

您的服务器configuration和iroute语句中的route语句应允许您的数据包到达远程站点。 但是,远程站点也需要知道networking的路由通过VPN路由回去。 您需要在客户端configuration中添加一些路由语句,或者在您的ccd文件中添加一些push "route ..."语句。

在任何情况下,像解决任何路由问题,你需要traceroute和tcpdump / wireshark。

其实问题似乎是openvpn错误的种类。 看来,使用topology net30 (默认情况下,虽然现在认为不推荐使用该拓扑结构)以某种方式打破了openvpn的路由。 第一步是将topology subnet添加到您的服务器configuration文件。 另一件你需要做的就是添加VPN服务器的IP作为路由的网关,因为还有另外一个OpenVPN的错误,将在这条路线,因为它是。 所以

 route 172.20.56.0 255.255.255.0 

应该看起来像

 route 172.20.56.0 255.255.255.0 10.10.8.1 

其中10.10.8.1是tun0接口上的服务器IP。

如果做得对,你根本不需要使用任何forms的natting。