明白了,现在的情况是两边的站点都有两张网卡,但 IPsec VPN 网关服务只能绑定到第二张网卡上。 这意味着我们需要使用明细路由来引导 VPN 流量。 这种情况比只有一个网卡的情况稍微简单一些,因为我们可以利用第一张网卡作为默认网关进行普通网络通信。
场景描述:
- 站点 A:
- 公网 IP:203.0.113.1 (由云环境或硬件防火墙/路由器提供)
- 网卡 1 IP (用于普通网络通信):192.168.1.2 (默认网关)
- 网卡 2 IP (用于 IPsec VPN):10.0.1.1 (此网段仅用于 VPN 网关之间的通信)
- 内网网段:192.168.1.0/24
- 内网主机 IP:192.168.1.10
- 站点 B:
- 公网 IP:198.51.100.1 (由云环境或硬件防火墙/路由器提供)
- 网卡 1 IP (用于普通网络通信):192.168.2.2 (默认网关)
- 网卡 2 IP (用于 IPsec VPN):10.0.2.1 (此网段仅用于 VPN 网关之间的通信)
- 内网网段:192.168.2.0/24
- 内网主机 IP:192.168.2.10
路由配置分析:
在这种情况下,我们需要在以下几个地方配置路由:
-
站点 A 的 VPN 网关:
- 路由 1 (关键): 将目标为站点 B 内网 (192.168.2.0/24) 的流量,通过网卡 2 (10.0.1.1) 转发到站点 B 的 VPN 网关的网卡 2 IP (10.0.2.1)。
- 目标网络:192.168.2.0/24
- 下一跳:10.0.2.1
- 出口网卡:网卡 2 (10.0.1.1)
- 路由 1 (关键): 将目标为站点 B 内网 (192.168.2.0/24) 的流量,通过网卡 2 (10.0.1.1) 转发到站点 B 的 VPN 网关的网卡 2 IP (10.0.2.1)。
-
站点 B 的 VPN 网关:
- 路由 1 (关键): 将目标为站点 A 内网 (192.168.1.0/24) 的流量,通过网卡 2 (10.0.2.1) 转发到站点 A 的 VPN 网关的网卡 2 IP (10.0.1.1)。
- 目标网络:192.168.1.0/24
- 下一跳:10.0.1.1
- 出口网卡:网卡 2 (10.0.2.1)
- 路由 1 (关键): 将目标为站点 A 内网 (192.168.1.0/24) 的流量,通过网卡 2 (10.0.2.1) 转发到站点 A 的 VPN 网关的网卡 2 IP (10.0.1.1)。
-
站点 A 的内网主机 (192.168.1.10):
- 默认网关:192.168.1.2 (站点 A 的 VPN 网关的网卡 1 IP)。这将确保所有流量都首先发送到 VPN 网关。
-
站点 B 的内网主机 (192.168.2.10):
- 默认网关:192.168.2.2 (站点 B 的 VPN 网关的网卡 1 IP)。这将确保所有流量都首先发送到 VPN 网关。
-
站点 A 的防火墙/路由器(如果存在):
- 需要配置策略将 ESP/AH 流量转发到 VPN 网关的公网地址 (203.0.113.1),并允许来自站点 B 的 ESP/AH 流量。
-
站点 B 的防火墙/路由器(如果存在):
- 需要配置策略将 ESP/AH 流量转发到 VPN 网关的公网地址 (198.51.100.1),并允许来自站点 A 的 ESP/AH 流量。
数据包转发过程 (从站点 A 的 192.168.1.10 到站点 B 的 192.168.2.10):
- 站点 A 的内网主机 (192.168.1.10) 将数据包发送到默认网关 192.168.1.2 (站点 A 的 VPN 网关的网卡 1)。
- 站点 A 的 VPN 网关根据路由表,发现目标网络 (192.168.2.0/24) 匹配到通过网卡 2 (10.0.1.1) 到 10.0.2.1 的路由。
- 站点 A 的 VPN 网关对数据包进行 IPsec 封装,源 IP 为 203.0.113.1,目标 IP 为 198.51.100.1,并将封装后的数据包通过网卡 2 发送出去。
- 重要的是,网卡 2 仅仅负责 VPN 网关之间通信,所以你需要确保云环境或者物理网络允许 10.0.1.1 和 10.0.2.1 之间通信。 一般情况下,你需要添加静态路由将 10.0.0.0/8 或者更大的网段指向 VPN 网关,确保VPN 流量可以正确的转发到公网。
- 封装后的数据包经过互联网到达站点 B 的公网 IP (198.51.100.1)。
- 站点 B 的防火墙/路由器将 ESP/AH 流量转发到站点 B 的 VPN 网关。
- 站点 B 的 VPN 网关解封装数据包,源 IP 变为 192.168.1.10,目标 IP 变为 192.168.2.10,并将数据包发送到站点 B 的内网主机 (192.168.2.10)。
关键点和注意事项:
- VPN 网关路由: VPN 网关上的路由是至关重要的。 必须配置正确的明细路由,以便将 VPN 流量引导到正确的网卡 2 接口。
- 内网主机默认网关: 内网主机的默认网关必须是 VPN 网关的网卡 1 IP 地址。
- 防火墙规则: 确保防火墙允许 ESP/AH 流量在两个站点的公网 IP 之间通过。
- 网络连通性: 确保两个 VPN 网关的网卡 2 之间可以互相通信(例如,通过配置静态路由或确保云环境允许这些 IP 之间的通信)。
- 云环境配置: 如果在云环境中部署 VPN 网关,需要配置安全组或防火墙规则,允许 ESP/AH 流量通过,并允许 VPN 网关之间的内部通信。
- IPsec 配置: 确保 IPsec 配置正确,并且 VPN 网关使用正确的本地/远程子网。
- MTU 大小: IPsec 封装会增加数据包的大小,需要注意 MTU (Maximum Transmission Unit) 的设置,避免数据包分片。
相比于只有一个网卡的情况,有两个网卡的主要优势是:
- 简化了默认路由配置: 你可以使用网卡 1 作为默认网关,处理所有非 VPN 流量,而只需要在 VPN 网关上配置明细路由来处理 VPN 流量。
- 更好的隔离性: 可以将 VPN 流量与其他网络流量隔离,提高安全性。
总结:
当 IPsec VPN 网关只能使用第二张网卡,但你有两张网卡时,可以利用第一张网卡作为默认网关,简化路由配置。 关键是正确配置 VPN 网关上的明细路由,确保 VPN 流量被正确引导到第二张网卡。 同时,确保防火墙规则允许 ESP/AH 流量通过,并且网络连通性满足 VPN 网关之间通信的需求。