FortiGateのパケットキャプチャ(sniffer trace)は、ネットワークトラブルの原因調査やパケットフローの確認などに非常に有効な手段です。
ここでは、FortiGateのCLI(Command Line Interface)を用いたパケットキャプチャの基本から、応用的な使い方、結果の保存と分析までを詳しく解説します。
diagnose sniffer packet <interface> '<filter>' <verbosity> <count> <time>
各パラメータの説明
| パラメータ | 説明 |
|---|---|
<interface> |
パケットをキャプチャするインターフェース名(例: port1, wan1, any など) |
<filter> |
BPF(Berkeley Packet Filter)形式のフィルタ(例: host 192.168.1.1 and port 80) |
<verbosity> |
表示の詳細レベル(下記参照) |
<count> |
キャプチャするパケット数(例: 100。無制限にする場合は 0) |
<time>(省略可) |
タイムスタンプ表示(1で有効、0で無効) |
verbosity(表示レベル)の違い| レベル | 内容 |
|---|---|
1 |
パケットの概要(簡易的な情報のみ) |
2 |
ヘッダー情報を含む詳細 |
3 |
ペイロード(実データ)も含む最も詳細な表示 |
diagnose sniffer packet any 'port 80' 3 50
port3)
diagnose sniffer packet port3 'src host 192.168.10.1' 2 100
diagnose sniffer packet any 'port 53' 1 0
実行中のスニファーを停止するには、キーボードの Ctrl + C を押してください(SSHなどCLI上で)。
.pcap ファイルとして保存する方法(GUIまたはCLI).pcap 形式でダウンロードし、Wiresharkなどで解析可能diag sniffer packet は不可)FortiGateのCLIコマンド diagnose sniffer packet はそのままでは .pcap 保存できません。
保存したい場合は以下のようにします。
方法:diag debug flow の代わりに packet-capture コマンド使用
config system packet-capture
edit cap1
set interface port3
set filter 'host 192.168.1.1'
set number-of-packets 100
set file-size 10
set action start
next
end
実行後にGUIからダウンロードできます(System > Packet Capture または Debug > Packet Capture から)。
GUIまたはTFTPで取得した.pcapファイルはWiresharkで読み込むことで、詳細なTCPセッション、フロー、TLSハンドシェイクなどを視覚的に分析できます。
FortiGateはローカルにファイルを保存できないため、TFTPで外部に送信することが可能です。
execute packet-capture export tftp <tftpサーバのIP> <ファイル名>
例
execute packet-capture export tftp 192.168.1.10 capture1.pcap
any インターフェース: すべてのインターフェースでキャプチャでき便利。ただし、どこから来たのかを正確に判別するには in/out の向きやMACアドレスも見る必要あり。config vdom → edit <vdom名> してからキャプチャコマンドを入力| 方法 | メリット | 使用シーン |
|---|---|---|
diag sniffer packet |
リアルタイム、柔軟なフィルタ | 緊急時の解析やSSH上での確認 |
| GUIのPacket Capture | 簡単操作、.pcapダウンロード可能 |
GUI管理時や非技術者向け |
system packet-capture |
.pcap取得可能、細かく設定できる |
詳細分析を要するトラブル調査 |
以上、FortiGateのパケットキャプチャの取得方法についてでした。
最後までお読みいただき、ありがとうございました。