vpp命令总结_gdb调试命令总结

vpp命令总结_gdb调试命令总结createsubBondEthernet0834创建子接口,tag是834setinterfaceiptableBondEthernet0.8341将此接口设置在fib1里setinterfaceipaddressBondEthernet0.834192.168.0.250/24设置接口ipsetinterfaces

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

接口操作

vat对应命令

备注
create sub BondEthernet0 834 创建子接口,tag是834
set interface ip table BondEthernet0.834 1 将此接口设置在fib 1里
set interface ip address BondEthernet0.834 192.168.0.250/24 设置接口ip(ipv4和ipv6)
set interface ip address del BondEthernet0.834 192.168.0.250/24 删除接口地址
set interface ip address del eth0 all 删除接口所有地址
set interface state  BondEthernet0.834 up  up接口
set interface l2 bridge BondEthernet0.834 834 将此接口设置到bridge 834里
create vhost socket /tmp/sock2.sock server 创建vhost接口
create host-interface name vpp5a

创建veth口,name后参数名字必须和linux里创建的veth口名字对应(先系统命令创建veth口)

set interface handoff <interface-name> workers <workers-list> [symmetrical|asymmetrical]  
show hardware-interfaces 查看接口mac
show int  查看接口信息
show interfaces address 查看接口地址
pipe create [instance <instance>] 添加pipe接口,这是vpp自带类似于veth的接口,连接互通vrf,instance为数字,最大支持16384,eg:pipe create instance 100,生成pipe100,pipe100.0,pipe100.1,这三个都需要up,将pipe100.0分配到一个vrf,pipe100.1分配到另一个vrf,
pipe delete <interface> 删除pipe接口

ip6 nd <interface> …

配置接口ipv6 邻居发现 参数,路由通告似乎也用这配置

show ip6 interface

查看ipv6 接口

ip6 nd host-vethb_1 ra-suppress 

ip6 nd host-vethb_1 ra-suppress  no

关闭接口ra发送 

打开接口ra发送

bond接口

现在版本的vppbond口只能通过命令(或者api)创建,不支持配置文件
create bond mode lacp load-balance l34 创建bond接口
delete bond BondEthernet0 删除bond接口
bond add BondEthernet0 TenGigabitEthernet3d/0/0 bond口添加slave接口
bond del TenGigabitEthernet3d/0/0 bond口删除slave接口
show bond details 查看bond 详细信息
set interface bond BondEthernet weight  100 设置bond口权重

二层操作

set ip neighbor GigabitEthernet2/6/0 192.168.2.2 00:0c:29:dc:96:f8  设置静态arp
l2fib add  fa:16:3e:b0:a9:71 834  BondEthernet0.834  添加二层转发流表
show l2fib 查看二层转发流表
show ip neighbors 查看arp
show bridge-domain 查看bridge 接口情况

路由表(vrf)操作

ip table [add|del] <table-id> 添加ipv4 vrf(路由表)
 ip6 table [add|del] <table-id> 添加ipv6 vrf(路由表)
ip route add 1.2.3.0/24 via GigabitEthernet2/6/0 添加路由
show ip fib 查看路由表

DPDK参数设置

set dpdk interface descriptors  TenGigabitEthernet6/0/0 tx/rx 1024 设置此接口rx或是tx队列大小,intel人
说2000-4000差距不大
show affinity    
查看主线程cpu亲和性

数据包跟踪设置

trace add dpdk-input 8 跟踪dpdk接口数据包 (dpdk-input是节点的名字,想跟踪任何节点都可以)
trace add vhost-user-input 8 跟踪vhost接口数据包
trace add af-packet-input 8 跟踪veth接口数据包 

vpp操作

show vlib graph  查看node逻辑图
show int GigabitEthernet3c/0/0 features 查看此接口使能了哪些feature
show threads     查看vpp线程
show version    查看vpp版本

ACL操作

获取acl插件版本 acl_plugin_get_version
增加或替换ACL规则 acl_add_replace
删除某ACL acl_del
show acl-plugin acl [index N] 罗列所有ACL列表 acl_dump
从网口的访问控制列表中增减某项 acl_interface_add_del
给指定端口设置输入输出控制方式 acl_interface_set_acl_list
show acl-plugin  interface 显示哪个端口采用哪个访问控制规则 acl_interface_list_dump
增加一条MAC/IP的访问控制列 macip_acl_add
删除一条MAC/IP的访问控制列 macip_acl_del
show acl-plugin macip acl 查看配置的macip acl规则

macip_acl_dump

show acl-plugin macip interface 查看所有接口绑定的macip acl信息 macip_acl_interface_get
从给定端口绑定/解绑MACIP某条访问控制列表 macip_acl_interface_add_del
show acl-plugin tables [ acl [index N] | applied [ lc_index N ] | mask | hash [verbose N] ] 查看acl table 信息
show acl-plugin counters 查看acl 匹配统计 原始代码没有,自己加的
set acl-plugin interace counters [enable|disable] 使能acl 匹配统计 原始代码没有,自己加的

NAT操作

