首页/网络/网络设备配置速查/NAT ALG:FTP / SIP 等特殊协议穿越
NAT 与出口31 条

NAT ALG:FTP / SIP 等特殊协议穿越

FTP 主动/被动模式、SIP 通话等协议会把 IP 与端口写在载荷里,需要 ALG 协同时刻改写,否则连得上但数据传不了。

网络设备配置速查网络更新于 2026-10-13

ALG 解决什么协议问题

NAT ALG(应用层网关)解决的是「报文载荷里也带着 IP 与端口」的协议穿越问题:FTP 的主动与被动模式、SIP、RTSP、PPTP 等协议会在载荷里携带地址信息,NAT 设备必须在转换地址的同时改写载荷内容,否则表现为连接能建立但数据传不过去。

基本信息

适用平台思科 IOS / 华为 VRP / H3C Comware 出口设备
典型协议FTP、SIP、RTSP、PPTP、DNS、H.323
华为与 H3Cnat alg enable ftp 等显式开启
思科多数 ALG 默认随协议启用,可用 no ip nat service 精细关闭

典型使用场景

  • FTP 被动模式下能登录但列目录卡住,需要确认 ALG 状态
  • SIP 语音注册成功却单向无声,多数与载荷地址未改写相关
  • RTSP 视频流无法播放,需检查会话描述中的地址改写
  • 排障时临时关闭 ALG 验证是否由它引起
  • 语音或视频平台与 ALG 不兼容时的取舍

华为 VRP

华为 VRP
[Huawei] nat alg enable ftp
[Huawei] nat alg enable dns
[Huawei] nat alg enable sip
<Huawei> display nat alg

思科 IOS

思科 IOS
SW-CORE-01# show run | include ip nat service
SW-CORE-01(config)# no ip nat service sip udp port 5060   # 与第三方 SIP 服务器冲突时关闭
SW-CORE-01(config)# no ip nat service all                 # 关闭全部 ALG,慎用

H3C Comware

H3C Comware
[H3C] nat alg ftp enable
[H3C] nat alg dns enable
<H3C> display nat alg

协议与典型故障

协议依赖 ALG 的原因典型故障现象
FTP主动与被动模式的载荷中携带地址与端口能登录但列目录或传输卡住
SIP会话描述中携带地址信息注册成功但单向无声
RTSP会话描述中携带地址视频无法播放或播放中断
DNS部分场景需要改写应答中的地址解析结果指向不可达地址
三厂默认状态不同:思科多数 ALG 默认随协议启用,可用 no ip nat service 精细关闭;华为与 H3C 用 nat alg enable 显式开启。ALG 与部分语音、视频平台不兼容,排障时可以临时关闭验证。
关闭全部 ALG 是排查手段而不是解决方案:关掉之后 FTP 被动模式、SIP 等协议会直接不可用。验证完必须恢复,并记录清楚当时关闭了哪些项,避免留下长期隐患。

易错点

  • FTP 被动模式不通先怀疑服务器:应先查 ALG 是否开启,再确认服务器的被动端口范围是否已放行
  • 排查时关闭 ALG 后忘记恢复:相关协议业务持续异常,变更记录缺失导致难以定位
  • 按经验假设三厂默认状态一致:实际思科多为默认启用、华为与 H3C 需显式开启,应以设备输出为准
  • 把 ALG 当成万能的地址改写方案:加密协议与部分私有实现无法改写载荷,只能改用代理或升级客户端

数据来源与参考

  • Cisco IOS NAT ALG(ip nat service)说明
  • 华为 VRP NAT ALG 配置
  • H3C Comware NAT ALG 配置

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