Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
The FDP team is no longer accepting new bugs in Bugzilla. Please report your issues under FDP project in Jira. Thanks.

Bug 1890856

Summary: fail to ping host on another chassis when set addresses as dynamic if encap-type is vxlan
Product: Red Hat Enterprise Linux Fast Datapath Reporter: Jianlin Shi <jishi>
Component: ovn2.13Assignee: OVN Team <ovnteam>
Status: CLOSED WONTFIX QA Contact: Jianlin Shi <jishi>
Severity: unspecified Docs Contact:
Priority: low    
Version: FDP 20.HCC: ctrautma, jishi, mmichels, ralongi
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-02-14 21:11:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jianlin Shi 2020-10-23 05:46:59 UTC
Description of problem:
fail to ping host on another chassis when set addresses as dynamic if encap-type is vxlan

Version-Release number of selected component (if applicable):
ovn2.13-20.09.0-4.el8fdp.x86_64

How reproducible:
Always

Steps to Reproduce:
1. set encap-type as vxlan and start ovn-northd
2. start ovn-controller on two chassis
3. add ls, and set address for logical switch port as dynamic
4. ping from one host to another host on another chassis

Actual results:
fail to ping

Expected results:
ping succeed

Additional info:


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:20.0.30.25:6642 external_ids:ovn-encap-type=vxlan external_ids:ovn-encap-ip=20.0.30.25
systemctl restart ovn-controller
sleep 2             
                                                                          
ip netns add server0                                                      
ip link add veth0_s0 type veth peer name veth0_s0_p
ip link set veth0_s0 netns server0   
ip netns exec server0 ip link set lo up              
ip netns exec server0 ip link set veth0_s0 up        
#ip netns exec server0 ip link set veth0_s0 address $mac_veth2_hv1
ip netns exec server0 ip addr add 172.16.2.1/24 dev veth0_s0
ip netns exec server0 ip addr add 2000::1/64 dev veth0_s0
ip netns exec server0 ip route add default via 172.16.2.254 dev veth0_s0
ip netns exec server0 ip -6 route add default via 2000::a dev veth0_s0

ovs-vsctl add-port br-int veth0_s0_p                                 
ip link set veth0_s0_p up                                                                           
ovs-vsctl set interface veth0_s0_p external_ids:iface-id=ls2p1                     
                                                                                        
ovn-nbctl ls-add ls1                                                                          
ovn-nbctl set logical_switch ls1 other_config:mac_only=true                                                                                                                                                
#ovn-nbctl set logical_switch ls1 other_config:subnet=192.168.1.1/24 other_config:ipv6_prefix=1e2d::                                                                                                       
ovn-nbctl lsp-add ls1 ls1p1                                                                                                                                                                                
#ovn-nbctl lsp-set-addresses ls1p1 "$mac_veth2_hv0 2001::1 172.16.1.1 3001::1 172.16.11.1"                                                                                                                 
ovn-nbctl lsp-set-addresses ls1p1 dynamic                                                                                                                                                                  
                                                                                     
ovn-nbctl ls-add ls2                                                      
ovn-nbctl set logical_switch ls2 other_config:mac_only=true                                                                                                                                                
ovn-nbctl lsp-add ls2 ls2p1
#ovn-nbctl lsp-set-addresses ls2p1 "$mac_veth2_hv1 2000::1 172.16.2.1 3002::1 172.16.12.1"
ovn-nbctl lsp-set-addresses ls2p1 dynamic                                              
                                                                                           
ovn-nbctl lr-add lr1                                                                       
ovn-nbctl lrp-add lr1 lr1-ls1 00:de:ad:ff:01:01 172.16.1.254/24 2001::a/64
ovn-nbctl lrp-add lr1 lr1-ls2 00:de:ad:ff:01:02 172.16.2.254/24 2000::a/64                                                                                                                                 
ovn-nbctl lsp-add ls1 ls1-lr1                                
ovn-nbctl lsp-set-type ls1-lr1 router
ovn-nbctl lsp-set-addresses ls1-lr1 00:de:ad:ff:01:01
ovn-nbctl lsp-set-options ls1-lr1 router-port=lr1-ls1

