当前位置: 首页 > news >正文

TRex 控制台命令解析

在这里插入图片描述
TRex 是一种高性能的网络测试工具,用于生成和分析网络流量。以下是对这些命令的简要解释:

一、help

Console Commands(控制台命令)

  • capture:管理 PCAP 捕获。
  • debug:用于开发的内部调试器。
  • events:显示事件日志。
  • help:显示帮助屏幕。
  • history:管理命令历史记录。
  • plugins:显示、加载或使用插件。
  • quit:退出控制台。
  • tui:显示图形控制台。
  • verbose:显示或设置详细模式。

Common Commands(常用命令)

  • acquire:获取端口。
  • arp:执行端口的 ARP 解析。
  • clear:清除本地缓存的统计信息。
  • connect:连接到 TRex 服务器并获取端口。
  • disconnect:断开与 TRex 服务器的连接。
  • global_cfg:设置全局配置参数。
  • ipv6:配置端口的 IPv6。
  • l2:将端口配置为 L2 模式。
  • l3:将端口配置为 L3 模式。
  • map:映射端口拓扑。
  • ns:网络命名空间。
  • ping:ping 服务器或特定 IP。
  • pkt:发送 Scapy 格式的数据包。
  • portattr:设置端口属性。
  • release:释放端口。
  • reset:重置端口。
  • scan6:搜索 IPv6 邻居。
  • shutdown:关闭服务器。
  • stats:显示各种统计信息。
  • vlan:为端口配置 VLAN 标签。

Stateless Commands(无状态命令)

  • pause:暂停 TRex 上指定端口的活动流量。
  • profiles:获取服务器上加载的配置文件信息。
  • push:推送一个 PCAP 文件。
  • resume:恢复 TRex 上指定端口的活动流量。
  • service:将端口配置为服务模式。
  • start:在 TRex 上指定端口启动选定的流量。
  • stop:停止 TRex 上指定端口的活动流量。
  • streams:获取服务器上加载的流信息。
  • tpg_clear_stats:清除标记数据包组统计信息。
  • tpg_clear_tx_stats:清除标记数据包组发送统计信息。
  • tpg_clear_unknown_tags:清除标记数据包组未知标签。
  • tpg_disable:禁用标记数据包组。
  • tpg_enable:启用标记数据包组。
  • tpg_show_unknown_tags:显示标记数据包组未知标签。
  • tpg_stats:显示标记数据包组统计信息。
  • tpg_status:显示标记数据包组状态。
  • tpg_tags:显示标记数据包组标签。
  • tpg_tx_stats:显示标记数据包组发送统计信息。
  • tpg_update:更新标记数据包组标签。
  • update:更新当前活动端口的速度。

二、详细命令

2.1 portattr 命令用法

portattr [-h] [-p PORTS [PORTS ...] | -a] [--prom {on,off}] [--link {up,down}] [--led {on,off}] [--fc {none,tx,rx,full}] [--vxlan-fs [VXLAN_FS ...]] [--supp] [--mult {on,off}]
  • -p PORTS [PORTS ...]:指定端口号。
  • -a:对所有端口进行操作。
  • 其他选项用于设置端口属性,例如:
    • --prom {on,off}:设置端口的混杂模式。
    • --link {up,down}:设置端口的链路状态。
    • --led {on,off}:设置端口的 LED 状态。
    • --fc {none,tx,rx,full}:设置端口的流量控制模式。
    • --vxlan-fs [VXLAN_FS ...]:设置 VXLAN 流量空间。
    • --supp:显示端口的补充信息。
    • --mult {on,off}:设置端口的多播模式。

查看端口的详细属性

trex> portattr -p 0 

这将显示端口 0 的当前配置状态,例如混杂模式、链路状态、LED 状态、流量控制等。

启用链路

trex> portattr -p 0 --link down
trex> portattr -p 0 --link up

2.2 查看端口统计信息

trex> stats

这将显示端口的发送和接收统计信息,以及一些基本的配置信息。

2.3 启用或禁用端口的服务模式

启用: 使端口进入服务模式,此时端口可以响应 ARP 请求

l2 为2层模式,需要改变mac,vlan等可以用二层模式转发;
l3 为3层模式,port上的有固定的IP地址,并且指定了网关地址,可以回复ARP;

