Ensure proxy arp and ndp is configure for flat provider networks

If there are flat and vlan provider networks configured on the
same ovs provider bridge, the arp/ndp proxy were not being
configured for the bridge, therefore breaking the connectivity
to the VMs on the flat network. This patch ensures it is always
configured

Closes-Bug: #2045401
Change-Id: I9e4cbe6861b6f83c90d664424a4eb905fe49e4a7
This commit is contained in:
Luis Tomas Bolivar 2023-12-01 10:41:19 +01:00
parent b79b13b9ba
commit 546a8bef21
2 changed files with 5 additions and 5 deletions

View File

@ -182,8 +182,8 @@ class TestLinuxNet(test_base.TestCase):
calls = [mock.call(ipv4, 'fake-bridge'), calls = [mock.call(ipv4, 'fake-bridge'),
mock.call(ipv6, 'fake-bridge')] mock.call(ipv6, 'fake-bridge')]
mock_add_ip_to_dev.assert_has_calls(calls) mock_add_ip_to_dev.assert_has_calls(calls)
mock_ndp.assert_not_called() mock_ndp.assert_called_once_with('fake-bridge')
mock_arp.assert_not_called() mock_arp.assert_called_once_with('fake-bridge')
def test_ensure_routing_table_for_bridge(self): def test_ensure_routing_table_for_bridge(self):
# TODO(lucasagomes): This method is massive and complex, perhaps # TODO(lucasagomes): This method is massive and complex, perhaps

View File

@ -154,7 +154,7 @@ def ensure_arp_ndp_enabled_for_bridge(bridge, offset, vlan_tag=None):
"Exception: %s", bridge, e) "Exception: %s", bridge, e)
raise raise
if not vlan_tag: # also enable the arp/ndp on the bridge in case there are flat networks
enable_proxy_arp(bridge) enable_proxy_arp(bridge)
enable_proxy_ndp(bridge) enable_proxy_ndp(bridge)