nat44 add address <ip4-range-start> [- <ip4-range-end>] [tenant-vrf <vrf-id>] [twice-nat] [del]

配置某个vrf的snat ip地址池

eg:nat44 add address 211.1.1.216 tenant-vrf 20001

 set interface nat44 in <intfc> out <intfc> [output-feature] [del]

设置snat的in接口和out接口,配置为in的接口的接口会查询in2out key,配置为out的接口会查询out2in key,同时配置为in和out的接口根据classefy决定

set interface nat44 in TenGigabitEthernet3b/0/0.1001
set interface nat44 out TenGigabitEthernet3b/0/0.1001

nat44 add interface address GigabitEthernet2/1/0 将这张网卡设置为地址池
nat44 add address 192.168.101.37 将单个地址设置为地址池
nat44 add static mapping  配置dnat
show nat workers 查看nat 的worker个数,这个可以动态配置
show nat timeouts 查看tcp,udp,icmp 会话超时时间
show nat44 sessions 查看建立的session信息
show nat44 addresses 查看配置的snat地址池
show nat mss-clamping
show nat44 interfaces 查看配置了nat 特性的接口,out,in
show nat44 vrf tables 查看每个vrf nat参数
show nat44 hash tables 查看每个worker 的hash表情况
show nat44 static mappings 查看dnat配置
show nat44 interface address 查看配置成snat地址池的接口

QOS

configure policer name policy1 cir 800 cb 90000 rate kbps round closest type 1r2c conform-action transmit exceed-action drop 配置限速规则(ipv4和这操作类似)
classify table  mask l3 ip6 dst 创建classify table,确定匹配数据包的哪些字段
classify session policer-hit-next policy1 exceed-color table-index 0 match l3 ip6 dst 2008:db8:0:2::1 船舰classify session, 匹配具体字段的值,比如ip, vlan
set policer classify interface host-vetha_1 ip6-table 0 在接口上使能( 上面的table-index 0, ip6-table 0都是执行classify table  mask l3 ip6 dst返回的id)

log

set logging class <class> [rate-limit <int>] [level <level>] [syslog-level <level>]

class 有vfio fib mfib igmp dhcp nat tap等

level 和syslog-level 后面的参数参考备注 eg: err, debug,

默认设置

vlib_log_main_t log_main = {

  .default_log_level = VLIB_LOG_LEVEL_NOTICE,

  .default_syslog_log_level = VLIB_LOG_LEVEL_WARNING,

  .unthrottle_time = 3,

  .size = 512,

  .default_rate_limit = 50,

};

#define foreach_vlib_log_level \

  _(0, EMERG, emerg) \

  _(1, ALERT, alert) \

  _(2, CRIT, crit) \

  _(3, ERR, err) \

  _(4, WARNING, warn) \

  _(5, NOTICE, notice) \

  _(6, INFO, info) \

  _(7, DEBUG, debug) \

  _(8, DISABLED, disabled)

show

 show interface rx-placement 查看work 线程和port  queue对应关系

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/209844.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java设计模式之行为型:状态模式

    Java设计模式之行为型:状态模式

  • PostMan使用教程。

    PostMan使用教程。原地址:https://blog.csdn.net/haibo0668/article/details/83828184 Postman教程——发送第一个请求 Postman教程——创建第一个集合 Postman教程——界面功能导航 Postman教程——设置 Pos…

  • candump命令_生成dump文件命令

    candump命令_生成dump文件命令hexdump以ASCII、十进制、十六进制或八进制显示文件内容。

  • 企业 keepalived 高可用项目实战

    企业 keepalived 高可用项目实战Listitem企业keepalived高可用项目实战1、KeepalivedVRRP介绍keepalived是什么keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。keepalived工作原理keepalived是以VRRP协议为实现基础的,VRRP全称VirtualRouterRedundancyProtocol,即虚拟路由冗余协议。虚拟路由冗余协议,可以认为是实现高可用的协议,即将N台提供相同功能的路由器组成一个..

  • 深度学习基础知识整理「建议收藏」

    深度学习基础知识整理「建议收藏」本文是在七月的BAT机器学习面试1000题系列进行修改。 前言  July我又回来了。  之前本博客整理过数千道微软等公司的面试题,侧重数据结构、算法、海量数据处理,详见:微软面试100题系列,今17年,近期和团队整理BAT机器学习面试1000题系列,侧重机器学习、深度学习。我们将通过这个系列索引绝大部分机器学习和深度学习的笔试面试题、知识点,它将更是一个足够庞大的机器学习和深…

  • QT 读取csv文件「建议收藏」

    QT 读取csv文件「建议收藏」最近项目中提出的需求是从excel表格中导入数据,查阅了很多资料之后,发现直接操作xls格式文件并不容易,之后找到了一个比较好的解决办法,那就是把xls文件另存为csv文件,然后在程序中进行操作。首先大致说明一下这两种格式的区别:      xls文件是Excel电子表格的文件格式,而csv是一种比较通用的文件格式,xls文件只能用Excel才能打开,而csv文件可以用Excel、记事本

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号