WiresharkをGUIモードで実行するとPC環境によっては動作が遅くなることがある。少しでも省エネでパケットキャプチャをするための取り組みとしてdumpcapを使うのも妙案かと思い、バッチスクリプトを書いた。
wiresharkがインストールされているフォルダ : C:\Program Files\Wireshark
キャプチャしたパケットを出力するフォルダ : D:\tmp
WIRESHARKをインストールすると、通常はdumpcap.exeも一緒にインストールされる。
バッチスクリプトの中身
@echo off
chcp 932
set WiresharkPath=C^:^\Program^ Files^\Wireshark\
set OutPath=D^:^\tmp^\
for /f "tokens=1,2,3 delims=/ " %%a in ('date /t') do set today=%%a%%b%%c
for /f "tokens=1,2,3 delims=: " %%a in ('time /t') do set current_time=%%a%%b%%c
cd /d %WiresharkPath%
echo キャプチャするインターフェースをIDで指定してください。
echo キャプチャを停止する場合は、Ctrl + C です。
echo:
dumpcap -D
echo:
set /p INP="インターフェースID>"
dumpcap -i %INP% -w %OutPath%%today%%current_time%.pcap
pause
exit
上記バッチスクリプト実行すると、PC上の、どのネットワークアダプタでキャプチャするか問われるので、希望するネットワークアダプタの番号を入力してEnterキーを押す。適当なタイミングでCtrl+Cすればキャプチャを終了できる。