Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

GPRS 简介

GPRS 概述

通用分组无线服务 (GPRS) 网络连接到多个外部网络,包括漫游合作伙伴、企业客户、GPRS 漫游交换 (GRX) 提供商和公共互联网。GPRS 网络运营商面临着保护其网络,同时提供和控制进出这些外部网络的访问的挑战。瞻博网络为困扰 GPRS 网络运营商的许多安全问题提供解决方案。

在 GPRS 架构中,造成运营商网络安全威胁的根本原因是 GPRS 隧道协议 (GTP) 中固有的缺乏安全性。GTP 是 GPRS 支持节点 (GSN) 之间使用的协议。GTP 用于为单个用户端点 (UEs) 建立 GTP 隧道,并在 4G 中的服务网关 (S-GW) 和 PDN 网关 (P-GW) 之间建立一个 GTP 隧道。GTP 隧道是 GSN 之间的通道,两个主机通过该通道交换数据。SGSN (S-GW) 从用户端点接收数据包,并将其封装在 GTP 标头中,然后再通过 GTP 隧道转发至 GGSN。当 GGSN 接收到数据包时,它会解封装这些数据包并将其转发至外部主机。

不同 GPRS 网络之间的通信不安全,因为 GTP 不提供任何身份验证、数据完整性或机密性保护。对于漫游合作伙伴之间的连接实施 IP 安全 (IPsec),设置流量速率限制并使用状态检测可以消除 GTP 的大部分安全风险。Junos OS 中的 GTP 防火墙功能解决了移动运营商网络中的关键安全问题。

瞻博网络安全设备可缓解以下类型的 GPRS 接口上的各种攻击:

  • Gn — Gn 接口是同一公共陆地移动网络 (PLMN) 内的 SGSN (S-GW) 与 GGSN 之间的连接。

    S5 - S5 接口是 4G 网络中 PLMN 中的 S-GW 和 P-GW 之间的连接。

  • Gp - Gp 接口是两个 PLMN 之间的连接。

    S8 -S8 接口是 4G 网络中家庭与访问过的 PLMN 之间的承载平面连接。

  • Gi — Gi 接口是 GGSN 与连接到 PLMN 的互联网或目标网络之间的连接。

    SGi - SGi 接口是 P-GW 与连接到 4G 网络中 PLMN 的互联网或目标网络之间的连接。

该术语 interface 在 Junos OS 和 GPRS 技术中具有不同的含义。在 Junos OS 中,接口是安全区域的门道,允许信息流进出该区域。在 GPRS 中,接口是 GPRS 基础架构两个组件之间的连接或参考点,例如 SGSN (S-GW) 和 GGSN (P-GW)。

从 Junos OS 版本 18.4R1 开始,IPv6 地址支持 GPRS 隧道协议 (GTP) 流量安全检查以及现有 IPv4 支持。借助此增强功能,可在 3G 中服务 GPRS 支持节点 (SGSN) 或服务网关 (S-GW) 与 3G 中的网关 GPRS 支持节点 (GGSN) 之间为单个用户端点 (UE) 建立一个使用 IPv4 和 IPv6 地址的 GTP 隧道。借助 IPv6 支持,GTP 应用层网关 (ALG) 会根据策略配置检查或忽略 IPv6 GTP 会话。IPv6 上支持 IPv4 上的所有 ALG 功能。您可以根据策略配置检查 GTP 信号或通过 IPv6 传输的数据消息。

本主题包含以下部分:

Gp 和 Gn 接口

您可在 Gn 接口上实施安全设备以保护核心网络资产,例如 SGSN (S-GW) 和 GGSN (P-GW)。要在 Gn 接口上保护 GTP 隧道,您可将安全设备置于通用 PLMN 内的 SGSN (S-GW) 和 GGSN (P-GW) 之间。

在 Gp 接口实施安全设备时,可以保护 PLMN 免受其他 PLMN 的使用。要在 Gp 接口上保护 GTP 隧道,您可将 PLMN 的 SGSN (S-GW) 和 GGSN (P-GW) 置于安全设备后面,以便所有传入和传出的流量都通过防火墙。

图 1 展示了用于在 Gp 和 Gn 接口上保护 PLMN 的瞻博网络 SRX 系列设备的位置。

图 1: Gp 和 Gn 接口 Gp and Gn Interfaces

Gi 接口

