简单的说,tcpreplay是一种pcap包的重放工具, 它可以将用ethreal, wireshark工具抓下来的包原样或经过任意修改后重放回去. 它允许你对报文做任意的修改(主要是指对2层, 3层, 4层报文头), 指定重放报文的速度等, 这样tcpreplay就可以用来复现抓包的情景以定位bug, 以极快的速度重放从而实现压力测试。
一、安装指南
由于tcpreplay依赖libpcap库,所以安装tcpreplay之前必须先安装libpcap(在windows下为winpcap)否则 ./configure的时候你会得到提示说libpcap库没有安装。
linux下的依赖库libpcap由tcpdump工程组开发, 好像也是个开源工程, 可以用源码安装。
windows(包括cygwin) 下的依赖库winpcap则必须到winpcap的官方网站上去下载。
winpcap是libpcap在windows上的移植,这个貌似不是开源的, 所以你只能得到一个静态库和编程接口"WpdPack_4_1_2.zip",解压缩后可以得到文件夹"WpdPack", 将该文件夹拷贝到cygwin的根目录,即可完成winpcap的安装,
在 "./configure"的时候选上参数--with-libpcap=/wpdpack(我自己试验过,貌似没有这个参数也可以成功, 不过还是建议加上这个参数)
winpcap的安装过程:
unzip WpdPack_4_1_2.zip
cp -r WpdPack/ / (安装tcpreplay的依赖winpcap, 即把WpdPack拷贝到根目录下.)
tcpreplay的安装过程:
./autogen.sh (Subversion checkouts only)
./configure --with-libpcap=/wpdpack
make
make test (Note: