我正在设置一个连接到 ovpn 服务器的服务器,通过该服务器它可以访问一些远程设备。其中一些设备有私有 IP(这里没有问题),但是那些有公共 IP 的设备有一条严格的规则,只允许从 ovpn 服务器的公共 IP 进行访问。
因此,我的服务器需要通过此 VPN 重定向所有互联网流量。问题是,一旦我通过 VPN 配置默认路由,我就完全无法通过其原始公共 IP 访问服务器。
有没有办法通过 vpn 路由所有传出流量,同时仍允许从 EC2 的原始 IP 回复传入流量?
当我连接到 vpn 时,这些就是安装在我系统上的路由,其中 172.16.220.0/24 是 vpn 服务器的私有范围,172.29.64.0/18 是 EC2 VPC 的私有范围。
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.220.161 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 172.29.64.1 0.0.0.0 UG 100 0 0 ens5
10.0.0.0 172.16.220.161 255.0.0.0 UG 0 0 0 tun0
*vpn_public_ip* 172.29.64.1 255.255.255.255 UGH 0 0 0 ens5
128.0.0.0 172.16.220.161 128.0.0.0 UG 0 0 0 tun0
172.16.220.160 0.0.0.0 255.255.255.224 U 0 0 0 tun0
172.29.64.0 0.0.0.0 255.255.192.0 U 0 0 0 ens5
172.29.64.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens5
192.168.0.0 172.16.220.161 255.255.0.0 UG 0 0 0 tun0
通过这些路由,我可以使用同一私有网络中的另一台机器通过其私有 IP 访问 EC2,但我无法成功访问其公共 IP。
一些信息:服务器在带有 ubuntu 服务器 20.04 的 AWS EC2 上运行,并且网络接口具有与公共 IP 进行 1 对 1 nat 的私有 IP