重叠子网 - VPN

重叠子网 - VPN

我在 Debian 机器上安装了由 rackoon 设置的 Site to Site VPN。它工作正常,但是由于子网重叠,VPN 的两端都使用了 NAT(1.1.1.1/32 和 2.2.2.2/32)

在两个子网上我都有想要共享的服务,因此我已使用 iptables 将这些端口转发到内部服务器,这样效果很好。

我还可以从 VPN 的两端访问这些服务 - 所以 1.1.1.1/32 和 2.2.2.2/32。

现在我有几个其他子网连接到 2.2.2.2/32 框:

10.0.3.0/24
10.0.4.0/24
....

(完整路由表附在最后)
并且对于这些网络内的计算机,我需要访问一个服务 - 在盒子 1.1.1.1 端口 1111 上。所以我认为,我将再次使用 iptables 并将所有 tcp 流量转发到 1.1.1.1 并更改源。所以我按照以下方式做到了:

iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -d 1.1.1.1 -j SNAT --to-source 2.2.2.2
iptables -t nat -A PREROUTING -p tcp -d 2.2.2.2 --dport 1111 -j DNAT --to-destination 1.1.1.1

但是现在,当我尝试连接到该服务时,出现“没有到主机的路由”错误:

远程登录 10.0.0.1 1111
尝试 10.0.0.1...
telnet:无法连接到远程主机:没有到主机的路由

所以我有点困惑。我认为问题可能出在 Debian 机器上的路由上:

2.2.2.2 通过 1.1.1.1 dev eth0 src 1.1.1.1

但我不太清楚为什么它不起作用?

从 Debian 框进行路由:

10.0.0.0/27 dev eth1 proto 内核范围链接 src 10.0.0.1
10.0.2.0/24 通过 10.0.0.2 dev eth1
10.0.3.0/24 通过 10.0.0.3 dev eth1
10.0.4.0/24 通过 10.0.0.4 dev eth1
10.0.5.0/24 通过 10.0.0.5 dev eth1
10.0.6.0/24 通过 10.0.0.6 dev eth1
10.0.7.0/24 通过 10.0.0.7 dev eth1
1.1.1.1 通过 2.2.2.2 dev eth0 src 2.2.2.2

知道可能是什么问题吗?

答案1

您提到一些子网重叠?如果您在 VPN 的一端尝试访问 VPN 另一端具有相同子网的某些东西,您的工作站甚至不会向路由器发送流量。您需要在 VPN 的每一端拥有不同的子网,以确保您的工作站将流量发送到路由器。

相关内容