Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

内联 IPsec

内联 IPsec 概述

IPsec 架构为 IP 版本 4 (IPv4) 和 IP 版本 6 (IPv6) 网络层提供了一套安全套件。该套件提供源身份验证、数据完整性、机密性、重放保护和源不可否认性。

内联 IPsec 架构由支持 IPsec作的特殊 IPsec 引擎块组成。PFE(数据包转发引擎)能够在 PFE 内内联执行 IPsec 加密或解密,无需卸载到服务卡。因此,内联 IPsec 可以实现更高的吞吐量。

内联 IPsec 数据平面的显著特性

以下是 IPsec 数据平面的显著特性

  • 支持 IPv4 和 IPv6 IPsec 协议

  • 支持 128 位密钥和 256 位密钥 AES-GCM

  • 每个机箱支持多达 2000 个隧道

  • 每个转发 ASIC 支持两个数据包转发引擎。从 Junos OS 24.4R1 版开始,可以配置两个数据包转发引擎,支持高达 600Gbps 的半双工(每个 PFE 300Gbps 半工)。

有关平台和 Junos 版本支持的详细信息,请参阅 功能浏览器

图 1 展示了内联 IPsec 数据平面、控制平面和管理平面的架构以及 API 接口。

图 1:架构 Architecture

内联服务接口是驻留在数据包转发引擎上的虚拟接口。有关更多信息,请参阅启用 内联服务接口

支持内联 IPsec 服务的 MX 系列路由器不使用 MS-MPC 或 SPC3 等服务卡。相反,您可以使用命名约定 si-fpc/pic/port 在 MPC 上配置内联 IPsec 服务。但是,要配置内联 IPsec 服务,必须在 MX 系列路由器上启用新一代服务。有关详细信息,请参阅 统一服务框架

您可以配置内联服务,每个 PIC 有四个 si ifd,格式si/fpc/pic/port-number为 。如果 fpc 为 0 且 pic 为 0,则可以有四个 ifd – 、 和 si-0/0/3si-0/0/2 si-0/0/1si-0/0/0si

支持以下功能:

  • ESP 隧道模式,带有 AES-128-GCM 和 AES-256-GCM,用于 IPv4 和 IPv6 封装的 IPsec SA。

  • 32 位和扩展序列号(64 位)。

  • 具有本地和远程身份的 IKEV2、重新验证、使用 x509 证书的身份验证、IKE 分段。

  • 失效对等体检测

  • 支持每个 VPN 的隧道 MTU。如果 IPsec 数据包超过配置的 MTU,则会对数据包进行预分片,然后进行 ESP 封装。这样可以防止 ESP 封装后的分段。

  • SA 生存期(以秒为单位)(IKE 和 IPsec 密钥更新)。

  • ESP 数据包的 UDP 封装。

不支持以下功能:

  • 认证头 (AH)

  • 传输模式

  • 在解密之前重组 IPv4 数据包

  • 根据RFC4543进行 Null 加密

  • IKE-V1

内联 IPsec 支持的 IPsec 和 IKE 功能列出了内联 IPsec 支持的 IPsec 和 IKE 功能:

表 1:内联 IPsec 支持的 IPsec 和 IKE 功能

功能

适用于IKE

适用于 IPsec

MD5

是的

SHA-256

是的

SHA-384

是的

SHA-512

是的

AES-128-GCM

是的

是的

AES-256-GCM

是的

是的

3DES-CBC

是(不推荐)

AES-128-CBC

是的

AES-192-CBC

是的

AES-256-CBC

是的

DES-CBC

是(不推荐)

安全性关联 (SA) 是一种单工连接,使两台主机能够通过 IPsec 安全地相互通信。SA 封装了加密和完整性算法、加密密钥、安全策略以及 SA 的使用寿命。IKE SA 包含用于建立 IPsec SA 的属性,而 IPsec SA 则定义用于加密实际数据流量的属性。

ike-key-management-daemon (IKED) 是一个 Junos RE 守护程序,负责维护 IKE 和 IPsec SA 的生存期。IKE 配置定义用于与对等安全网关建立安全连接的算法和密钥。

注意:

您可能会在 IPsec 重新生成密钥后遇到丢包的情况。为了缓解此问题,建议在每个 IPsec 对等方上设置不同的生存秒数,以避免同时发生密钥更新事件。IPsec 密钥更新启动发生在软生存期到期时,该到期时间略早于配置的生存期秒。例如,如果一端设置为 86,400 秒,则另一端的生存期配置应介于 83,000 到 84,000 秒之间,以最大程度地减少同时重新生成密钥的机会。

此外,对于内联 IPsec,可能需要根据网络特性进行配置, sa-install-interval 以实现无损密钥更新过程。建议将 设置为 sa-install-interval 最适合网络的值,以防止在重新生成密钥期间丢失数据包,尤其是在关注网络延迟的情况下。

