コンテンツにスキップ

パケット解析のTips

5GC のシグナリングを Wireshark で解析するときに「知っていると早い」実践的なコツをまとめます。各手続きの詳細な流れは本編の該当章を、プロトコルの定義は辞典を参照してください。

プロトコル別 Display Filter 早見

まず全体像を掴むための、代表的なフィルタです。

目的 Display Filter
NGAP(N2, gNB⇔AMF) ngap
NAS-5GS(N1, UE⇔AMF/SMF、NGAP内に内包) nas-5gs
PFCP(N4, SMF⇔UPF) pfcp
GTP-U(N3/N9, ユーザプレーン) gtp
SBI(HTTP/2, NF間) http2

NASはNGAPの中に入っている

N1 の NAS メッセージは単独では流れず、N2 の NGAP メッセージに内包されて運ばれます。Wireshark では ngap で捕まえたパケットを展開すると中に nas-5gs が見えます。nas-5gs フィルタはこの内包分も拾います。

トランスポートを手掛かりにする

どのインターフェースのパケットか迷ったら、トランスポート層が手掛かりになります。

インターフェース トランスポート 目安ポート
N2(NGAP) SCTP 38412
N4(PFCP) UDP 8805
N3/N9(GTP-U) UDP 2152
SBI(HTTP/2) TCP + TLS 実装依存(NRF解決)

ポート番号は目安

標準で定義された値(PFCP=8805, GTP-U=2152, NGAP SCTP=38412 など)と、実装・構成で変わるもの(SBI の待受ポート等)があります。SBI はポート固定を前提にせず、サービスディスカバリ(NRF)で解決される点に注意してください。

着目すると切り分けが早いフィールド

  • NGAP: Procedure Code(どの手続きか)、RAN UE NGAP ID / AMF UE NGAP ID(UE の対応付け)
  • NAS-5GS: Message Type(Registration Request / Service Request 等)、5GMM cause / 5GSM cause(失敗理由)
  • PFCP: Message Type(Session Establishment/Modification/Deletion)、SEID、PDR/FAR/QER/URR の各ルール
  • HTTP/2 (SBI): :path(どのサービス API か)、:status(応答コード)、:method

よくある見落とし

  • 暗号化区間: AS/NAS のセキュリティが有効化された後のメッセージは暗号化され、中身が見えません。SMC 前後で見え方が変わります。
  • フラグメント/再組立: SCTP や TCP で分割されたメッセージは、Wireshark の再組立設定によって見え方が変わります。
  • 1トランザクション=複数インターフェース: 1つの手続き(例: PDU Session 確立)は N1/N2/N4 にまたがります。片方だけ見て「足りない」と誤解しないよう、関係する全インターフェースのキャプチャを揃えると確実です。

関連