SIP抓包调试、故障排查与项目上线实战手册

一、Wireshark SIP专属抓包过滤指令(运维高频必备)

所有指令可直接复制使用,精准过滤信令、媒体、故障报文,快速定位问题,规避无效抓包。

1. 基础全局过滤

  • 抓取所有SIP信令:sip

  • 抓取默认端口SIP:udp.port == 5060 || tcp.port == 5060

  • 抓取加密SIPS:tcp.port == 5061

  • 同时抓取信令+媒体:udp.port == 5060 || rtp

2. 按请求方法精准过滤

  • 呼叫报文:sip.Method == "INVITE"

  • 注册报文:sip.Method == "REGISTER"

  • 挂断报文:sip.Method == "BYE"

  • 取消呼叫:sip.Method == "CANCEL"

  • 能力探测:sip.Method == "OPTIONS"

3. 按状态码故障过滤

  • 所有错误报文:sip.Status-Code >= 400

  • 鉴权失败:sip.Status-Code == 401

  • 号码不存在:sip.Status-Code == 404

  • 对方占线:sip.Status-Code == 486

  • 编码不兼容:sip.Status-Code == 488

  • 服务器异常:sip.Status-Code == 500

4. 精准定位终端与会话

  • 过滤指定主叫:sip.From contains "分机号"

  • 过滤指定被叫:sip.To contains "分机号"

  • 过滤带鉴权报文:sip.Authorization

  • 过滤媒体协商报文:sip.Content-Type contains "sdp"

5. RTP媒体流过滤(无声/单通排查核心)

  • 所有媒体流:rtp

  • G.711a编码:rtp.payload_type == 8

  • G.711u编码:rtp.payload_type == 0

  • G.729编码:rtp.payload_type == 18

6. 抓包调试高阶技巧

右键报文选择「Follow SIP Stream」,一键还原完整呼叫时序;选中RTP流可直接播放语音,快速判断杂音、无声、单通问题;过滤后导出指定报文,用于故障复盘与厂商对接。

二、三大核心故障标准化排查方案

1. 终端注册失败(401/403/404/超时掉线)

前置基础检查:ping服务器IP验证连通性,放行5060端口,核对终端账号、密码、服务器地址、realm域,确认账号未被禁用、无IP黑名单。

故障细分定位

  • 401鉴权失败:密码错误、realm不匹配、未携带鉴权头

  • 404号码不存在:服务器未创建对应分机账号

  • 403禁止访问:账号禁用、IP黑名单、无注册权限

  • 无响应超时:防火墙拦截UDP报文、SIP服务宕机、公网NAT丢包

  • 频繁掉线:NAT会话超时、重注册间隔过长、expires参数不合理(推荐1800-3600s)

2. 呼叫建立失败(振铃失败、接通报错)

  • 404:路由规则错误、被叫离线、前缀匹配异常

  • 486:被叫占线、终端勿扰、最大并发打满

  • 488:两端编码无交集,无通用兜底编码

  • 487:呼叫中途取消、服务器路由超时

  • 503:中继离线、服务器过载、网关故障

3. 接通无声/单通/杂音(最高频工程问题)

核心根因:信令正常、媒体异常,90%问题源于NAT穿透异常、端口拦截、编码不兼容、网络丢包。

  • 双向无声:两端RTP端口拦截、SDP内网IP无法路由、编码不匹配

  • 单向通话:内网终端SDP携带内网IP,外网无法回包,NAT无地址替换

  • 杂音/断续:网络丢包、抖动过高、UDP报文分片被拦截、WiFi信号不稳定

根治方案:公网部署SBC/STUN,关闭路由器SIP ALG,放行10000-20000 UDP端口,统一终端编码优先级,优化网络QoS。

三、分层标准化排查流程(万能排障逻辑)

1. 网络层(第一层排查)

验证IP连通性、端口放行、VLAN隔离、NAT规则、UDP会话超时时间,公网环境关闭SIP ALG,规避报文篡改。

2. 信令层(第二层排查)

抓包核对注册、呼叫完整时序,通过状态码定位客户端/服务端故障,确认鉴权、路由、会话流程无异常。

3. 媒体层(第三层排查)

校验SDP的IP、端口、编码合法性,抓取RTP流验证双向数据传输,排查丢包、延迟、抖动问题。

四、SIP项目上线全量检查清单(内网+公网双版本)

1. 内网IPPBX上线清单

  • 服务器:固定静态IP、SIP服务正常运行、NTP时间同步、防火墙放行5060端口

  • 账号配置:开启MD5鉴权、配置合理注册有效期、分配对应呼出/呼入权限

  • 终端配置:匹配服务器参数、统一编码优先级、固定终端IP、关闭冗余功能

  • 业务测试:注册稳定、互呼正常、语音清晰、转接/保持/录音功能正常、无僵死会话

2. 公网SIP中继/外网终端上线清单

  • 边界设备:固定公网IP、放行信令与媒体端口、调整UDP超时≥360s、部署SBC/STUN

  • 安全配置:关闭匿名注册、开启TLS/SRTP加密、限制单账号并发、开启呼叫日志审计

  • 终端适配:开启STUN穿透、缩短重注册间隔、优先低带宽编码、适配4G/WiFi切换场景

  • 全场景测试:外网注册稳定、内外网互通正常、无单通掉线、中继呼叫无异常

五、日常运维巡检规范与故障速记口诀

1. 日常巡检核心项

每日统计4xx/5xx错误量、核查终端在线状态、监控服务器CPU/内存/磁盘负载、检测中继线路状态、定期清理僵死会话与过期注册信息。

2. 故障速记口诀

注册失败查鉴权、网络、黑名单;呼叫不通看状态码,404路由、486占线、488编码;无声单通查RTP、NAT、端口;杂音断续查网络、QoS、固件。

相关推荐
fpcc2 小时前
Linux 7.1介绍
linux·运维
蝶恋舞者2 小时前
Wireshark 抓包工具
网络·测试工具·wireshark
三8442 小时前
磁盘管理/fdisk
linux·运维·服务器
2601_954706492 小时前
云虚拟化移动端架构深度解析:API 自动化集群管控实战与商用选型方案
运维·架构·自动化
Helen_cai2 小时前
OpenHarmony 路由封装 RouterUtil 页面跳转统一管理(API Version23+)
运维·服务器·nginx·华为·harmonyos
春卷同学3 小时前
HarmonyOS掌上记账APP开发实践第18篇:编译时优化与 ArkTS 语法限制 — 提升应用性能的编码规范
linux·运维·ubuntu
江南风月3 小时前
WGCLOUD支持创建子账号吗
运维·zabbix·运维开发·prometheus
Dovis(誓平步青云)3 小时前
《 AI直连数据库落地实践:基于MCP协议打通开发工具与数据库全链路运维分析》
大数据·linux·运维·数据库·人工智能·架构
subin993 小时前
圣阳蓄电池企业口碑优势与核心运营策略FAQ解析
大数据·运维·人工智能·电源·ups