安全性关联

要使用 IPsec 安全服务,您需要在两个端点之间创建 SA。SA 是一种单工连接,使两台主机能够通过 IPsec 安全地相互通信。SA 有两种类型:

  • 手动 SA 不需要协商;所有值(包括键)都是静态的,并在配置中指定。手动 SA 静态定义要使用的安全参数索引 (SPI) 值、算法和密钥,并且要求在隧道的两端进行匹配的配置。每个对等方必须具有相同的配置选项才能进行通信。

  • 动态 SA 需要额外配置。.IKE 创建动态安全关联;它为 IPsec 协商 SA。IKE 配置定义用于建立与对等安全安全网关的安全 IKE 连接的算法和密钥。然后,该连接用于动态约定动态 IPsec SA 使用的密钥和其他数据。首先协商 IKE SA,然后用于保护确定动态 IPsec SA 的协商。

IKE

IKE 是一种创建动态 SA 的密钥管理协议;它为 IPsec 协商 SA。IKE 配置定义用于与对等安全网关建立安全连接的算法和密钥。

IKE 执行以下任务:

  • 协商和管理 IKE 和 IPsec 参数。

  • 验证安全密钥交换。

  • 通过共享机密(而非密码)和公钥提供相互对等身份验证。

  • 提供身份保护(在主模式下)。

内联 IPsec 仅支持 IKE 版本 2 (IKE v2)。IKE 协商安全属性并建立共享密钥以形成双向 IKE SA。协商 IKE SA 后,将建立入站和出站 IPsec SA,并且 IKE SA 可以保护 IPsec SA 的交换。IKE 还生成密钥材料,提供完全向前保密以及交换身份。

在仅响应方模式下,MX 系列路由器不会启动 IKE 协商,只会响应对等网关发起的 IKE 协商。与其他供应商的设备(如 Cisco 设备)互作时,可能需要这样做。由于 MX 系列不支持流量选择器中的协议和端口值,因此无法发起到需要这些值的其他供应商对等网关的 IPsec 隧道。通过在 MX 系列上配置仅响应模式,MX 可以在从对等网关发起的 IKE 协商中接受流量选择器。

图 2 展示了对等网关之间的 IPsec SA 和 IKE 交换。

图 2:IPsec SA 和 IKE 交换 Sequence diagram illustrating IPsec communication between Gateway A and Gateway B, showing steps for establishing, maintaining, and verifying secure connections.

失效对等体检测 (DPD)

DPD 是一种验证 IKE 对等方活跃性以避免 IPsec 流量黑洞的方法。设备通过定期发送 DPD 探针(R-U-THERE 消息)并等待 DPD 响应(R-U-THERE-ACK 消息)来执行此验证。

您可以通过以下模式配置 DPD:

  • always-send — 指示设备定期发送 DPD 探测,而不管对等方是否有传出 IPsec 流量。

  • 优化 — 如果将传出数据包发送到对等方后,如果在配置的时间间隔内没有传入 IKE 或 IPsec 流量,则发送 DPD 探测。这是默认的 DPD 模式。

  • probe-idle-隧道 — 在对等方之间的空闲流量期间发送 DPD 探测。

NAT-T

NAT-T(网络地址转换-遍历)是一种用于管理受 IPsec 保护的数据通过配置了 NAT 进行地址转换的设备时遇到的 IP 地址转换相关问题的方法

IPsec WAN 连接

支持内联 IPsec 的 MX 系列路由器每个 YT ASIC 都有两个数据包转发引擎 (PFE) 切片。每个 PFE 切片支持高达 800Gbps 的带宽。每个 PFE 切片都有两个端口组 (PG),因此每个 YT 总共有四个 PG

图 3:端口组 Block diagram of YT ASIC architecture with Packet Forwarding Engines, IPsec Engines, and Port Groups.

每个 PG 支持高达 400Gbps 的带宽,用于常规(非 IPsec 流量)的 WAN 连接。每个 PFE 切片的端口组 0 均可支持 IPsec。

每个支持 IPsec 的端口组可支持高达 300 Gbps 的 WAN 连接,用于 IPsec 流量,而剩余的 100 Gbps 可用于非 IPsec 流量。

您可以使用 显示 show chassis fpc slot-number pic slot-number 端口的端口组信息和 WAN 连接状态。

表 2:特定于平台的内联 IPsec 行为

平台

差异

MX304

支持平滑的 LMIC 在线插入和移除

示例:配置点对点内联 IPSec 隧道

此示例说明如何配置点对点内联 IPsec 隧道,以便在两个站点之间安全地传输数据。

要求