在 Gi 接口上实施安全设备时,您可以同时控制多个网络的流量,保护 PLMN 免受互联网和外部网络的侵害,以及保护移动用户免受互联网和其他网络的影响。Junos OS 提供了大量虚拟路由器,使您能够在每个客户网络中使用一个虚拟路由器,从而允许为每个客户网络分离流量。

安全设备可以使用 IPsec 虚拟专用网络 (VPN) 隧道的第 2 层隧道协议 (L2TP) 将数据包安全地转发至互联网或目标网络。

SRX 系列设备不支持完全 L2TP。

图 2 展示了实施安全设备以保护 Gi 接口上的 PLMN。

图 2:Gi 接口 Gi Interface

操作模式

Junos OS 支持两种具有 GTP 的接口操作模式:透明模式和路由模式。如果您希望安全设备参与网络的路由基础架构,则可以在路由模式下运行。这就需要重新设计一定数量的网络。或者,您可以在透明模式下将安全设备实施到现有网络中,而无需重新配置整个网络。在透明模式下,安全设备可用作第 2 层 交换机或桥接,接口的 IP 地址设置为 0.0.0.0,从而使安全设备的存在对用户不可见或 透明

Junos OS 支持未启用 GTP 检测的接口和策略上的 NAT。

路由模式当前处于 Junos OS 中,支持主动/被动和主动/主动 机箱群集。透明模式仅支持主动/被动。

GTP 不中断服务的软件升级

GTP 支持运行两个不同的 Junos OS 版本的两个 SRX 系列设备之间的统一不中断服务的软件升级 (ISSU)。在机箱群集上执行统一 ISSU,从而在两个不同的 Junos OS 版本之间实现软件升级,而不会中断控制平面,而且流量中断最小。

在 SRX5400、SRX5600 和 SRX5800 设备上,从 Junos OS 版本 12.1X45 到 Junos OS 12.1X46,从 Junos OS 版本 12.1X46 到 Junos OS 版本 12.3X48-D10 支持 ISSU。Junos OS 版本 12.1X45 到 Junos OS 12.3X48-D10 不支持 ISSU。

了解 GTP 对中央点架构的支持

用户设备(例如手机)连接到通用数据包无线服务 (GPRS) 数据服务的服务 GPRS 支持节点 (SGSN) 或 S-GW(服务网关)。SGSN (S-GW) 连接到网关 GPRS 支持节点以访问互联网。用户设备请求 SGSN 创建一个或多个 GPRS 隧道协议 (GTP) 隧道到 GGSN 或 P-GW(PDN 网关)进行互联网访问。如果用户设备移动到新位置,则用户设备必须连接到另一个 SGSN。新 SGSN 通知 GGSN 在原始隧道中更新新 SGSN 信息。

GTP 应用层网关 (ALG) 可维护隧道的状态,并允许隧道更新仅针对现有隧道请求数据包。当用户设备移动到新位置并连接到另一个 SGSN 时,必须在原始隧道中更新新的 SGSN 信息。由于很少有 GTP-C 消息是双向的,并且消息可以由 SGSN 或 GGSN 发送,因此无法保证会话分配正确。也就是说,如果第一个数据包源自未知方向,GTP ALG 将停止创建会话。在这种情况下,将丢弃第一个数据包和其他挂起的数据包。

为防止 GTP-C 数据包被丢弃,将创建新的流会话,即使未确定 GGSN 或 SGSN 方向,GTP-C 流量也可通过。之后,GGSN IP 将使用正确的 SPU 来创建流会话;否则,会话会迁移到指定的 SPU。

从 Junos OS 版本 18.4R1 开始,GTP-C 隧道进行了增强,以支持基于隧道的会话分布,以加快隧道设置过程并平衡 SPU 之间的会话。基于隧道的会话可保证 GTP-C 隧道消息到达控制隧道并完成状态检测。如果启用了 GTP-C 分配,GTP-C 隧道和 GTP-C 隧道会话将由隧道的 SGSN 隧道端点标识符 (TEID) 分发。使用 命令 set security forwarding-process application-services enable-gtpu-distribution 启用基于隧道的会话分配,其中不同隧道的 GTP-C 流量分布在不同的 SPU 之间。此命令是必需的。如果配置中缺少,GTP ALG 将停止工作,并且不会检查 GTP 数据包。

