■pcap2sippでsippシナリオxmlを作成するメモ
SIPのテストのため、実際の通信をパケットキャプチャして、そこからsippシナリオのxmlファイルを作成するためのメモ。使用するツールはpcap2sipp。同名のperl scriptも存在するようだが、ここではLinux上でmakeするタイプのものを利用した。
■pcap2sippのインストール
先にsourceforge.netからpcap2sipp.tar.gzをダウンロードしておく。
[code]# yum install libpcap libpcap-devel tcpdump
# tar zxvf pcap2sipp.tar.gz
# cd pcap2sipp
# make all[/code]
■pcap2sippの使い方
事前に通信のキャプチャファイルを用意しておく。(ex: call.pcap)
最初に通信しているIPをリストする
[code]# ./pcap2sipp -o listips -f call.pcap
******************* Available IP addresses **********************
10.0.2.10
192.168.0.10
******************************************************************[/code]
次に使用されているcallIDをリストする
[code]# ./pcap2sipp -o listcallids -f call.pcap
********************** Available Call IDs ************************
8Mv2R1rB.mcu7tO21ZFCMDjjvE7DJx8V
YfqoDfWpaiWxS1Zi0rep3EfStwl3AkX2
-we1v2OCObQGp-S.2pcQMIVsPs8a5k2P
qODuwM0uFomvET.j3xbEjqCVTnl4VCDf
******************************************************************[/code]
192,168.0.10をローカル側、10.0.2.10を相手側として、
CallID qODuwM0uFomvET.j3xbEjqCVTnl4VCDf を対象に
xmlを作成してみる
[code]# ./pcap2sipp -o simulate -f call,pcap -c qODuwM0uFomvET.j3xbEjqCVTnl4VCDf -i 192.168.0.10 -a 10.0.2.10 -b 192.168.0.10
********************** Generating simulation files *************************
The RTP file was generated. Path: /tmp/rtp.pcap
All necessary data was succesfully generated. You can now run sipp with command:
rm -f /tmp/*.log; ./sipp -sf /tmp/sipp_scenario.xml -inf /tmp/sipp_injection.csv -i 192.168.0.10 -p 5060 10.0.2.10:5060 -m 1 -trace_msg -d 3000[/code]
これで実際にテスト可能なデータが/tmpに作成される。