此示例使用以下硬件和软件组件:

  • 启用了统一服务并具有所需许可证支持的 MX304 设备。要在设备上启用统一服务,请从 CLI 执行 request system enable unified-services 并重新启动设备。有关更多详细信息,请参阅(统一服务框架)。

  • 适用于 MX 系列路由器的 Junos OS 24.2R1 或更高版本

概述

图 1 展示了在两个 MX304 对等方(Peer1 和 Peer2)之间建立内联 IPSec 隧道的拓扑。在此示例中,您在 Peer1 (MX304) 和 Peer2 (MX304) 上配置基于路由的 VPN。主机 1 和主机 2 使用 VPN 通过互联网在两个主机之间安全地发送流量。

图 4:MX304 设备 Network diagram showing an IPsec tunnel between two routers. Host1 connects to Peer1, which links to Peer2 via IPsec. Host2 connects to Peer2.之间的内联 IPSec 隧道

在此示例中,您将配置内联服务(以在 PIC 上启用内联服务)、服务集、安全策略、接口和 IPv4 默认路由。有关此示例中使用的特定配置参数,请参阅 表 3表 7

表 3:在 PIC 0 上启用内联服务

功能

配置参数

内联服务

内联服务

表 4:peer1 和 peer2 的服务集配置

功能

姓名

配置参数

服务集

SS1

内部服务接口 (si-0/0/0.)

外部服务接口 (SI-0/0/0.1)

IPsec-VPN ipsec_vpn
表 5:IKE 配置参数

功能

姓名

配置参数

提议

ike_prop

身份验证方法:预共享密钥

策略

ike_policy

  • 模式-主

  • 提议ike_prop

  • IKE 策略身份验证 method-pre-shared-keys

网关

ike_gw

  • IKE策略参考:ike_policy
  • 外部接口:et-0/2/10
  • 网关地址:16.1.1.2
表 6:IPSec 配置参数

功能

姓名

配置参数

提议

ike_prop

  • 提议-esp

  • 加密算法-aes-256-gcm

策略

ike_policy

  • 提议 reference-ipsec_prop

VPN

ipsec_vpn

  • IKE网关参考:ike_gw
  • IPsec 策略参考:ipsec_policy
  • 绑定到接口:st0.1
  • 立即建立隧道

表 7:接口和静态路由配置

功能

姓名

配置参数

接口

  • ET-0/0/0

  • ET-0/2/10

  • SI-0/0/0.0

  • SI-0/0/0.1

  • st0.1

  • 1.1.1.1/24

  • 16.1.1.2/24

  • 内部服务域

  • 服务域外部

  • 隧道接口

静态路由

2.2.2.0/24

下一跃点为 st0.1

配置

在此示例中,您将启用内联服务,配置 Peer1 的服务集参数、IKE 和 IPsec 配置参数以及接口和静态路由配置。您可以在 Peer2 上使用相同的配置,但更改 IPSec 网关地址、接口地址等。

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到 [edit] 层级的 CLI 中:

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要在 MX304 路由器上配置内联 IPsec,请执行以下作:

  1. 启用内联服务。

  2. 配置服务集

  3. 配置安全 IKE 提议

  4. 配置安全 IKE 策略

  5. 配置安全 IKE 网关

  6. 配置安全 IPsec 提议

  7. 配置安全 IPsec 策略

  8. 配置安全 IPsec VPN

  9. 配置接口。

  10. 配置静态路由

结果

在配置模式下,输入show security ikeshow security ipsec和命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。

验证

执行以下任务以确认内联 IPsec 配置工作正常

验证 IKE 状态

目的

验证 IKE 的状态。

行动

在作模式下,输入命令 show security ike security-associations 。从命令获取索引号后,请使用命令 show security ike security-associations index index_number detail

意义

命令 show security ike security-associations 输出列出了所有活动 IKE SA。如果未列出任何 SA,则表示 IKE 建立存在问题。检查配置中的 IKE 策略参数和外部接口设置。

如果列出了 SA,请查看以下信息:

  • 索引 — 索引值对于每个 IKE SA 都是唯一的,您可以在命令中使用 show security ike security-associations index detail 该值来获取有关 SA 的更多信息。

  • 远程地址 — 验证远程 IP 地址是否正确

  • 省/州

    • UP — 指示 IKE SA 已建立。

    • DOWN — 指示建立 IKE SA 时出现问题。

  • 模式 — 验证正在使用正确的模式

验证配置中的以下各项是否正确:

  • 外部接口(接口必须是接收 IKE 数据包的接口)

  • IKE 策略参数

  • 预共享密钥信息

  • 提议参数(必须在两个对等方上匹配)

show security ike security-associations index 1 detail 命令列出了有关索引号为 1 的安全关联的其他信息

  • 使用的身份验证和加密算法

  • 生存期

  • 角色信息

验证 IPsec 状态

目的

