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 2037507

Summary: Updating router's peer port does not take effect until OVN controller is recomputed
Product: Red Hat Enterprise Linux Fast Datapath Reporter: Ehsan Elahi <eelahi>
Component: OVNAssignee: OVN Team <ovnteam>
Status: CLOSED DUPLICATE QA Contact: Ehsan Elahi <eelahi>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: FDP 21.ICC: ctrautma, dceara, jiji
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: 2022-01-06 10:49:14 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 Ehsan Elahi 2022-01-05 18:48:21 UTC
# Testing router peer port
# Changing router's peer port does not take effect until OVN controller is recomputed  

systemctl start ovn-northd
ovn-nbctl set-connection ptcp:6641
ovn-sbctl set-connection ptcp:6642
systemctl start openvswitch
ovs-vsctl set open . external_ids:system-id=hv1
ovs-vsctl set open . external_ids:ovn-remote=tcp:42.42.42.1:6642
ovs-vsctl set open . external_ids:ovn-encap-type=geneve
ovs-vsctl set open . external_ids:ovn-encap-ip=42.42.42.1
systemctl start ovn-controller

#### TOPO ####
#lr1------lr2
#|         |
#|         |
#|         |
#ls1      ls2
#|         |
#|         |
#|         |
#vm1      vm2

ovn-nbctl lr-add lr1
ovn-nbctl lr-add lr2

ovn-nbctl lrp-add lr1 lr1-lr2 00:00:00:00:01:02 172.16.0.1/24 peer=lr2-lr1
ovn-nbctl lrp-add lr2 lr2-lr1 00:00:00:00:02:01 172.16.0.2/24 peer=lr1-lr2

ovn-nbctl lrp-add lr1 lr1-ls1 00:00:00:00:01:01 172.16.1.1/24
ovn-nbctl lrp-add lr2 lr2-ls2 00:00:00:00:02:02 172.16.2.1/24

ovn-nbctl ls-add ls1
ovn-nbctl ls-add ls2

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 lsp-add ls2 ls2-lr2
ovn-nbctl lsp-set-type ls2-lr2 router
ovn-nbctl lsp-set-options ls2-lr2 router-port=lr2-ls2
ovn-nbctl lsp-set-addresses ls2-lr2 router

ovn-nbctl lsp-add ls1 ls1p1 
ovn-nbctl lsp-set-addresses ls1p1 00:00:00:01:00:01
ovn-nbctl lsp-add ls1 ls1p2 
ovn-nbctl lsp-set-addresses ls1p2 00:00:00:01:00:02
ovn-nbctl lsp-add ls2 ls2p1
ovn-nbctl lsp-set-addresses ls2p1 00:00:00:02:00:01

ip netns add vm1
ip link add veth0_v1 type veth peer name veth0_v1_p
ip link set veth0_v1 netns vm1
ip netns exec vm1 ip link set lo up
ip netns exec vm1 ip link set veth0_v1 up
ip netns exec vm1 ip link set veth0_v1 address 00:00:00:01:00:01
ip netns exec vm1 ip addr add 172.16.1.2/24 dev veth0_v1
#ip netns exec vm1 ip -6 addr add 3001::1/64 dev veth0_v1
ip netns exec vm1 ip route add default via 172.16.1.1 dev veth0_v1
#ip netns exec vm1 ip -6 route add default via 3001::a dev veth0_v1
ovs-vsctl add-port br-int veth0_v1_p
ip link set veth0_v1_p up
ovs-vsctl set interface veth0_v1_p external_ids:iface-id=ls1p1

ip netns add vm2
ip link add veth0_v2 type veth peer name veth0_v2_p
ip link set veth0_v2 netns vm2
ip netns exec vm2 ip link set lo up
ip netns exec vm2 ip link set veth0_v2 up
ip netns exec vm2 ip link set veth0_v2 address 00:00:00:02:00:01
ip netns exec vm2 ip addr add 172.16.2.2/24 dev veth0_v2
#ip netns exec vm2 ip -6 addr add 3001::1/64 dev veth0_v2
ip netns exec vm2 ip route add default via 172.16.2.1 dev veth0_v2
#ip netns exec vm2 ip -6 route add default via 3001::a dev veth0_v2
ovs-vsctl add-port br-int veth0_v2_p
ip link set veth0_v2_p up
ovs-vsctl set interface veth0_v2_p external_ids:iface-id=ls2p1

ovn-nbctl lr-route-add  lr1 172.16.2.0/24 172.16.0.2
ovn-nbctl lr-route-add  lr2 172.16.1.0/24 172.16.0.1