从 Junos OS 15.1X49-D40 版和 Junos OS 17.3R1 版开始,中心点架构得到增强。增强功能如下:

  • 在 SGSN 交接期间防止 GTP-C 数据包丢弃问题。

  • 支持 GTP-C 消息速率限制,以保护 GGSN 免受 GTP-C 消息泛滥。

  • 将 GGSN 和 SGSN 对处理的 GTP-C 和 GTP-U 流量分布到所有 SPU 上,方法是切换到基于隧道的会话分布,其中不同隧道的 GTP-C 和 GTP-U 流量分布在不同的 SPU 上。使用 命令 enable-gtpu-distribution 启用 GTP-C 或 GTP-U 会话分配。

GTP 隧道管理

GTP 用于为单个用户端点 (UE) 建立 GTP 隧道,并在服务 GPRS 支持节点 (SGSN) 和网关 GPRS 支持节点 (GGSN) 之间建立一个隧道。GTP 隧道是 GSN 之间的通道,两个主机通过该通道交换数据。SGSN 从用户端点 (UES) 接收数据包,并将其封装在 GTP 标头中,然后再通过 GTP 隧道转发至 GGSN。当 GGSN 接收到数据包时,它会解封装这些数据包并将其转发至外部主机。

隧道对象:客户端端点包含下游 GSN (SGSN) 的信息,服务器端点保存着上游 GSN (GGSN) 的信息。每个通道端点保留一个用于 IPv4 地址的字段,一个保留用于 IPv6 地址的字段。隧道端点可保存在隧道创建或更新消息中获知的地址。

重定向条目:安装了重定向条目(也称为重定向隧道),以帮助查找锚点 SPU。重定向端点通过创建正常 GTP 隧道的方式创建。重定向条目映射到一个隧道端点,并从隧道中复制 IP 地址、TEID 值和锚定 SPU ID。借助 IPv6 隧道支持,重定向输入像隧道对象一样扩展。

GSN

网关 GPRS 支持节点 (GGSN) 或 P-GW (PDN 网关)可通过服务网关 GPRS 支持节点 (SGSN) 转换来自移动用户的传入数据流量,并将其转发至相关网络,反之亦然。GGSN 和 SGSN 一起构成 GPRS 支持节点 (GSN)。

GSN 对象:GTP ALG 维护 GSN 表。GSN 表中的每个 GSN 节点将记录一个 GSN IP 地址(IPv4 或 IPv6)、GSN 重新启动计数器和基于 GSN 的速率限制计数器等。如果 GSN 节点同时具有 IPv4 和 IPv6 地址,GTP ALG 将生成两个 GSN 条目,一个用于 IPv4 地址,另一个用于 IPv6 地址,同一 GSN 节点中的两个 GSN 条目将单独统计速率限制信号消息,并单独老化。

GSN 重新启动:如果 GSN 重新启动,重新启动计数器更改和相关隧道将被删除。例如,如果一个 GSN 节点在隧道上启用了两个 IP 地址。然后只有一个 IP 地址(IPv4 或 IPv6)即可重新启动 GSN。两个 IP 地址的隧道将被移除,反之亦然。

路径对象管理

路径对象包含两个 GSN 地址,同时支持 IPv4 和 IPv6 地址。路径对象会记录 GSN 地址之间的信息,例如消息计数器、最后一次等。对于同时具有 IPv4 和 IPv6 地址的 GSN,这两个地址具有其分离的路径。每个路径都执行自己的速率限制,并且会单独老化。

发布历史记录表
释放
描述
18.4R1
从 Junos OS 版本 18.4R1 开始,IPv6 地址支持 GPRS 隧道协议 (GTP) 流量安全检查以及现有 IPv4 支持。借助此增强功能,可在 3G 中服务 GPRS 支持节点 (SGSN) 或服务网关 (S-GW) 与 3G 中的网关 GPRS 支持节点 (GGSN) 之间为单个用户端点 (UE) 建立一个使用 IPv4 和 IPv6 地址的 GTP 隧道。借助 IPv6 支持,GTP 应用层网关 (ALG) 会根据策略配置检查或忽略 IPv6 GTP 会话。IPv6 上支持 IPv4 上的所有 ALG 功能。您可以根据策略配置检查 GTP 信号或通过 IPv6 传输的数据消息。
15.1X49-D40
从 Junos OS 15.1X49-D40 版和 Junos OS 17.3R1 版开始,中心点架构得到增强。