VPN 会话关联
通过启用 VPN 会话亲和性和性能加速,可以优化 IPsec VPN 流量的性能,以最大程度地减少数据包转发开销。
了解 VPN 会话关联
当明文会话位于与 IPsec 隧道会话所在的 SPU 不同的服务处理单元 (SPU) 中时,就会发生 VPN 会话关联。VPN 会话关联的目标是在同一 SPU 中定位明文和 IPsec 隧道会话。此功能仅在 SRX5400、SRX5600 和 SRX5800 设备上受支持。
如果没有 VPN 会话关联,流创建的明文会话可能位于一个 SPU 中,而 IPsec 创建的隧道会话可能位于另一个 SPU 中。需要 SPU 到 SPU 转发或跃点才能将明文数据包路由到 IPsec 隧道。
默认情况下,在 SRX 系列防火墙上禁用 VPN 会话关联性。启用 VPN 会话关联后,新的明文会话将与 IPsec 隧道会话放置在同一 SPU 上。现有明文会话不受影响。
Junos OS 15.1X49-D10 版引入了适用于SRX5400、SRX5600和SRX5800设备的 SRX5K-MPC3-100G10G (IOC3) 和 SRX5K-MPC3-40G10G (IOC3)。
SRX5K-MPC (IOC2) 和 IOC3 通过改进的流模块和会话缓存支持 VPN 会话关联。借助 IOC,流模块在其隧道锚定的 SPU 上加密之前和解密之后为 IPsec 隧道流量创建会话,并为会话安装会话缓存,以便 IOC 可以将数据包重定向到同一 SPU,从而最大程度地减少数据包转发开销。Express Path(以前称为服务卸载)流量和 NP 缓存流量在 IOC 上共享同一个会话缓存表。
要在 SPU 上显示活动隧道会话,请使用命令并 show security ipsec security-association
指定包含 SPU 的灵活 PIC 集中器 (FPC) 和 物理接口卡 (PIC) 插槽。例如:
user@host> show security ipsec security-association fpc 3 pic 0 Total active tunnels: 1 ID Algorithm SPI Life:sec/kb Mon vsys Port Gateway <131073 ESP:aes-128/sha1 18c4fd00 491/ 128000 - root 500 203.0.113.11 >131073 ESP:aes-128/sha1 188c0750 491/ 128000 - root 500 203.0.113.11
您需要评估网络中的隧道分布和流量模式,以确定是否应启用 VPN 会话关联性。
从 Junos OS 版本 12.3X48-D50、Junos OS 版本 15.1X49-D90 和 Junos OS 版本 17.3R1 开始,如果在 SRX5400、SRX5600 和 SRX5800 设备上启用了 VPN 会话关联,则会根据锚点服务处理单元 (SPU) 上协商的加密和身份验证算法计算隧道开销。如果配置的加密或身份验证发生更改,则在建立新的 IPsec 安全关联时,锚点 SPU 上的隧道开销将会更新。
VPN 会话关联限制如下:
不支持跨逻辑系统的流量。
如果路由发生更改,已建立的明文会话将保留在 SPU 上,并在可能的情况下重新路由流量。路由更改后创建的会话可以在其他 SPU 上设置。
VPN 会话相关性仅影响在设备上终止的自身流量(也称为主机入站流量);源自设备的自身流量(也称为主机出站流量)不受影响。
组播复制和转发性能不受影响。
另请参阅
启用 VPN 会话关联
默认情况下,在 SRX 系列防火墙上禁用 VPN 会话关联性。在某些情况下,启用 VPN 会话关联可以提高 VPN 吞吐量。此功能仅在 SRX5400、SRX5600 和 SRX5800 设备上受支持。本节介绍如何使用 CLI 启用 VPN 会话关联。
确定是否将明文会话转发到其他 SPU 上的 IPsec 隧道会话。使用该 show security flow session
命令显示有关明文会话的会话信息。
user@host> show security flow session Flow Sessions on FPC3 PIC0: Session ID: 60000001, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/6204 --> 203.0.113.6/41264;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 60000002, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 60000003, Policy name: self-traffic-policy/1, Timeout: 58, Valid In: 203.0.113.6/500 --> 203.0.113.11/500;udp, If: .local..0, Pkts: 105386, Bytes: 12026528 Out: 203.0.113.11/500 --> 203.0.113.6/500;udp, If: ge-0/0/2.0, Pkts: 106462, Bytes: 12105912 Session ID: 60017354, Policy name: N/A, Timeout: 1784, Valid In: 0.0.0.0/0 --> 0.0.0.0/0;0, If: N/A, Pkts: 0, Bytes: 0 Out: 198.51.100.156/23 --> 192.0.2.155/53051;tcp, If: N/A, Pkts: 0, Bytes: 0 Total sessions: 4 Flow Sessions on FPC6 PIC0: Session ID: 120000001, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 120000002, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 120031730, Policy name: default-policy-00/2, Timeout: 1764, Valid In: 192.0.2.155/53051 --> 198.51.100.156/23;tcp, If: ge-0/0/1.0, Pkts: 44, Bytes: 2399 Out: 198.51.100.156/23 --> 192.0.2.155/53051;tcp, If: st0.0, Pkts: 35, Bytes: 2449 Total sessions: 3
在此示例中,FPC 3 PIC 0 上有一个隧道会话,FPC 6 PIC 0 上有一个明文会话。转发会话(会话 ID 60017354)在 FPC 3 PIC 0 上设置。
Junos OS 15.1X49-D10 版在 IOC(SRX5K-MPC [IOC2]、SRX5K-MPC3-100G10G [IOC3] 和 SRX5K-MPC3-40G10G [IOC3])上引入了会话关联支持,Junos OS 12.3X48-D30 版在 IOC2 上引入了会话亲和性支持。您可以在 IOC FPC 上为 IPsec 隧道会话启用会话关联。若要启用 IPsec VPN 关联,还必须使用命令在 set chassis fpc fpc-slot np-cache
IOC 上启用会话缓存。
要启用 VPN 会话相关性,请执行以下操作:
启用 VPN 会话相关性后,使用 show security flow session
命令显示有关明文会话的会话信息。
user@host> show security flow session Flow Sessions on FPC3 PIC0: Session ID: 60000001, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/6352 --> 203.0.113.6/7927;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 60000002, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 60000003, Policy name: self-traffic-policy/1, Timeout: 56, Valid In: 203.0.113.6/500 --> 203.0.113.11/500;udp, If: .local..0, Pkts: 105425, Bytes: 12031144 Out: 203.0.113.11/500 --> 203.0.113.6/500;udp, If: ge-0/0/2.0, Pkts: 106503, Bytes: 12110680 Session ID: 60017387, Policy name: default-policy-00/2, Timeout: 1796, Valid In: 192.0.2.155/53053 --> 198.51.100.156/23;tcp, If: ge-0/0/1.0, Pkts: 10, Bytes: 610 Out: 198.51.100.156/23 --> 192.0.2.155/53053;tcp, If: st0.0, Pkts: 9, Bytes: 602 Total sessions: 4 Flow Sessions on FPC6 PIC0: Session ID: 120000001, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Session ID: 120000002, Policy name: N/A, Timeout: N/A, Valid In: 203.0.113.11/0 --> 203.0.113.6/0;esp, If: ge-0/0/2.0, Pkts: 0, Bytes: 0 Total sessions: 2
启用 VPN 会话关联后,明文会话始终位于 FPC 3 PIC 0 上。
另请参阅
加速 IPsec VPN 流量性能
您可以通过配置性能加速参数来加速 IPsec VPN 性能。默认情况下,SRX 系列防火墙上的 VPN 性能加速处于禁用状态。启用 VPN 性能加速可以在启用 VPN 会话关联的情况下提高 VPN 吞吐量。此功能仅在 SRX5400、SRX5600 和 SRX5800 设备上受支持。
本文介绍如何使用CLI开启VPN性能加速。
要启用性能加速,必须确保在同一服务处理单元 (SPU) 上建立明文会话和 IPsec 隧道会话。从 Junos OS 17.4R1 版开始,启用 VPN 会话关联和性能加速功能时,IPsec VPN 性能将得到优化。有关启用会话相关性的详细信息,请参阅 了解 VPN 会话相关性。
要启用 IPsec VPN 性能加速,请执行以下操作:
开启 VPN 性能加速后,使用 show security flow status
命令显示流量状态。
Flow forwarding mode: Inet forwarding mode: flow based Inet6 forwarding mode: drop MPLS forwarding mode: drop ISO forwarding mode: drop Flow trace status Flow tracing status: off Flow session distribution Distribution mode: Hash-based Flow packet ordering Ordering mode: Hardware Flow ipsec performance acceleration: on
另请参阅
IPsec 分布配置文件
从 Junos OS 19.2R1 版开始,您可以为 IPsec 安全关联 (SA) 配置一个或多个 IPsec 分发配置文件。隧道在配置的分布配置文件中指定的所有资源 (SPC) 上均匀分布。仅在 SPC3 和混合模式 (SPC3 + SPC2) 中受支持,在 SPC1 和 SPC2 系统上不受支持。使用 IPsec 分布配置文件,使用命令将 set security ipsec vpn vpn-name distribution-profile distribution-profile-name
隧道关联到指定的:
插槽
PIC
或者,您可以使用默认的 IPsec 分发配置文件:
default-spc2-profile
— 使用此预定义的默认配置文件将 IPsec 隧道关联到所有可用的 SPC2 卡。default-spc3-profile
— 使用此预定义的默认配置文件可将 IPsec 隧道关联到所有可用的 SPC3 卡。
现在,您可以将配置文件分配给特定 VPN 对象,其中所有关联的隧道都将基于此配置文件进行分布。如果未将配置文件分配给 VPN 对象,SRX 系列防火墙会自动在所有资源上均匀分配这些隧道。
您可以将 VPN 对象与用户定义的配置文件或预定义(默认)配置文件相关联。
从 Junos OS 20.2R2 版开始,配置到分发配置文件的无效线程 ID 将被忽略,并且不会显示提交检查错误消息。IPsec 隧道根据配置的分发配置文件进行锚定,忽略该配置文件的无效线程 ID(如果有)。
在以下示例中,与配置文件 ABC 关联的所有隧道都将分布 在 FPC 0、PIC 0 上。
userhost# show security { distribution-profile ABC { fpc 0 { pic 0; } } }
了解高可用性 VPN 的环路接口
在 IPsec VPN 隧道配置中,必须指定外部接口才能与对等 IKE 网关通信。当有多个物理接口可用于访问对等网关时,最好为 VPN 的外部接口指定环路接口。在环路接口上锚定 VPN 隧道可消除对物理接口的依赖,从而实现成功路由。
独立 SRX 系列防火墙以及机箱群集中的 SRX 系列防火墙都支持对 VPN 隧道使用环路接口。在机箱群集主动-被动部署中,您可以创建逻辑环路接口并使其成为冗余组的成员,以便可用于锚定 VPN 隧道。环路接口可以在任何冗余组中配置,并被分配为 IKE 网关的外部接口。VPN 数据包在冗余组处于活动状态的节点上处理。
在 SRX5400、SRX5600 和 SRX5800 设备上 -
-
对于运行 kmd 进程的基于 SPC2 的设备,如果环路接口用作 IKE 网关外部接口,请在 RG0 以外的冗余组中配置接口绑定。
-
对于运行 iked 进程的基于 SPC3 或 SPC3+SPC2 的设备,不需要将环路接口绑定到冗余组。
在机箱群集设置中,外部接口处于活动状态的节点会选择一个 SPU 来锚定 VPN 隧道。IKE 和 IPsec 数据包在该 SPU 上处理。因此,活动外部接口确定锚点 SPU。
您可以使用命令 show chassis cluster interfaces
查看冗余伪接口上的信息。
另请参阅
变更历史表
是否支持某项功能取决于您使用的平台和版本。 使用 Feature Explorer 查看您使用的平台是否支持某项功能。