[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr1-lr2
_uuid               : 2677ebda-2e1e-412a-8f43-2dd84adc7d9b
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:01:02"
name                : lr1-lr2
networks            : ["172.16.0.1/24"]
options             : {}
peer                : lr2-lr1
[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr2-lr1
_uuid               : bd1df1f5-eb62-4a08-8806-c31b824100bd
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:02:01"
name                : lr2-lr1
networks            : ["172.16.0.2/24"]
options             : {}
peer                : lr1-lr2


[root@dell-per740-81 ~]# ip netns exec vm1 ping 172.16.2.2 -c 3
PING 172.16.2.2 (172.16.2.2) 56(84) bytes of data.
64 bytes from 172.16.2.2: icmp_seq=1 ttl=62 time=0.584 ms
64 bytes from 172.16.2.2: icmp_seq=2 ttl=62 time=0.048 ms
64 bytes from 172.16.2.2: icmp_seq=3 ttl=62 time=0.043 ms

--- 172.16.2.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2058ms
rtt min/avg/max/mdev = 0.043/0.225/0.584/0.253 ms

[root@dell-per740-81 ~]# ovn-nbctl set logical-router-port lr1-lr2 peer=[]
[root@dell-per740-81 ~]# ovn-nbctl set logical-router-port lr2-lr1 peer=[]

[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr1-lr2
_uuid               : 2677ebda-2e1e-412a-8f43-2dd84adc7d9b
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:01:02"
name                : lr1-lr2
networks            : ["172.16.0.1/24"]
options             : {}
peer                : []
[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr2-lr1
_uuid               : bd1df1f5-eb62-4a08-8806-c31b824100bd
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:02:01"
name                : lr2-lr1
networks            : ["172.16.0.2/24"]
options             : {}
peer                : []

[root@dell-per740-81 ~]# ip netns exec vm1 ping 172.16.2.2 -c 3
PING 172.16.2.2 (172.16.2.2) 56(84) bytes of data.


--- 172.16.2.2 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2055ms

[root@dell-per740-81 ~]# ovn-nbctl set logical-router-port lr2-lr1 peer=lr1-lr2
[root@dell-per740-81 ~]# ovn-nbctl set logical-router-port lr1-lr2 peer=lr2-lr1
[root@dell-per740-81 ~]# ip netns exec vm1 ping 172.16.2.2 -c 3
PING 172.16.2.2 (172.16.2.2) 56(84) bytes of data.

--- 172.16.2.2 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2049ms

[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr1-lr2
_uuid               : 2677ebda-2e1e-412a-8f43-2dd84adc7d9b
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:01:02"
name                : lr1-lr2
networks            : ["172.16.0.1/24"]
options             : {}
peer                : lr2-lr1
[root@dell-per740-81 ~]# ovn-nbctl list logical-router-port lr2-lr1
_uuid               : bd1df1f5-eb62-4a08-8806-c31b824100bd
enabled             : []
external_ids        : {}
gateway_chassis     : []
ha_chassis_group    : []
ipv6_prefix         : []
ipv6_ra_configs     : {}
mac                 : "00:00:00:00:02:01"
name                : lr2-lr1
networks            : ["172.16.0.2/24"]
options             : {}
peer                : lr1-lr2


[root@dell-per740-81 ~]# ovn-appctl -t ovn-controller recompute
[root@dell-per740-81 ~]# ip netns exec vm1 ping 172.16.2.2 -c 3
PING 172.16.2.2 (172.16.2.2) 56(84) bytes of data.
64 bytes from 172.16.2.2: icmp_seq=1 ttl=62 time=0.516 ms
64 bytes from 172.16.2.2: icmp_seq=2 ttl=62 time=0.047 ms
64 bytes from 172.16.2.2: icmp_seq=3 ttl=62 time=0.018 ms

--- 172.16.2.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2068ms
rtt min/avg/max/mdev = 0.018/0.193/0.516/0.228 ms


[root@dell-per740-81 ~]# rpm -qa |grep -E 'ovn|openvswitch'
openvswitch2.15-2.15.0-53.el8fdp.x86_64
ovn-2021-central-21.09.1-23.el8fdp.x86_64
openvswitch-selinux-extra-policy-1.0-28.el8fdp.noarch
ovn-2021-host-21.09.1-23.el8fdp.x86_64
ovn-2021-21.09.1-23.el8fdp.x86_64

Comment 1 Dumitru Ceara 2022-01-06 10:49:14 UTC
This is already fixed in ovn-2021-central-21.09.1-24 via bug 2025623, thanks!

*** This bug has been marked as a duplicate of bug 2025623 ***