trex> service -p 0
trex(service: 0)>
trex(service: 0)>l2 -p 0 --dst 00:11:22:33:44:55
trex(service: 0)>
trex(service: 0)> l3 -p 0 --src 192.168.1.100 --dst 192.168.1.1

发送测试流量:
无论端口处于何种模式,都可以发送测试流量以验证端口是否正常工作:
pkt -p 0 -s “Ether(dst=‘<目标MAC地址>’)/IP(dst=‘<目标IP地址>’)/ICMP()”

发送一个 ICMP 数据包

pkt -p 0 -s Ether(dst='00:11:22:33:44:55')/IP(dst='192.168.1.1')/ICMP()

发送更多的 ICMP 数据包

 ping -p 0 -d 192.168.1.1 -n 5   //-n 参数的值设置为所需的数量

发送一个 TCP 数据包

pkt -p 0 -s Ether(dst='00:11:22:33:44:55')/IP(dst='192.168.1.1')/TCP(dport=80)

发送一个 UDP 数据包

pkt -p 0 -s Ether(dst='00:11:22:33:44:55')/IP(dst='192.168.1.1')/UDP(dport=53)

启动流量生成:如果需要生成持续的流量,可以加载流量配置文件并启动流量:
start -f /path/to/your/traffic.yaml
sudo find / -name “trex_cfg.yaml” //查找

禁用: 使端口退出服务模式

trex(service: 0)>service --off -p 0
trex>

2.4 解析 ARP

arp -p <端口号> -r <次数>

trex> 
trex(service: 0)>  arp -p 0 -r  3
trex(service: 0)>  
trex(service: 0)> ping -p 0 -d 192.168.1.1 -n 3   //这将发送 ICMP 请求,触发 ARP 解析。

将发送 ARP 请求并解析对端设备的 MAC 地址

2.6 VLAN 配置

  • 查看 VLAN 配置:使用 vlan -p 0 -c
  • 添加 VLAN 配置:使用 vlan -p 0 --vlan 100
  • 删除 VLAN 配置:使用 vlan -p 0 -c

2.7 重置端口

reset -p 0

在这里插入图片描述

配置文件

  • 检查配置文件:可以查看 TRex 的配置文件(如 trex_cfg.yaml),确认 VLAN 配置是否正确。例如:
    - port_limit     : 2version        : 2interfaces     :- "enp4s0" :dest_mac : "00:11:22:33:44:55"default_gw: "192.168.1.1"ipv4 :- "192.168.1.101/24"vlan :- 100
    

确保 interfaces 中的 PCI 地址(如 0b:00.0 和 13:00.0)与实际网卡 PCI 地址一致。通过以下命令查看网卡的 PCI 地址:

sudo lspci | grep -i ethernet

相关文章:

  • C++:BST、AVL、红黑树
  • 【Android】SettingsPreferenceService
  • 网络协议之为什么要分层
  • Mamba2模型的实现
  • 《系统架构 - Java 企业应用架构中的完整层级划分》
  • 大学之大:韩国科学技术研究院2025.4.28
  • 聊一聊接口自动化测试的稳定性如何保障
  • 探秘Transformer系列之(31)--- Medusa
  • 嵌入式RTOS实战:uC/OS-III最新版移植指南(附项目源码)
  • DAY9-USF4.0技术文档笔记
  • 学习笔记:Qlib 量化投资平台框架 — MAIN COMPONENTS (Part I)
  • PHP经验笔记
  • 【C++教程】三目运算符
  • Vue3中Hooks与普通函数的区别
  • 高效的CMS能帮助你快速建站。
  • 微机控制电液伺服钢轨滚动疲劳试验机
  • 喜马拉雅卖身腾讯音乐:在线音频独立时代的终结
  • shell(3)
  • 软件评测师考点重点知识
  • NdrpPointerUnmarshallInternal函数分析之pStubMsg--pAllocAllNodesContext的由来
  • 河北:开展领导干部任性用权等形式主义官僚主义问题专项整治
  • “五一”假期倒计时,节前错峰出游机票降价四成
  • 十四届全国人大常委会第十五次会议继续审议民营经济促进法草案
  • 今年我国电影票房破250亿领跑全球,“电影+”带动文旅消费热潮
  • “上海-日喀则”直飞航线正式通航,将于5月1日开启首航
  • 江西省国资委原副主任李键主动向组织交代问题,接受审查调查