ovn-nbctl lsp-add ls2 ls2-lr1
ovn-nbctl lsp-set-type ls2-lr1 router
ovn-nbctl lsp-set-addresses ls2-lr1 00:de:ad:ff:01:02
ovn-nbctl lsp-set-options ls2-lr1 router-port=lr1-ls2

ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns add client0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip link add veth0_c0 type veth peer name veth0_c0_p"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip link set veth0_c0 netns client0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip link set lo up"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip link set veth0_c0 up"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip addr add 172.16.1.1/24 dev veth0_c0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip route add default via 172.16.1.254 dev veth0_c0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip addr add 2001::1/64 dev veth0_c0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip route add default via 2001::a dev veth0_c0"
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ovs-vsctl add-port br-int veth0_c0_p"               
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip link set veth0_c0_p up"          
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ovs-vsctl set interface veth0_c0_p external_ids:iface-id=ls1p1"
                                                                                              
nb_global_uuid=$(ovn-nbctl list nb_global | grep _uuid | awk '{print $3}')                                         
mac_prefix=$(ovn-nbctl get nb_global $nb_global_uuid options:mac_prefix | sed 's/"//g')                      
ls1p1_mac=$(ovn-nbctl list logical_switch_port ls1p1 | grep -E -o "$mac_prefix:[0-9a-z:]*")                              
ls2p1_mac=$(ovn-nbctl list logical_switch_port ls2p1 | grep -E -o "$mac_prefix:[0-9a-z:]*")               
                                                                                                                    
ssh -q dell-per740-42.rhts.eng.pek2.redhat.com "ip netns exec client0 ip link set veth0_c0 address $ls1p1_mac"
ip netns exec server0 ip link set veth0_s0 address $ls2p1_mac

client:

systemctl start openvswitch
ovs-vsctl set open . external_ids:system-id=hv0 external_ids:ovn-remote=tcp:20.0.30.25:6642 external_ids:ovn-encap-type=vxlan external_ids:ovn-encap-ip=20.0.30.26
                                                                                                      
systemctl start ovn-controller

[root@dell-per740-12 test]# ip netns exec server0 ping 172.16.1.1 -c 1                                
PING 172.16.1.1 (172.16.1.1) 56(84) bytes of data.                                                    

--- 172.16.1.1 ping statistics ---                                                                    
1 packets transmitted, 0 received, 100% packet loss, time 0ms                                         

[root@dell-per740-12 test]# ovn-sbctl list mac_binding                                                
_uuid               : d75cffc4-e4b0-4c12-9c42-6084edf4b9b6
datapath            : 496f093c-5426-4218-adbd-399a1c20c1bf
ip                  : "::"
logical_port        : lr1-ls1
mac                 : "00:00:00:00:00:00"

_uuid               : 872012cd-48f9-43d8-a292-eaef91b5f01b
datapath            : 496f093c-5426-4218-adbd-399a1c20c1bf
ip                  : "::"
logical_port        : lr1-ls2
mac                 : "00:00:00:00:00:00"

_uuid               : bfaf0a93-8236-4cb3-b78d-8f4126393b3f
datapath            : 496f093c-5426-4218-adbd-399a1c20c1bf
ip                  : "172.16.2.1"
logical_port        : lr1-ls2
mac                 : "9e:dd:6d:00:00:02"

client0 doesn't receive arp request from ovn, then mac_binding for 172.16.1.1 is not created.

[root@dell-per740-42 test]# rpm -qa | grep -E "openvswitch|ovn"
openvswitch2.13-2.13.0-61.el8fdp.x86_64
kernel-kernel-networking-openvswitch-ovn-add_setting-1.0-5.noarch                                     
kernel-kernel-networking-openvswitch-ovn-common-1.0-13.noarch
ovn2.13-20.09.0-4.el8fdp.x86_64
kernel-kernel-networking-openvswitch-ovn-soak_test-1.0-5.noarch                                       
openvswitch-selinux-extra-policy-1.0-23.el8fdp.noarch                                                 
ovn2.13-central-20.09.0-4.el8fdp.x86_64
ovn2.13-host-20.09.0-4.el8fdp.x86_64
python3-openvswitch2.13-2.13.0-61.el8fdp.x86_64

if encap-type is geneve, it works well

Comment 1 OVN Bot 2024-02-14 21:11:33 UTC
This issue is being closed as an automatic process due to the issue's age. If you wish to re-open this issue, please do so in Jira (https://issues.redhat.com) in the 'FDP' project. Please be sure to set the component to the latest OVN version where this issue is known to occur. If this is a feature request or improvement, please set the component to 'OVN'.