验证 IPsec 状态

行动

在作模式下,输入命令 show security ipsec security-associations 。从命令获取索引号后,请使用命令 show security ipsec security-associations index index_number detail

意义

命令 show security ipsec security-associations 输出列出以下信息:

  • ID 号为 500001。将此值用于命令, show security ipsec security-associations index 可获取有关此特定 SA 的更多信息。

  • 有一个 IPsec SA 对使用端口 500,表示未实施任何 NAT 遍历。(NAT 遍历使用端口 4500 或其他随机大编号端口。)

  • 两个方向都会显示 SPI、生存期(以秒为单位)和使用限制(或生存大小,以 KB 为单位)。 3405/ unlimited 值 表示生存期将在 3405 秒后过期,未指定生存大小,表示没有限制。生存期可以不相同,因为在建立 VPN 后,IPsec 不依赖于 IKE。

  • Mon 列中的连字符所示,没有为此 SA 启用 VPN 监控。如果启用 VPN 监控, U 表示监控已开启, 而 D 表示监控已关闭。

命令 show security ipsec security-associations index 500001 detail 输出列出以下信息:

  • 本地身份和远程身份组成 SA 的代理 ID。

    代理 ID 不匹配是导致 IPsec 故障的最常见原因之一。如果未列出 IPsec SA,请确认 IPsec 提议(包括代理 ID 设置)对于两个对等方都是正确的。对于基于路由的 VPN,默认代理 ID 为本地 = 0.0.0.0/0,远程 = 0.0.0.0/0。

通过 IPSec 隧道测试流量

目的

验证通过 IPSec 隧道的流量。

行动
  • 从 Host1 向 Host2 发送明文 IPv4 流量,反之亦然。

  • 从 Host1 到 Host2 的流量流:Src IP:1.1.1.1 和 Dst IP:2.2.2.2

  • 从 Host1 到 Host2 的流量流:Src IP:2.2.2.2 和 Dst IP:1.1.1.1

意义

在 Peer1 上:

  • 从 Host1 接收的明文 IPv4 流量在发送到 Peer2 之前将进行加密

  • 从 Peer2 收到的加密流量在发送到 Host1 之前将被解密

查看全局 IPsec 流量统计信息和错误

目的

查看 IPsec 安全关联的 ESP 和身份验证标头计数器和错误。

行动

在作模式下,输入 以查看全局级别的统计信息,然后show security ipsec statistics index index_number输入 命令show security ipsec statistics,使用 IPsec 索引号查看隧道索引级别的统计信息。

意义

如果看到 VPN 中有数据包丢失的问题,请多次运行 show security ipsec statistics or show security ipsec statistics index index_number 命令以确认加密和解密数据包计数器是否在递增。检查命令输出中是否有任何递增的错误计数器。

要清除所有 IPsec 统计信息,请使用命令 clear security ipsec statistics

内联 IPsec 数据包转发

图 5 展示了 IP 数据包遍历的高级视图。IP 数据包通过传入接口进入路由器并进行 ESP 封装。

图 5:IP 数据包转发 - ESP 封装 IP packet flow through network device showing IPsec encapsulation and encryption process in three sections: Ingress Forwarding Engine, Anchor PFE, and Egress Forwarding Engine.

图 6 概括展示了通过传入接口进入路由器并进行解封装的 ESP 封装数据包的高级视图。

图 6:IPsec 数据包转发 - ESP 解封装 Flowchart showing ESP encapsulated packet processing: enters through Ingress Forwarding Engine, decrypted by IPsec Engine, routed by inner IP header, exits via Egress Forwarding Engine.

使用 UDP 封装的内联 IPsec 多路径转发

ESP 流量的 UDP 封装

IPsec 可在两个对等方之间建立安全隧道,而 IPsec 封装数据包的 IP 报头包含不会更改的隧道端点 IP。这将导致在对等方之间选择单个转发路径,如 图 7 所示。当 IPsec 流量在拥有数千台主机的数据中心之间流动时,这种单一路径选择会限制吞吐量。

图 7:采用单一转发路径 IPsec with One Forwarding Path的 IPsec

您可以通过启用 IPsec 数据包的 UDP 封装来克服此问题,该封装会在 ESP 报头之后附加一个 UDP 报头,如 图 8 所示。这向中间路由器提供第 3 层和第 4 层信息,并且 IPsec 数据包通过多个路径进行转发,如 图 9 所示。您可为服务集启用 UDP 封装。

图 8:附加的 UDP 报头 Appended UDP Header
图 9:具有多个转发路径 IPsec with Multiple Forwarding Paths的 IPsec

UDP 目的端口的值范围为 1025 到 65536。默认目的端口号为 500。您不能将 4500 配置为目的端口,因为它是众所周知的 NAT 遍历端口。

