RTP: Capturing Ideas
ngrep
ngrepはtcpdumpのように動作するコマンドで、各種プロトコルの通信をモニタリングしてキーワードに該当するデータだけを表示するといったことができる。
- タイムスタンプを付加したファイルで保存する
- 600秒のみでキャプチャを停止する
- NICを指定する・あるいはしない
- SIP(port 5060 or 5061)をキャプチャする
NIC=
FILTER=
FILENAME=/var/tmp/$(hostname)_sipdump_$(date +%Y%m%d_%H%M).pcap
timeout 600 ngrep -qtWbyline -d ${NIC:-any} -O ${FILENAME} "${FILTER:-.}" "port 5060||5061"
RTP header だけをキャプチャする:
NIC=
FILTER=
FILENAME=/var/tmp/$(hostname)_RTPdump_$(date +%Y%m%d_%H%M).pcap
tcpdump -s 68 -i ${NIC:-any} -W 1000 -C 10 -w "${FILENAME}" "(port 5060) or (udp[1] & 1 != 1 && udp[3] & 1 != 1 && udp[8] & 0x80 == 0x80 && length < 250)" &
options:
-W
RTP stream 全体をキャプチャする:
tcpdump
- port 22 を除外する
NIC=
FILENAME=/var/tmp/$(hostname)_alldump_$(date +%Y%m%d_%H%M).pcap
tcpdump -nvi ${NIC:-any} -w ${FILENAME} "not port 22"