Bug 1896898

Summary: ovs-configuration.service fails when multiple IPv6 default routes are provided via RAs over the same interface and deployment bootstrap fails
Product: OpenShift Container Platform Reporter: Marius Cornea <mcornea>
Component: NetworkingAssignee: Dan Winship <danw>
Networking sub component: ovn-kubernetes QA Contact: Anurag saxena <anusaxen>
Status: CLOSED ERRATA Docs Contact:
Severity: urgent    
Priority: urgent CC: achernet, aconstan, anbhat
Version: 4.6Keywords: TestBlocker
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-24 15:32:36 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:
Bug Depends On:    
Bug Blocks: 1897336, 1898567    

Description Marius Cornea 2020-11-11 19:29:42 UTC
Description of problem:
	
ovs-configuration.service when multiple IPv6 default routes are provided via RAs

During deployment on one of the master nodes we get multiple IPv6 default routes over the same interface:

ip -6 r show default
default proto ra metric 101 
	nexthop via fe80::200:5eff:fe00:201 dev eno6 weight 1 
	nexthop via fe80::2e21:3101:b5e3:8f00 dev eno6 weight 1 
	nexthop via fe80::d207:ca01:b521:2700 dev eno6 weight 1 pref medium

Trying to run manually the /usr/local/bin/configure-ovs.sh script we can see that it cannot find the default route as it's assuming only one:

/usr/local/bin/configure-ovs.sh OVNKubernetes
+ rpm -qa
+ grep -q openvswitch
+ touch /var/run/ovs-config-executed
+ '[' OVNKubernetes == OVNKubernetes ']'
+ NM_CONN_PATH=/etc/NetworkManager/system-connections
+ iface=
+ counter=0
+ '[' 0 -lt 12 ']'
++ ip route show default
++ awk '{if ($4 == "dev") print $5; exit}'
+ iface=
+ [[ -n '' ]]
++ ip -6 route show default
++ awk '{if ($4 == "dev") print $5; exit}'
+ iface=
+ [[ -n '' ]]
+ counter=1
+ echo 'No default route found on attempt: 1'
No default route found on attempt: 1
+ sleep 5


Version-Release number of selected component (if applicable):
quay.io/openshift-release-dev/ocp-release:4.6.3-x86_64

How reproducible:
100%

Steps to Reproduce:

1. Deploy baremetal environment via IPI flow with IPv6 control plane. The nodes should receive multiple IPv6 default routes via RAs

Actual results:

ovs-configuration.service assumes a single IPv6 default route

Expected results:

ovs-configuration.service should handle multiple IPv6 default routes over the same interface


Additional info:

Comment 5 errata-xmlrpc 2021-02-24 15:32:36 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: OpenShift Container Platform 4.7.0 security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2020:5633