ubuntu 将所有客户端 eth0 流量路由到客户端 tun0 上的 openvpn

ubuntu 将所有客户端 eth0 流量路由到客户端 tun0 上的 openvpn

OpenVPN客户端有2个物理接口:

eth0 = 192.168.10.14/24 gw 192.168.10.1
eth1 = 192.168.10.17/24 gw 192.168.10.1
tun0 = 172.160.1.6/24 gw 172.16.1.5

服务器位于外部某处,监听 172.16.1.1,并且已ip_forwarding启用并已使用 iptables 设置 POSTROUTING。

eth1 需要能够继续与内部 LAN 通信,但 eth0 需要能够通过 VPN 路由所有流量。

我至今还无法找到 ip route、route add、更改网关和 iptables 规则的正确组合,但一定有办法。

如果 OpenVPN 桥接是正确的答案,那么我对此没有异议,只是我从未能够正确设置它。隧道是我在 OpenVPN 中更擅长的。

有可能桥接 tun0 和 eth0 接口吗?我没有成功,但有人知道解决方法吗?

答案1

您没有提供足够的细节来说明您想要实现的目标或您的网络设置,因此我无法给出详细的答案。

如果您想要桥接两个网络,您的 OpenVPN 实例需要创建一个 tap 接口,而不是 tun。然后,您可以使用标准 linux brctl 实用程序桥接 eth0 和 tap0(或您选择的任何接口名称)。

不过,您可能会发现坚持使用路由连接更容易,在这种情况下,您需要为整个网络制定一个寻址计划,并确保每个 LAN 上的网关都知道(在简单的双办公室设置中最好使用静态路由)VPN 路由器,以此来访问其他网络。

相关内容