EN
注册

验证端口镜像功能

  1. 配置VF。

    具体操作请参考配置内核态SR-IOV

  2. 启动OVS,配置组网。
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    systemctl start openvswitch
    ovs-vsctl add-br br-ovs
    ovs-vsctl add-port br-ovs enp1s0f0_0
    ovs-vsctl add-port br-ovs enp1s0f0_1
    ovs-vsctl add-port br-ovs enp1s0f0_2
    ovs-vsctl add-port br-ovs enp1s0f0_3
    ovs-vsctl add-port br-ovs enp1s0f0_4
    ovs-vsctl add-port br-ovs enp1s0f0_5
    ovs-vsctl add-port br-ovs enp1s0f0_6
    ovs-vsctl add-port br-ovs enp1s0f0_7
    ovs-vsctl add-port br-ovs enp1s0f0
    ip link set dev enp1s0f0 up
    ip link set dev enp1s0f0_0 up
    ip link set dev enp1s0f0_1 up
    ip link set dev enp1s0f0_2 up
    ip link set dev enp1s0f0_3 up
    ip link set dev enp1s0f0_4 up
    ip link set dev enp1s0f0_5 up
    ip link set dev enp1s0f0_6 up
    ip link set dev enp1s0f0_7 up
    
  3. 启动虚拟机。
    • Host1执行:
      virsh start vm1
    • Host2执行:
      virsh start vm1
      virsh start vm4
  4. 配置OVS SPAN(Switched Port Analyzer)端口镜像。
    1
    ovs-vsctl -- --id=@p get port enp1s0f0_3 -- --id=@q get port enp1s0f0_0 -- --id=@m create mirror name=m0 select_src_port=@q select_dst_port=@q output-port=@p -- set bridge br-ovs mirrors=@m
    

    本条命令是在br-ovs上设置端口镜像,将enp1s0f0_0端口的出入流量镜像到enp1s0f0_3端口上。

    • -- --id=@p get port enp1s0f0_3:给端口enp1s0f0_3取别名。
    • -- --id=@m create mirror name=m0:创建端口镜像。
    • select_src_port=@q select_dst_port=@q output-port=@p:设置端口镜像的规则,其中select_src_port指定进入该端口的流量将被镜像,select_dst_port指定从该端口出去的流量将被镜像,output-port指定被镜像的流量输出到指定端口。
    • -- set bridge br-ovs mirrors=@m:指定网桥的端口镜像规则。
  5. 进入虚拟机。
    Host2执行:
    virsh console vm4
  6. 在镜像端口捕获数据包,使用Host1给Host2的vm1(对应enp1s0f0_0)发包,在Host2 vm4(对应enp1s0f0_3)捕获数据包。

    在Host2 vm4执行:

    1
    tcpdump -i enp1s0
    
  7. 虚拟机发包,查看捕获数据包情况。
    • Host2 vm1执行:
      1
      iperf3 -s
      
    • Host1 vm1执行:
      1
      iperf3 -c <Host2vm1_ip> -t 0
      

    捕获数据包情况:

  8. “Ctrl+]”切出虚拟机,查看卸载流表。
    1
    watch -n 1 -d ovs-appctl dpctl/dump-flows type=offloaded
    

    卸载情况:

  9. 清理端口镜像。
    1
    ovs-vsctl clear bridge br-ovs mirrors
    
  10. 配置OVS RSPAN(Remote Switched Port Analyzer)端口镜像。
    1
    2
    ovs-vsctl set bridge br-ovs flood_vlans=111
    ovs-vsctl -- --id=@q get port enp1s0f0_0 -- --id=@m create mirror name=m0 select_src_port=@q select_dst_port=@q output_vlan=111 -- set bridge br-ovs mirrors=@m
    
  11. 重复58,查看捕获数据包情况及卸载情况。

    捕获数据包改成在Host2 vm4执行:

    1
    tcpdump -i enp1s0 -ne
    

    捕获数据包情况:

    卸载情况:

验证结果

SPAN模式的端口镜像支持捕获数据包和流表卸载,其他模式的端口镜像只支持捕获数据包。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词