因为http2 header压缩技术,tcpdump抓包没有抓到完整的http connection establish过程,而是从中间进行抓取时,很可能抓到的包,wireshark没法解开,因为wireshark不清楚双方http connection建立时协商维护的头压缩表。这种情况下,wireshark普通的字段过滤条件将不能过滤出目标信令,我们可以采用源码过滤条件过滤这种未解码信令。
1.确定你要过滤的消息类型
- 通过信令流程确定你要的哪个流程的,哪条消息
例如我想过滤跨AMF N2 handover的源AMF向目标AMF PUT uecontext的这条消息。
- 参考你正常信令流程(测试阶段保留的完整的信令流程),找出那条是你care的信令
2.确定你要过滤消息类型的关键字段
通过哪个字段过滤目标消息呢?
例如要过滤AMF之间的"HANDOVER_REQUIRED"字段对应的json编码是:22:48:41:4e:44:4f:56:45:52:5f:52:45:51:55:49:52:45:44:22
- 从已有信令里找
1>wireshark里找
冒号编码是22
2>wireshark未解码copy出来找