下载trex
chmod 777 /tmp //TRex运行的目录需要有777的权限
cd /tmp
wget --no-cache http://trex-tgn.cisco.com/trex/release/latest
解压:tar -xzvf latest
安装dpdk驱动
TRex依赖于dpdk,本文是在有vpp的环境下操作。
修改配置文件
cp cfg/simple_cfg.yaml /etc/trex_cfg.yaml
vi /etc/trex_cfg.yaml
网卡pci可通过lspci查看
或者下载:apt install lshw
执行:lshw -class network -businfo
更直观看出网卡pci
interfaces :{“0d:00.0”,”0e:00.0”} //指定发包和收包的接口(发包器的接口)
- dest_mac : "00:0b:ab:f6:3c:c2" //发包和收包的接口mac地址(发包器的地址)
src_mac : "00:0b:ab:f6:3c:c3"
- dest_mac : "00:0b:ab:f6:3c:c3"
src_mac : "00:0b:ab:f6:3c:c2"
开启Trex
./t-rex-64 -i
注:开启Trex的设备,需要有一个网卡可以和PC通信(用于客户端连接)
下载trex客户端
https://github.com/cisco-system-traffic-generator/trex-stateless-gui/releases
连接开启Trex的虚拟机:
配置yaml文件
可以选择多少字节的发包:
也可以点击高级模式修改报文类型
右击端口选择Acquire可以对端口配置,添加yaml文件。
测试二层转发
被测设备需要把转发的两个网卡放在同一个网桥里面。
vppctl set int l2 bridge GigabitEthernet0/14/1 13 0
vppctl set int l2 bridge GigabitEthernet0/14/2 13 0
开启发包
点击右上角可以看到收发包情况
测试三层转发
拓扑:发包设备eth1(10.100)->被测设备eth1(10.1)->被测设备eth2(40.1)->发包设备eth2(40.100)
发包设备trex配置如下:
被测设备配置ip
开启发包测试即可。