生成的源端口值从 49152 到 65535。

UDP 封装支持网络地址转换遍历 (NAT-T)

在 IPsec 对等方之间检测到 NAT 设备优先于 UDP 封装配置。如果在两个对等方之间配置了 UDP 封装,但在同一对等方之间检测到 NAT,则将实施 NAT 遍历机制。

在以下情况下,入站 IP 数据包将被丢弃:

  • udp-encapsulation 是否已启用,并且接收到的 IP 数据包没有 UDP 报头。

  • udp-encapsulation 如果 UDP 目的端口与配置的端口不同。

  • udp-encapsulation 已启用,并且 UDP 目的端口不是 500 或未配置。

要启用或禁用 UDP 封装以及配置 UDP 目标端口,请执行以下作:

  1. 配置全局非标准目的端口。这是注册或打开 IPsec 端口所必需的。默认情况下,您无法分配端口 500 和端口 4500,因为它们绑定到 IPsec。

  2. 在 IKE 网关中启用数据包封装。

  3. 将 UDP 目的端口配置为非标准端口。

使用灵活隧道接口 (FTI) 的第 3 层 VXLAN 流量封装

Junos OS 支持通过 VXLAN 同时使用 FTI 和 VTEP VXLAN 通过 IPsec 隧道传输的 VXLAN 流量。有关更多信息,请参阅配置 灵活的隧道接口了解 VXLAN

支持内联 IPsec 的 IPsec 和 IKE 标准

以下 RFC 提供有关 IPsec、IKE 和相关技术的信息:

  • RFC 2085, 带防重放功能的 HMAC-MD5 IP 验证

  • RFC 2401, 互联网协议的安全性架构(因 RFC 4301 被淘汰)

  • RFC 2402,IP 认证头 (因 RFC 4302 被淘汰)

  • RFC 2403 HMAC-MD5-96 在 ESP 和 AH 中的用法

  • RFC 2404,HMAC-SHA-1-96 在 ESP 和 AH 中的用法 (因 RFC 4305 被淘汰)

  • RFC 2405 带有显式 IV 的 ESP DES-CBC 密码算法

  • RFC 2406 IP 封装安全性有效负载 (ESP)( 因 RFC 4303 和 RFC 4305 被淘汰)

  • RFC 2407 ISAKMP 的互联网 IP 安全性解释域 (因 RFC 4306 被淘汰)

  • RFC 2408 互联网安全性关联和密钥管理协议 (ISAKMP)( 因 RFC 4306 被淘汰)

  • RFC 2409 互联网密钥交换 (IKE)( 因 RFC 4306 被淘汰)

  • RFC 2410 NULL 加密算法及其与 IPsec 的配合使用

  • RFC 2451,ESP CBC 模式密码算法

  • RFC 2560 X.509 互联网公钥基础架构在线证书状态协议 - OCSP

  • RFC 3193 使用 IPsec 保护 L2TP 的安全

  • RFC 3280 互联网 X.509 公钥基础架构证书和证书撤销列表 (CRL) 配置文件

  • RFC 3602 AES-CBC 密码算法及其与 IPsec 的配合使用

  • RFC 3948 IPsec ESP 数据包的 UDP 封装

  • RFC 4106 在 IPsec 封装安全性有效负载 (ESP) 中使用伽罗瓦/计数器模式 (GCM)

  • RFC 4210 互联网 X.509 公钥基础架构证书管理协议 (CMP)

  • RFC 4211, 互联网 X.509 公钥基础架构证书请求消息格式 (CRMF)

  • RFC 4301, 互联网协议的安全性架构

  • RFC 4302,IP 认证头

  • RFC 4303,IP 封装安全性有效负载 (ESP)

  • RFC 4305,封 装安全性有效负载 (ESP) 和认证头 (AH) 的密码算法实现要求

  • RFC 4306, 互联网密钥交换 (IKEv2) 协议

  • RFC 4307, 互联网密钥交换第 2 版 (IKEv2) 中使用的密码算法

  • RFC 4308,IPsec 密码套件

    Junos OS 中仅支持套件 VPN-A。

  • RFC 4754, 使用椭圆曲线数字签名算法 (ECDSA) 的 IKE 和 IKEv2 验证

  • RFC 4835,封 装安全性有效负载 (ESP) 和认证头 (AH) 的密码算法实现要求

  • RFC 5996, 互联网密钥交换协议第 2 版 (IKEv2)( 因 RFC 7296 被淘汰)

  • RFC 7296, 互联网密钥交换协议第 2 版 (IKEv2)

  • RFC 7427, 互联网密钥交换第 2 版 (IKEv2) 中的签名验证

  • RFC 7634、 ChaCha20、Poly1305 及其在互联网密钥交换协议 (IKE) 和 IPsec 中的使用

  • RFC 8200, 互联网协议版本 6 (IPv6) 规格

