我想将 VPN 客户端连接到 VPN 服务器,然后让该客户端也提供一个 VPN 服务器。我只是无法获得正确的路由。
我将尝试解释最终目标。
我希望服务器/客户端的所有客户端能够与左侧的每个系统进行通信,并且能够返回路线。
我已经这样做了几个小时但就是无法获得正确的路线。
请问有什么帮助吗?
答案1
(假设topology subnet
用于所有服务器和客户端。答案可能适用于或不适用于分接方法。)
要从 路由10.8.0.0/24
到10.10.0.0/24
,您只需要:
- 允许两个 tun 接口之间的 IP 转发
10.8.0.1/24
- 向其客户端推送路由,
10.10.0.0/24
以确保流量被路由到隧道中。
10.10.0.0/24
从到 的路由有点棘手10.8.0.0/24
。基本上,您这边想要的是通过客户端而不是服务器进行路由。您可能认为将所需的“网关客户端”设置为route-gateway
其他客户端的 就可以了。但事实上,这并不重要。
要使某个客户端成为某个路由的网关(10.8.0.0/24
在本例中),你需要做的是:
- 为其添加一个“CCD”文件(
--client-config-dir
有关详细信息,请参阅 openvpn 手册),以其通用名称 (CN) 作为文件名。在文件中,添加iroute 10.8.0.0 255.255.255.0
。 - 添加
client-to-client
到服务器配置文件中10.10.0.1/24
。 - 添加一个名为 的“CCD”文件
DEFAULT
。在文件中添加push "route 10.8.0.0 255.255.255.0"
。 - 如果您想从中访问(或者如果您想避免),请将其添加
route 10.8.0.0 255.255.255.0
到服务器配置文件中。10.10.0.1/24
10.8.0.0/24
client-to-client
编辑:client-to-client
如果 上的两个 tun 接口之间也允许 IP 转发,则可以避免10.10.0.1/24
。如果没有client-to-client
,iroute
则只会应用于服务器本身。在这种情况下,客户端的流量将10.10.0.1/24
首先“内部”路由到 ,然后10.8.0.1/24
(由于 和route
应用于iroute
服务器)。