跳到主要内容

OmniEPDG 操作指南

OmniEPDG 是一个进化的分组数据网关 (ePDG),支持 WiFi 语音通话 (VoWiFi)。它通过 EAP-AKA 在不受信任的 WiFi 网络上对移动用户进行身份验证,并通过 Diameter 信令连接到移动核心网络,连接到 HSS 和 GTP 隧道到分组网关 (PGW)。

OmniEPDG 会话

OmniEPDG 控制面板显示一个活动的用户会话及实时流量统计。

OmniEPDG 支持两种操作模式:

  • GTP 模式(默认) - 通过 GTPv2-C 和 GTP-U 通过 PGW 完全符合 3GPP 的隧道
  • 简单 VPN 模式 - 本地突破,内置 IP 池和 Linux TUN 接口,无需 PGW

文档

配置与操作

  • 架构与呼叫流程 - 系统架构、协议接口、UE 状态机和两种模式的消息序列图
  • 配置参考 - Diameter、GTPv2-C、GTP-U、简单 VPN 和日志的完整参数文档
  • 控制面板 - 用于会话、Diameter 对等体和日志的基于 Web 的监控 UI

安全

  • 安全指南 - 身份验证速率限制和 GeoIP 国家阻止

监控与故障排除

  • 指标参考 - 用于监控身份验证、会话、Diameter 信令和系统健康的 Prometheus 指标
  • 故障排除 - 常见问题、诊断程序和解决步骤

操作模式

GTP 模式

默认模式。OmniEPDG 通过 PGW 使用 GTPv2-C 进行会话控制,并通过 GTP-U(通过 Linux 内核模块)进行用户平面隧道。此模式完全符合 3GPP 标准,适合具有现有 EPC 基础设施的运营商部署。

流量路径: UE → IPSec → OmniEPDG → GTPv2-C 创建会话 → GTP-U 隧道 → PGW → 互联网

所需基础设施: HSS,PGW

简单 VPN 模式

OmniEPDG 从本地池中分配 IP 地址,并通过 Linux TUN 接口(tun_epdg)直接路由用户流量,使用标准内核路由。无需 PGW 或 GTP 基础设施。身份验证仍然通过 Diameter SWx 到 HSS 进行。

流量路径: UE → IPSec → OmniEPDG → 本地 IP 分配 → TUN 接口 → Linux 路由 → 互联网

所需基础设施: 仅 HSS(不需要 PGW)

可选优化: skip_sar 标志绕过 HSS 服务器分配请求/应答,减少连接建立时间。这意味着 HSS 不会跟踪哪个 ePDG 为用户服务,并且 HSS 发起的程序(注销、配置文件推送)将无法工作。适合没有漫游要求的私有部署。

模式比较

