5.lshw -class network|more 查看qvb设备的驱动是否是veth类型。

wKiom1VPe0jAw3oOAALzIqU8yO8833.jpg

wKioL1VPfLKQpOPUAAMHqtkIynw184.jpg

6.ethtool -S 查看qvb接口的对端peer_ifindex:number。

wKioL1VPfQuRwS-LAACLUereS4c433.jpg

wKiom1VPe6SBfj1MAACGfLki08o392.jpg

7.ip link找到number对应的接口qvoXXX。

wKioL1VPfXCS7vm9AATr2nQjGMI303.jpg

wKiom1VPfAzScMU7AANivQr_nRI849.jpg

qvbXXX和qvoXXX是一对veth设备,成对出现的。可以根据ethtool -S 查看对端的number,并且根据ip link|more查看到对应的veth设备名称。

qvb是quamtum veth bridge.

qvo是quamtum veth open vswitch.

qvoXXX设备连接到了Open vSwitch设备br-int.

8.通过Open vSwitch 中的命令ovs-vsctl port-to-br qvoXXX查看qvoXXX设备所属的bridge。

wKioL1VPfbzhc0iEAACt1PP98Fc710.jpg

这个ovs-vsctl port-to-br qvoXXX是列出所有挂载到qvoXXX的网桥。

9.可以通过ovs-vsctl list-br查看所有的网桥:

wKiom1VPfGbxt25EAAB1lWSV1Lg212.jpg

10.可以通过ovs-vsctl list-ports br-XX查看brXXX上面的端口。

ovs-vsctl list-ports br-int和ovs-vsctl list-port br-ethXXX.              

wKioL1VPfg6yfJeSAAEL1i2Te_o508.jpg

int-br-ethX和phy-br-ethX是用来连接Open Vswitch设备br-int和br-ethX的。另外,VLAN ID的转换是发生在br-int和br-ethX的端口int-br-ethX和phy-br-ethX上面的。从int-br-ethX进来的数据包,其VLAN ID 会被转换为内部VLAN 的ID。同理,从网络出去的数据包,经过phy-br-ethX,VLAN ID会从内部VLAN ID 转化为外部VLAN ID。

11.通过ethtool -S 命令查看int-br-ethX的对端设备number,并且通过ip link |more |grep number查看int-br-ethX的对端设备。

wKiom1VPfNTD8lV_AAFxNtShkkA355.jpg

12.查看phy-br-ethX连接到的虚拟网桥br-ethX.

wKioL1VPfoqB9vcJAABU5DLZ4NI452.jpg

13.看到虚拟网桥br-ethX上的端口:

wKiom1VPfT-zVq8QAAB2spAlX20958.jpg

关于本例子中的br-ethX和物理网口ethX的关系是:最后数据包要到物理网络中,必须依靠真正的物理网卡。所以必须ovs-vsctl add-port br-ethX ethX。

本例子中是ovs-vsctl add-port br-eth2 eth3。这样,整个链路才能完全打通。

这样,我看到从VM的端口到qvoXXX接口的信息及网桥和端口的连接情况,结合tcpdump -i 命令查看网络流量。这种网络的连接架构,能够作为网络故障分析的依据。




相关内容