Junos OS 部分支持以下用于 IPsec 和 IKE 的 RFC:

  • RFC 3526,互联网 密钥交换 (IKE) 的莫尔模块指数 (MODP) Diffie-Hellman 群组

  • RFC 5114, 用于支持 IETF 标准的附加 Diffie-Hellman 群组

  • RFC 5903, 用于 IKE 和 IKEv2 的素数模椭圆曲线群组 (ECP 群组)

以下 RFC 和互联网草案不定义标准,而是提供有关 IPsec、IKE 和相关技术的信息。IETF 将其归类为“信息性”。

  • RFC 2104,HMAC :用于消息认证的密钥散列

  • RFC 2412,OAKLEY 密钥确定协议

  • RFC 3706, 一种基于流量的不工作互联网密钥交换 (IKE) 对等方检测方法

  • 互联网草案draft-eastlake-sha2-02.txt, 美国安全散列算法(SHA 和 HMAC-SHA)( 2006 年 7 月到期)

支持流量选择器的内联 IPsec

将流量选择器集成到内联 IPsec 部署中,从而实现对 VPN 流量管理的细致控制。通过定义流量选择器,可以为可遍历 IPsec 隧道的本地和远程 IP 地址设置条件,从而创建控制流量的规则。

内联 IPsec 流量选择器

概述

内联 IPsec 允许您直接在数据包转发引擎内实现加密和解密,无需使用专用服务卡,从而提高安全性和效率。流量选择器样式的配置允许创建具有不同流量参数的多个第 2 阶段 IPsec 安全关联,从而提供精细化的安全管理并强制严格遵守安全策略。流量选择器基于配置和协商的本地和远程地址对启用过滤,有助于对 IPsec 隧道流量进行精细控制。

在 MX-SPC3 实施中,流量选择器由服务卡管理。但是,使用内联 IPsec 时,MX 数据包转发引擎会接管应用流量选择器的角色。流量选择器是 IKE 对等方之间的协议,如果流量与指定的本地和远程地址对匹配,则允许流量通过隧道。源端口、远程端口和协议等其他参数也可用于流量选择。从本质上讲,流量选择器的作用类似于由 IKE 创建并由 PFE 应用的过滤器。根据配置,此过滤器(或一组过滤器)在两种主要方案中发挥作用:

流向隧道的流量 - 如果传入的纯文本 IP 数据包满足流量选择器,则数据包将转发到 IPSec 隧道以进行 ESP 处理。

传入隧道的流量 - 数据包经过 ESP 处理后,如果满足流量选择器,则会转发纯文本 IP 数据包

系统支持安全隧道模式和 ESP 协议,这对于强大的安全标准至关重要,而由于控制平面的限制,传输模式和认证头 (AH) 被排除在外。

配置和兼容性

内联 IPsec 流量选择器支持 ESP 隧道模式,可确保您的网络通信具有强大的安全性。要配置流量选择器,请在 [edit security ipsec vpn vpn-name] 层级使用traffic-selector配置语句。流量选择器使用必需local-ip ip-address/netmaskremote-ip ip-address/netmask和语句定义。有关更多信息,请参阅流量选择器

CLI作命令 show security ipsec security-association detail 显示 SA 的流量选择器信息。 show security ipsec security-association traffic-selector traffic-selector-name CLI 命令可显示指定流量选择器的信息。

对于给定的流量选择器,将为本地地址和远程地址指定单个地址和网络掩码。流量选择器可配置为 IPv4 或 IPv6 地址。

可以为同一 VPN 配置多个流量选择器。每个 VPN 最多可配置 200 个流量选择器。流量选择器可用于 IPv4 中 IPv4、IPv6 中 IPv4、IPv6 中 IPv6 或 IPv4 中 IPv6 隧道模式。

流量选择器不支持以下功能:

  • 为同一流量选择器中的本地和远程 IP 地址配置了不同的地址族

  • 站点到站点 VPN 的远程地址为 0.0.0.0/0 (IPv4) 或 0::0 (IPv6)

  • 在 st0 接口上配置的动态路由协议

您可以配置多组本地 IP 前缀、远程 IP 前缀、源端口范围、目标端口范围和协议,以便进行流量选择。这意味着,如 RFC 7296 中所定义的,多组 IP 地址范围、端口范围和协议可以属于同一个流量选择器。配置多个流量选择器时,每个流量选择器都会导致单独的协商,从而产生多个 IPsec 隧道。但是,如果在一个流量选择器下配置多个术语,则此配置将导致使用多个 IP 前缀、端口和协议进行单个 IPsec SA 协商。

了解自动路由插入

