Centos7 中tcpreplay安装使用

一、tcpreplay安装

yum -y install tcpreplay

查看安装是否成功:

tcpreplay -V

安装成功显示如下版本信息

 

 

二、使用

(1)快速使用

tcpreplay -i eth0 p.pcap

 (2)高级使用

查看本机网卡

tcpreplay --listnics

  

将 p.pcap 文件进行 tcpprep 操作,制作 cache 文件

tcpprep -an client -i p.pcap -o p.cache –v

 执行发包语句参数说明:

tcpreplay -i eno2 -p 1000 -l 100000000 56to300010w.pcap

  

-i:所使用的网卡,如网卡为ens33或者eth0,那么改为正确的网卡名称
1000:每秒钟向接收机发送的eps速率
1000000000:最大发送的eps数量
56to300010w.pcap:用于tcpreplay回放syslog的.pcap文件

 

3)使用tcprewrite修改.pcap文件的相关参数

tcprewrite --srcipmap=0.0.0.0/0:10.0.0.101/24 --dstipmap=0.0.0.0/0:10.41.48.131/32 --enet-dmac=00:50:56:81:a9:fb  --infile=57_163.pcap --outfile=test.pcap -C

  

1.Srcipmap:模拟发送的设备IP、ip后缀/24为子网掩码,可填/24/32
/24为模拟同网络下多个ip回放报文,/32为单个ip回放报文。具体可视情况修改调试。

2.Dstipmap:回放报文的目标IP Enet-dmac: 目标mac,可在目标服务器使用ipconfig或者ip addr查看

3.Infile:打开的.pcap文件名 Outfile: 输出的.pcap文件名

(3)常用命令实例:

 

tcpreplay -i eth0 -p 1000 -l 100000000 --limit=200000 test.pcap

  解释:使用eth0网口以每秒1000EPS的速率,向test.pcap文件中改写的 目标IP进行持续发包,限制最大发包数100000000,当发送包数达到200000 时,直接停止发送(–limit的作用)。

tcpreplay -i eth0 -p 5000 -l 100000000 --duration=10 test.pcap

  解释:使用eth0网口以每秒5000EPS的速率,向test.pcap文件中改写的 目标IP进行持续发包,限制最大包数100000000,当发包时间达到10秒时 (–duration), 停止发送。

nohup tcpreplay -i eth0 -p 5000 -l 100000000 test.pcap &

 

  解释:语句中的Nohup+&代表该命令会在后台开启一个线程来运行,若要停 止发送,执行ps -ef |grep tcpreplay ,kill -9 进程PID。

 

 

 参考文档:https://blog.csdn.net/weixin_45191386/article/details/123556035

 

posted @ 2022-05-11 11:01  RoyFans  阅读(1146)  评论(0编辑  收藏  举报