IPSec 双网卡场景 site2site

明白了,现在的情况是两边的站点都有两张网卡,但 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

路由配置分析:

在这种情况下,我们需要在以下几个地方配置路由:

  1. 站点 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)
  2. 站点 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)
  3. 站点 A 的内网主机 (192.168.1.10):

    • 默认网关:192.168.1.2 (站点 A 的 VPN 网关的网卡 1 IP)。这将确保所有流量都首先发送到 VPN 网关。
  4. 站点 B 的内网主机 (192.168.2.10):

    • 默认网关:192.168.2.2 (站点 B 的 VPN 网关的网卡 1 IP)。这将确保所有流量都首先发送到 VPN 网关。
  5. 站点 A 的防火墙/路由器(如果存在):

    • 需要配置策略将 ESP/AH 流量转发到 VPN 网关的公网地址 (203.0.113.1),并允许来自站点 B 的 ESP/AH 流量。
  6. 站点 B 的防火墙/路由器(如果存在):

    • 需要配置策略将 ESP/AH 流量转发到 VPN 网关的公网地址 (198.51.100.1),并允许来自站点 A 的 ESP/AH 流量。

数据包转发过程 (从站点 A 的 192.168.1.10 到站点 B 的 192.168.2.10):

  1. 站点 A 的内网主机 (192.168.1.10) 将数据包发送到默认网关 192.168.1.2 (站点 A 的 VPN 网关的网卡 1)。
  2. 站点 A 的 VPN 网关根据路由表,发现目标网络 (192.168.2.0/24) 匹配到通过网卡 2 (10.0.1.1) 到 10.0.2.1 的路由。
  3. 站点 A 的 VPN 网关对数据包进行 IPsec 封装,源 IP 为 203.0.113.1,目标 IP 为 198.51.100.1,并将封装后的数据包通过网卡 2 发送出去。
  4. 重要的是,网卡 2 仅仅负责 VPN 网关之间通信,所以你需要确保云环境或者物理网络允许 10.0.1.1 和 10.0.2.1 之间通信。 一般情况下,你需要添加静态路由将 10.0.0.0/8 或者更大的网段指向 VPN 网关,确保VPN 流量可以正确的转发到公网。
  5. 封装后的数据包经过互联网到达站点 B 的公网 IP (198.51.100.1)。
  6. 站点 B 的防火墙/路由器将 ESP/AH 流量转发到站点 B 的 VPN 网关。
  7. 站点 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 网关之间通信的需求。

相关推荐
2分钟速写快排14 分钟前
什么是 RAG?如何用 RAG 实现一个用户记忆?
前端·后端·ai编程
面向Google编程19 分钟前
Apache Iceberg Variant 类型:v3 半结构化数据不再「二选一」
大数据·后端
jason成都1 小时前
Spring WebFlux 适配达梦新方案|dm‑r2dbc:Netty 异步传输的实验性 R2DBC 驱动
java·后端·spring
北岛贰2 小时前
迷茫焦虑期,我做了一个带支付带官网的 AI 聊天虚拟恋人 App
前端·人工智能·后端
IT_陈寒5 小时前
React子组件莫名其妙重渲染?你可能漏了这个Hook
前端·人工智能·后端
小兵金林6 小时前
AI 生成代码的思考与实践
后端·ai编程
码事漫谈6 小时前
DeepSeek 明天又降价(涵历史价格对比)
后端
前端精髓6 小时前
NestJS 是什么(对着 Spring Boot 一起学习)
spring boot·后端·学习
国奉6 小时前
从零设计一个 iOS 文件浏览器:Sandbox、FileManager、Document Picker 与文件架构
后端
前端兰博6 小时前
04-数据库-MySQL
后端·mysql