自动路由插入 (ARI) 会自动为受远程隧道端点保护的远程网络和主机插入静态路由。系统会根据流量选择器中配置的远程 IP 地址创建路由。对于流量选择器,配置的远程地址将作为路由插入到与绑定到 VPN 的 st0 接口相关联的路由实例中。

路由协议和流量选择器配置是将流量引导至隧道的互斥方式。ARI 路由可能与通过路由协议填充的路由冲突。因此,不应在绑定到配置了流量选择器的 VPN 的 st0 接口上配置路由协议。

ARI 也称为反向路由插入 (RRI)。ARI 路由插入路由表中,如下所示:

  • 如果在 [edit security ipsec vpn vpn-name] 层级配置了该establish-tunnels immediately选项,则将在第 1 阶段和第 2 阶段协商完成后添加 ARI 路由。由于在建立 SA 之前不会添加路由,因此协商失败不会导致流量路由到出现故障的 st0 接口。而是使用备用隧道或备用。

  • 如果未在 [edit security ipsec vpn vpn-name] 层级配置该establish-tunnels immediately选项,则在配置提交时添加 ARI 路由。

  • 如果流量选择器中配置或协商的远程地址为 0.0.0.0/0 或 0::0,则不会添加 ARI 路由。

静态 ARI 路由的优先级为 5。为了避免与路由协议进程可能添加的类似路由发生冲突,需要使用此值。

静态 ARI 路由不能使用该 rib-groups 配置泄露至其他路由实例。使用配置 import-policy 泄露静态 ARI 路由。

绑定到同一 st0 接口的同一 VPN 中的重叠 IP 地址

当为同一 VPN 中的多个流量选择器配置重叠的 IP 地址时,与数据包匹配的第一个配置流量选择器将确定用于数据包加密的隧道。

在以下示例中,为绑定到点对点 st0.1 接口的 VPN (vpn-1) 配置了四个流量选择器(ts-1、ts-2、ts-3 和 ts-4):

源地址为 192.168.5.5,目标地址为 10.1.5.10 的数据包与流量选择器 ts-1 和 ts-2 匹配。但是,流量选择器 ts-1 是第一个配置的匹配项,并且与 ts-1 关联的隧道用于数据包加密。

源地址为 172.16.5.5,目标地址为 10.2.5.10 的数据包与流量选择器 ts-3 和 ts-4 匹配。但是,流量选择器 ts-3 是第一个配置的匹配项,与流量选择器 ts-3 关联的隧道用于数据包加密。

绑定到不同 st0 接口的不同 VPN 中的重叠 IP 地址

当为绑定到不同点对点 st0 接口的不同 VPN 中的多个流量选择器配置重叠的 IP 地址时,系统会首先根据给定数据包的最长前缀匹配来选择一个 st0 接口。在绑定到选定 st0 接口的 VPN 中,系统会根据为数据包配置的第一个匹配项选择流量选择器。

在以下示例中,两个 VPN 中的每个 VPN 中均配置了一个流量选择器。流量选择器配置了相同的本地子网,但远程子网不同。

每个流量选择器中配置了不同的远程子网,因此会将两个不同的路由添加到路由表中。路由查找使用绑定到相应 VPN 的 st0 接口。

在以下示例中,两个 VPN 中的每个 VPN 中均配置了一个流量选择器。流量选择器配置了不同的远程子网。为每个流量选择器配置相同的本地子网,但指定了不同的网络掩码值。

每个流量选择器中配置了不同的远程子网,因此将两个不同的路由添加到路由表中。路由查找使用绑定到相应 VPN 的 st0 接口。

在以下示例中,流量选择器分别配置在两个 VPN 中。流量选择器配置了不同的本地和远程子网。

在这种情况量选择器不会重叠。流量选择器中配置的远程子网不同,因此会将两个不同的路由添加到路由表中。路由查找使用绑定到相应 VPN 的 st0 接口。

在以下示例中,两个 VPN 中的每个 VPN 中均配置了一个流量选择器。流量选择器配置了同一本地子网。为每个流量选择器配置相同的远程子网,但指定了不同的网络掩码值。

请注意,为 ts-1 配置的为 remote-ip 10.1.1.0/24,而为 ts-2 配置的为 remote-ip 10.1.0.0/16。对于发往 10.1.1.1 的数据包,路由查找会选择 st0.1 接口,因为它的前缀匹配时间较长。数据包根据 st0.1 接口对应的隧道进行加密。

在某些情况下,有效数据包可能会由于流量选择器流量实施而被丢弃。在以下示例中,流量选择器分别配置在两个 VPN 中。流量选择器配置了不同的本地子网。为每个流量选择器配置相同的远程子网,但指定了不同的网络掩码值。

