Uploaded image for project: 'Fast Datapath Product'
  1. Fast Datapath Product
  2. FDP-960

ipv6 traffic for FIP would still go through tunnel

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Normal Normal
    • None
    • None
    • ovn23.09
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • rhel-sst-network-fastdatapath
    • ssg_networking
    • Moderate

      Description:

      ipv6 traffic for FIP would still go through tunnel

      Version:

      ovn23.09-23.09.6-6.el9fdp.x86_64

      Steps:

      1 server:
      systemctl start openvswitch                          
      systemctl start ovn-northd
      ovn-nbctl set-connection ptcp:6641
      ovn-sbctl set-connection ptcp:6642
      ovs-vsctl set open . external_ids:system-id=hv1 external_ids:ovn-remote=tcp:1.1.86.25:6642 external_ids:ovn-encap-type=geneve external_ids:ovn-encap-ip=1.1.86.25
      systemctl restart ovn-controllerovs-vsctl add-br br-ext                                                          
      ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=phynet:br-ext      
      ovs-vsctl add-port br-ext ens1f1np1
      ip link set ens1f1np1  upovn-nbctl lr-add lr1
      ovn-nbctl lrp-add lr1 lr1-ls1 00:00:01:ff:02:03 192.168.1.254/24 1111::a/64      
      ovn-nbctl ls-add ls1                                                             
      ovn-nbctl lsp-add ls1 ls1p1
      ovn-nbctl lsp-set-addresses ls1p1 "00:00:01:01:01:01 192.168.1.1 1111::1"
      ovn-nbctl lsp-add ls1 ls1p2
      ovn-nbctl lsp-set-addresses ls1p2 "00:00:01:01:01:02 192.168.1.12 1111::2"
      ovn-nbctl lsp-add ls1 ls1-lr1
      ovn-nbctl lsp-set-type ls1-lr1 router
      ovn-nbctl lsp-set-options ls1-lr1 router-port=lr1-ls1
      ovn-nbctl lsp-set-addresses ls1-lr1 router
      ovn-nbctl ls-add ls2
      ovn-nbctl lsp-add ls2 ls2p1
      ovn-nbctl lsp-set-addresses ls2p1 "00:00:01:01:02:01 192.168.2.1 1112::1"
      ovn-nbctl lsp-add ls2 ls2p2
      ovn-nbctl lsp-set-addresses ls2p2 "00:00:01:01:02:02 192.168.2.2 1112::2"
      ovn-nbctl lrp-add lr1 lr1-ls2 00:00:01:ff:22:03 192.168.2.254/24 1112::a/64
      ovn-nbctl lsp-add ls2 ls2-lr1
      ovn-nbctl lsp-set-type ls2-lr1 router
      ovn-nbctl lsp-set-options ls2-lr1 router-port=lr1-ls2
      ovn-nbctl lsp-set-addresses ls2-lr1 router
      ovn-nbctl ls-add pub                                                  
      ovn-nbctl lrp-add lr1 lr1-pub 00:00:01:ff:01:03 172.16.1.254/24 172:16::a/64
      ovn-nbctl lrp-set-gateway-chassis lr1-pub hv1
      ovn-nbctl lsp-add pub pub-lr1                                                    
      ovn-nbctl lsp-set-type pub-lr1 router                                            
      ovn-nbctl lsp-set-addresses pub-lr1 router                                       
      ovn-nbctl lsp-set-options pub-lr1 router-port=lr1-pub                            
      ovn-nbctl lsp-add pub pub-ln
      ovn-nbctl lsp-set-type pub-ln localnet                                           
      ovn-nbctl lsp-set-addresses pub-ln unknown                                       
      ovn-nbctl lsp-set-options pub-ln network_name=phynet                             
      ovn-nbctl lsp-add ls1 ls1-ln                                                     
      ovn-nbctl lsp-set-type ls1-ln localnet                                           
      ovn-nbctl lsp-set-addresses ls1-ln unknown
      ovn-nbctl lsp-set-options ls1-ln network_name=phynet                             
      ovn-nbctl lsp-add ls2 ls2-ln
      ovn-nbctl lsp-set-type ls2-ln localnet                                           
      ovn-nbctl lsp-set-addresses ls2-ln unknown
      ovn-nbctl lsp-set-options ls2-ln network_name=phynet
      ovn-nbctl set logical_switch_port ls2-ln tag_request=50
      #ovn-nbctl lr-nat-add lr1 dnat_and_snat 172.16.1.21 192.168.2.1 ls2p1 00:00:0f:01:02:01
      #ovn-nbctl lr-nat-add lr1 dnat_and_snat 172.16.1.22 192.168.2.2 ls2p2 00:00:0f:01:02:02                                                                                    
      ovn-nbctl lr-nat-add lr1 dnat_and_snat 172:16::21 1112::1 ls2p1 00:00:0f:01:02:01
      ovn-nbctl lr-nat-add lr1 dnat_and_snat 172:16::22 1112::2 ls2p2 00:00:0f:01:02:02
      ovs-vsctl add-port br-int ls1p1 -- set interface ls1p1 type=internal external_ids:iface-id=ls1p1ip netns add ls1p1
      ip link set ls1p1 netns ls1p1
      ip netns exec ls1p1 ip link set ls1p1 address 00:00:01:01:01:01
      ip netns exec ls1p1 ip link set ls1p1 up
      ip netns exec ls1p1 ip addr add 192.168.1.1/24 dev ls1p1
      ip netns exec ls1p1 ip route add default via 192.168.1.254
      ip netns exec ls1p1 ip addr add 1111::1/64 dev ls1p1
      ip netns exec ls1p1 ip -6 route add default via 1111::a
      ovs-vsctl add-port br-int ls2p1 -- set interface ls2p1 type=internal external_ids:iface-id=ls2p1
      ip netns add ls2p1
      ip link set ls2p1 netns ls2p1
      ip netns exec ls2p1 ip link set ls2p1 address 00:00:01:01:02:01
      ip netns exec ls2p1 ip link set ls2p1 up
      ip netns exec ls2p1 ip addr add 192.168.2.1/24 dev ls2p1
      ip netns exec ls2p1 ip route add default via 192.168.2.254
      ip netns exec ls2p1 ip addr add 1112::1/64 dev ls2p1
      ip netns exec ls2p1 ip -6 route add default via 1112::a
      ovs-vsctl add-port br-ext ext1 -- set interface ext1 type=internal
      ip netns add ext1
      ip link set ext1 netns ext1
      ip netns exec ext1 ip link set lo up
      ip netns exec ext1 ip link set ext1 up
      ip netns exec ext1 ip addr add 172.16.1.11/24 dev ext1
      ip netns exec ext1 ip addr add 172:16::11/64 dev ext1
      
      2. client:
      systemctl start openvswitch                          
      ovs-vsctl set open . external_ids:system-id=hv0 external_ids:ovn-remote=tcp:1.1.86.25:6642 external_ids:ovn-encap-type=geneve external_ids:ovn-encap-ip=1.1.86.26
      systemctl restart ovn-controllerovs-vsctl add-br br-ext
      ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=phynet:br-ext
      ovs-vsctl add-port br-ext ens1f1np1
      ip link set ens1f1np1 up
      ip link set br-ext upovs-vsctl add-port br-int ls2p2 -- set interface ls2p2 type=internal external_ids:iface-id=ls2p2
      ip netns add ls2p2
      ip link set ls2p2 netns ls2p2
      ip netns exec ls2p2 ip link set ls2p2 address 00:00:01:01:02:02
      ip netns exec ls2p2 ip link set ls2p2 up
      ip netns exec ls2p2 ip addr add 192.168.2.2/24 dev ls2p2
      ip netns exec ls2p2 ip route add default via 192.168.2.254
      ip netns exec ls2p2 ip addr add 1112::2/64 dev ls2p2
      ip netns exec ls2p2 ip -6 route add default via 1112::a
      ovs-vsctl add-port br-int ls1p2 -- set interface ls1p2 type=internal external_ids:iface-id=ls1p2
      ip netns add ls1p2
      ip link set ls1p2 netns ls1p2
      ip netns exec ls1p2 ip link set ls1p2 address 00:00:01:01:01:02
      ip netns exec ls1p2 ip link set ls1p2 up
      ip netns exec ls1p2 ip addr add 192.168.1.2/24 dev ls1p2
      ip netns exec ls1p2 ip route add default via 192.168.1.254
      ip netns exec ls1p2 ip addr add 1111::2/64 dev ls1p2
      ip netns exec ls1p2 ip -6 route add default via 1111::a
      ovs-vsctl add-port br-ext ext2 -- set interface ext2 type=internal
      ip netns add ext2
      ip link set ext2 netns ext2
      ip netns exec ext2 ip link set lo up
      ip netns exec ext2 ip link set ext2 up
      ip netns exec ext2 ip addr add 172.16.1.12/24 dev ext2
      ip netns exec ext2 ip addr add 172:16::12/64 dev ext2
      
      3. capture packet on genev_sys_6081 on server
      4. ping6 FIP on ext1
      ip netns exec ext1 ping6 172:16::22 -c 5

      Actual result:

      icmp6 can be captured on genev_sys_6081

      Expected result:

      icmp6 can't be captured on genev_sys_6081, all packets should go through br-ext

      Other Info

      [root@wsfd-advnetlab18 ovn]# tcpdump  -i genev_sys_6081 -nnle -v
      dropped privs to tcpdump
      tcpdump: listening on genev_sys_6081, link-type EN10MB (Ethernet), snapshot length 262144 bytes
      03:53:12.929936 00:00:01:ff:01:03 > 00:00:0f:01:02:02, ethertype IPv6 (0x86dd), length 118: (flowlabel 0x785a5, hlim 63, next-header ICMPv6 (58) payload length: 64) 172:16::11 > 172:16::22: [icmp6 sum ok] ICMP6, echo request, id 490, seq 1
      
       [root@wsfd-advnetlab18 ovn]# ovn-nbctl lr-nat-list lr1                                   
      TYPE             GATEWAY_PORT          EXTERNAL_IP        EXTERNAL_PORT    LOGICAL_IP          EXTERNAL_MAC         LOGICAL_PORT
      dnat_and_snat                          172:16::21                          1112::1             00:00:0f:01:02:01    ls2p1
      dnat_and_snat                          172:16::22                          1112::2             00:00:0f:01:02:02    ls2p2
      
      [root@wsfd-advnetlab18 test]# rpm -qa | grep -E "openvswitch3.3|ovn23.09"
      openvswitch3.3-3.3.0-58.el9fdp.x86_64
      python3-openvswitch3.3-3.3.0-58.el9fdp.x86_64
      openvswitch3.3-ipsec-3.3.0-58.el9fdp.x86_64
      ovn23.09-23.09.6-6.el9fdp.x86_64
      ovn23.09-central-23.09.6-6.el9fdp.x86_64
      ovn23.09-host-23.09.6-6.el9fdp.x86_64

      the issue also exist on 24.G, ovn23.09-23.09.4-33.el9fdp.x86_64

              ovnteam@redhat.com OVN Team
              rhn-support-jishi Jianlin Shi
              Jianlin Shi Jianlin Shi
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: