我在使用 OpenVPN 将公共 IP 隧道连接到远程 VPS 时遇到了一些困难。我有一台 Linux 服务器,其中包含 32 个 Public IP Addresses 块192.0.2.160/27
,名为Server 1eth0
,以及绑定到同一台服务器上的另一个 Public IP Address : 203.0.113.43
。
我在其他地方的 NAT 后面有另一台 Linux 机器Server 2 。我希望能够在Server 1上设置 OpenVPN 服务器,以便客户端Server 2可以使用192.0.2.160/27
子网中的 IP 地址。
我已按照以下有关 ServerFault 的指南进行操作,并且正在尝试使用 TAP 将以太网桥接与 OpenVPN 一起使用。
在服务器 1 上,网络配置如下所示(出于文档目的,我已替换 IP - 请参阅 RFC5737):
服务器 1 /etc/network/interfaces
auto eth0
auto br0
iface br0 inet static
address 203.0.113.43
netmask 255.255.255.0
gateway 203.0.113.1
pre-up openvpn --mktun --dev tap0
bridge_ports eth0 tap0
bridge_fd 3
然后我在服务器 1上运行 openvpn ,当我在服务器 2openvpn --dev tap0
上输入以下内容时:
openvpn --remote 203.0.113.43 --dev tap0 --route-gateway 203.0.113.1 \
--redirect-gateway def1 --ifconfig 192.0.2.160 255.255.255.224
建立了连接,但我无法在除Server 2192.0.2.160
以外的任何其他机器上ping 通(甚至无法在Server 1上执行此操作)。
我绝对相信我错过了一些东西,但我似乎无法弄清楚。
我还要补充一点,我已经/etc/sysctl.conf
在Server 1上启用了 IPv4 数据包转发。
如果有人可以完成此配置或建议实现此配置的替代方法,那将不胜感激。
[编辑 1 - 谢谢 AB]
托管服务提供商是 Heficed,他们在这里解释了如何添加额外的公共 IP(无论如何在 CentOS 上):https ://kb.heficed.com/en/articles/2854555-adding-ip-to-your-network-interface