功能GTP 模式简单 VPN 模式
3GPP 兼容否(使用 skip_sar),部分(不使用)
需要 PGW
需要 HSS是(仅身份验证)
IP 分配来自 PGW本地池(CIDR)
用户平面GTP-U 内核模块Linux TUN + 路由
HSS 配置文件推送是(PPR/PPA)
HSS 注销是(RTR/RTA)否(使用 skip_sar
PGW 发起的拆除不适用
漫游支持
IPv6 / 双栈仅 IPv4

协议接口

接口协议传输模式对等体目的参考
SWuIKEv2 / IPSecUDP两者UE安全隧道和 EAP-AKA 身份验证3GPP TS 33.402
SWxDiameterSCTP两者HSS身份验证向量和服务器分配3GPP TS 29.273 第 8 节
S6bDiameterSCTP仅 GTPPGW会话授权和策略3GPP TS 29.273 第 9 节
S2bGTPv2-C / GTP-UUDP仅 GTPPGW控制和用户平面隧道3GPP TS 29.274

特性

核心功能

  • EAP-AKA 身份验证 - 通过 HSS 完全 3GPP EAP-AKA 用户身份验证
  • IPSec 隧道管理 - 基于 IKEv2 的 UE 和 ePDG 之间的安全隧道
  • 双重操作模式 - GTP 隧道到 PGW 或使用简单 VPN 的本地突破
  • 每个 UE 状态机 - 每个用户的独��� Erlang FSM 用于会话生命周期管理
  • 双栈支持 - IPv4、IPv6 和 IPv4v6 PDP 地址类型(GTP 模式)

GTP 模式特性

  • GTP 隧道建立 - 通过 Linux 内核模块创建 GTPv2-C 会话和 GTP-U 用户平面
  • PGW 发起的拆除 - PGW 发送删除承载请求,ePDG 将拆除级联到 UE
  • 网络发起的拆除 - HSS 通过 SWx RTR 触发注销,ePDG 拆除所有会话
  • 重新身份验证 - HSS 触发的配置文件推送和重新授权,参考 3GPP TS 29.273 第 7.1.2.5.1 节

简单 VPN 模式特性

  • 本地 IP 池 - 基于 CIDR 的 IPv4 地址分配,按 IMSI 跟踪
  • TUN 接口路由 - 标准 Linux TUN 设备(tun_epdg)与每个 UE 主机路由
  • DNS 配置 - 通过 PCO 提供给 UE 的可配置 DNS 服务器
  • 可选 SAR 跳过 - 绕过 HSS 注册以加快连接建立

安全特性

  • 身份验证速率限制 - 每个 IP 和每个 IMSI 的暴力破解保护,具有可配置阈值
  • GeoIP 国家阻止 - 使用 MaxMind GeoLite2 的国家访问控制白名单或黑名单
  • 死对等检测 - 活跃的存活监测,具有可配置探测
  • ESP 防重放保护 - 符合 RFC 4303 的 64 位滑动窗口

HSS 集成 (SWx Diameter)

  • 多媒体身份验证请求/应答 (MAR/MAA) - 检索 EAP-AKA 身份验证向量(两种模式)
  • 服务器分配请求/应答 (SAR/SAA) - 下载用户配置文件和 APN 配置(在简单模式中可跳过)
  • 推送配置文件请求/应答 (PPR/PPA) - 从 HSS 接收更新的用户配置文件(GTP 模式)
  • 注册终止请求/应答 (RTR/RTA) - HSS 发起的用户注销(GTP 模式)

PGW 集成(仅限 GTP 模式)

S6b Diameter:

  • AA 请求/应答 (AAR/AAA) - 授权 PGW 会话
  • 会话终止请求/应答 (STR/STA) - 终止 PGW 会话
  • 重新授权请求/应答 (RAR/RAA) - 重新授权活动会话
  • 强制会话终止请求/应答 (ASR/ASA) - 强制终止会话

S2b GTPv2-C:

  • 创建会话请求/响应 - 建立带有 TEID 分配的 GTP 隧道
  • 删除会话请求/响应 - 拆除 GTP 隧道
  • 删除承载请求/响应 - PGW 发起的承载管理

快速开始

配置结构

配置在 config/runtime.exs 中完成,或通过环境变量进行配置。vpn_mode 参数在 GTP 和简单 VPN 模式之间进行选择。有关完整参数文档,请参见 配置参考

典型网络地址(GTP 模式)

组件IP 地址端口备注
OmniEPDG (GTP-U)10.74.0.11-GTP-U 隧道端点
OmniEPDG (Diameter S6b)10.74.0.123868S6b Diameter 监听器
HSS10.74.0.213868SWx Diameter 对等体
PGW10.74.0.232123GTPv2-C 和 S6b 对等体

典型网络地址(简单 VPN 模式)

组件IP 地址备注
OmniEPDG (TUN 网关)10.44.0.1tun_epdg 接口上的网关 IP
UE IP 池10.45.0.0/16可配置的 CIDR 池,用于用户 IP
HSS10.74.0.21:3868SWx Diameter 对等体(仅身份验证)

3GPP 规范

规范标题相关性
TS 29.273EPS AAA 接口 (SWx, S6b, SWm)ePDG Diameter 接口的主要规范
TS 29.274GTPv2-C 和 GTP-US2b 隧道控制和用户平面(GTP 模式)
TS 33.402非 3GPP 访问的安全性不受信任的 WiFi 的 EAP-AKA 身份验证
TS 23.402非 3GPP 访问的���构增强整体 ePDG 架构和程序
TS 23.003编号、地址和标识NAI 格式,IMSI 结构
TS 29.229Cx/Dx Diameter(通用定义)SWx 使用的服务器分配类型值
RFC 6733Diameter 基础协议Diameter 传输、对等体管理、看门狗
RFC 4187EAP-AKA通过 IKEv2 使用的身份验证方法

按角色文档

网络运营商:

  1. 架构与呼叫流程 开始,以了解系统和两种操作模式
  2. 查看 配置参考 以获取部署参数
  3. 查看 安全指南 以配置速率限制和 GeoIP 阻止
  4. 使用 指标参考 设置监控以进行 Prometheus 集成
  5. 保持 故障排除 指南以备操作使用

系统集成商:

  1. 查看 架构与呼叫流程 以获取接口细节和状态机
  2. 使用 配置参考 进行对等体连接设置
  3. 使用 指标参考 配置警报
  4. 参考上面的 3GPP 规范表以确保协议合规性