到 10.1.1.0 的两个路由(10.1.1.0/24 通过接口 st0.1 和 10.1.0.0/16 通过接口 st0.2)将添加到路由表中。从源 172.16.1.1 发送到目标 10.1.1.1 的数据包与通过接口 st0.1 的 10.1.1.0/24 的路由表条目匹配。但是,数据包与流量选择器 ts-1 指定的流量不匹配,因此会被丢弃。

如果使用同一远程子网和网络掩码配置了多个流量选择器,则等价路由将添加到路由表中。流量选择器不支持这种情况,因为无法预测所选路由。

示例:在基于路由的内联 IPSec VPN 中配置流量选择器

此示例说明如何为基于路由的 VPN 配置流量选择器。

概述

此示例配置流量选择器,以允许流量在 MX304_A 上的子网和 MX304_B 上的子网之间流动。

表 8 显示了此示例的流量选择器。

表 8:流量选择器配置

MX304_A

MX304_B

流量选择器名称

本地 IP

远程 IP

流量选择器名称

本地 IP

远程 IP

TS1-IPv4

192.168.10.0/24

192.168.0.0/16

TS1-IPv4

192.168.0.0/16

192.168.10.0/24

TS2-IPv6

2001:db8:10::0/64

2001:db8:20::0/64

TS2-IPv6

2001:db8:20::0/64

2001:db8:10::0/64

拓扑结构

图 10 中,IPv6 VPN 隧道在 MX304_A 和 MX304_B 设备之间传输 IPv4 和 IPv6 流量。也就是说,隧道在 IPv6 中的 IPv4 和 IPv6 中的 IPv6 隧道模式下运行。

图 10:流量选择器配置示例 Traffic Selector Configuration Example

配置

配置 MX304_A

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层次结构级别的 [edit] CLI 中,然后从配置模式进入。commit

分步程序

下面的示例要求您在各个配置层级中进行导航。有关如何执行此作的说明,请参阅《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要配置流量选择器:

  1. 配置机箱以启用内联服务。

  2. 为 IPv4 VPN 和 IPv6 VPN 对象配置服务集。

  3. 配置 IKE 提议。

  4. 配置 IKE 策略和 IPv4 IKE 网关。

  5. 配置 IKE 策略和 IPv6 IKE 网关。

  6. 配置 IPsec 提议。

  7. 配置 IPsec 策略。

  8. 配置 IPv4 IPsec VPN 隧道。

  9. 配置 IPv6 IPsec VPN 隧道。

  10. 配置内联服务接口

  11. 配置接口。

结果

在配置模式下,输入 show interfacesshow security ikeshow security ipsec 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。

如果完成设备配置,请从配置模式进入。commit

配置 MX304_B

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,将命令复制并粘贴到层次结构级别的 [edit] CLI 中,然后从配置模式进入。commit

分步程序

下面的示例要求您在各个配置层级中进行导航。有关如何执行此作的说明,请参阅《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要配置流量选择器:

  1. 配置机箱以启用内联服务。

  2. 为 IPv4 VPN 和 IPv6 VPN 对象配置服务集。

  3. 配置 IKE 提议。

  4. 配置 IKE 策略和 IPv4 IKE 网关。

  5. 配置 IKE 策略和 IPv6 IKE 网关。

  6. 配置 IPsec 提议。

  7. 配置 IPsec 策略。

  8. 配置 IPv4 IPsec VPN 隧道。

  9. 配置 IPv6 IPsec VPN 隧道。

  10. 配置内联服务接口。

  11. 配置接口。

结果

在配置模式下,输入 show interfacesshow security ikeshow security ipsec 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明进行更正。

如果完成设备配置,请从配置模式进入。commit

验证

确认配置工作正常。

显示的示例输出在 MX304_A 上。

验证 IPsec 第 2 阶段状态

目的

验证 IPsec 第 2 阶段状态。

行动

在作模式下,输入 show security ipsec security-associations MX304_A 上的命令。

在作模式下,在 MX304_A 上输入 show security ipsec security-associations detail 命令

在作模式下,输入 show security ipsec security-associations MX304_B 上的命令。

在作模式下,输入 show security ipsec security-associations detail MX304_B 上的命令。

意义

show security ipsec security-associations 命令会列出所有活动的 IKE 第 2 阶段 SA。如果未列出任何 SA,则说明第 2 阶段建立存在问题。检查配置中的 IKE 策略参数和外部接口设置。第 2 阶段提议参数必须在对等设备上匹配。

验证流量选择器

目的

验证安全隧道接口上协商的流量选择器。

行动

在作模式下,输入命令 show security ipsec traffic-selector

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。

发布
描述
24.4R1
从 Junos OS 24.4R1 版开始,MX10K-LC4800 和 MX10K-LC9600 支持内联 IPsec 服务。
24.2R1
从 Junos OS 24.2R1 版开始,MX304 LMIC 可支持内联 IPsec 服务。