searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

DPVS-VXLAN流量模型及定位方法

2024-06-28 10:02:53
30
0

1.VPC内同宿主机同子网转发定位

2.1 转发模型

2.2 流量路径

vm1 -> tap-xxx -> qvb-xxx -> qvo-xxx -> vm1宿主机物理网卡 -> vm1宿主机bond2.4006 -> DPVS  -> vm2宿主机物理网卡   -> qvo-xxx -> qvb-xxx -> tap-xxx -> vm2

2.3 抓包点及命令

重要抓包点:物理口 qvo接口 tag接口

抓包命令:sudo  tcpdump -nne -i enss33 "((udp[42:4]=$(printf "0x%02x%02x%02x%02x" 192 168 0 195) and udp[46:4]=$(printf "0x%02x%02x%02x%02x" 192 168 0 27)))"

IP填写为虚拟机源/目的IP

qvo和tag口查询方法:

在控制节点通过虚机ID查询到port ID

再通过qvo-xxx口和tag-xxx口去抓包

2.4抓包分析

bond口抓不到包:DPVS设备未转发过来流量,排查DPVS VIP规则和流表状态

ipvsadm -ln 查看规则表

ipvsadm -lnc 查看流表

重点看RS对应的宿主机IP和VNI配置是否正确

 

qvo口抓不到包:宿主机未配置到DPVS机器的隧道

宿主机没有使能到DPVS设备的VTEP

neutron evtep-create --evtep-ip {vxlan_ip}

这个命令是宿主机新建一条到外源机器的vxlan隧道连接

 

tag口抓不到包:安全组配置问题拦截了流量

2.VPC内跨宿主机跨子网转发定位

2.1 转发模型

 

跨子网转发多了qrouter流程,vm流量先到qrouter上,再转到dpvs

跨子网转发不通先ping qrouter网关IP,如192.168.0.1,不通看看qrouter是否存在,不存在联系网络组排查

 2.2 流量路径

vm1 -> tap-xxx -> qvb-xxx -> qvo-xxx -> qrouter-xxx -> vm1宿主机物理网卡 -> vm1宿主机bond2.4006 -> DPVS  -> vm2宿主机物理网卡   -> qvo-xxx -> qvb-xxx -> tap-xxx -> vm2

 

2.3 抓包点及命令

bond,tag,qvo口抓包同上

qrouter抓包

进入虚拟对应的qrouter命令行,qrouter id可通过管理台前端看到路由标识

sudo ip netns exec qrouter-XXX  bash

在qrouter的ns里抓包虚拟接口

tcpdump -i qr-xxx -ennvv

在qrouter里查询静态ARP,是否配置有到VIP的静态ARP

无静态ARP需加上,否则跨子网转发不通

 

0条评论
0 / 1000
欧****鹏
8文章数
0粉丝数
欧****鹏
8 文章 | 0 粉丝
欧****鹏
8文章数
0粉丝数
欧****鹏
8 文章 | 0 粉丝
原创

DPVS-VXLAN流量模型及定位方法

2024-06-28 10:02:53
30
0

1.VPC内同宿主机同子网转发定位

2.1 转发模型

2.2 流量路径

vm1 -> tap-xxx -> qvb-xxx -> qvo-xxx -> vm1宿主机物理网卡 -> vm1宿主机bond2.4006 -> DPVS  -> vm2宿主机物理网卡   -> qvo-xxx -> qvb-xxx -> tap-xxx -> vm2

2.3 抓包点及命令

重要抓包点:物理口 qvo接口 tag接口

抓包命令:sudo  tcpdump -nne -i enss33 "((udp[42:4]=$(printf "0x%02x%02x%02x%02x" 192 168 0 195) and udp[46:4]=$(printf "0x%02x%02x%02x%02x" 192 168 0 27)))"

IP填写为虚拟机源/目的IP

qvo和tag口查询方法:

在控制节点通过虚机ID查询到port ID

再通过qvo-xxx口和tag-xxx口去抓包

2.4抓包分析

bond口抓不到包:DPVS设备未转发过来流量,排查DPVS VIP规则和流表状态

ipvsadm -ln 查看规则表

ipvsadm -lnc 查看流表

重点看RS对应的宿主机IP和VNI配置是否正确

 

qvo口抓不到包:宿主机未配置到DPVS机器的隧道

宿主机没有使能到DPVS设备的VTEP

neutron evtep-create --evtep-ip {vxlan_ip}

这个命令是宿主机新建一条到外源机器的vxlan隧道连接

 

tag口抓不到包:安全组配置问题拦截了流量

2.VPC内跨宿主机跨子网转发定位

2.1 转发模型

 

跨子网转发多了qrouter流程,vm流量先到qrouter上,再转到dpvs

跨子网转发不通先ping qrouter网关IP,如192.168.0.1,不通看看qrouter是否存在,不存在联系网络组排查

 2.2 流量路径

vm1 -> tap-xxx -> qvb-xxx -> qvo-xxx -> qrouter-xxx -> vm1宿主机物理网卡 -> vm1宿主机bond2.4006 -> DPVS  -> vm2宿主机物理网卡   -> qvo-xxx -> qvb-xxx -> tap-xxx -> vm2

 

2.3 抓包点及命令

bond,tag,qvo口抓包同上

qrouter抓包

进入虚拟对应的qrouter命令行,qrouter id可通过管理台前端看到路由标识

sudo ip netns exec qrouter-XXX  bash

在qrouter的ns里抓包虚拟接口

tcpdump -i qr-xxx -ennvv

在qrouter里查询静态ARP,是否配置有到VIP的静态ARP

无静态ARP需加上,否则跨子网转发不通

 

文章来自个人专栏
DPVS
8 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0