vpp命令总结

11 篇文章 0 订阅

接口操作

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/0bond口添加slave接口
bond del TenGigabitEthernet3d/0/0bond口删除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 接口情况

set interface l2 tag-rewrite <interface> [disable | pop {1|2} | push {dot1q|dot1ad} <tag> <tag>]

剔除vlan tag 或者加上vlan tag

路由表(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
删除某ACLacl_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对应关系

  • 3
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值