Merge "add arp_responder flag to linuxbridge agent" into stable/liberty

changes/80/299280/2
Jenkins 7 years ago committed by Gerrit Code Review
commit 6fefdfd65f

@ -40,6 +40,11 @@
# iproute2 supports unicast flooding - requires 3.11 kernel and iproute2 3.10)
# l2_population = False
# (BoolOpt) Flag to disable local ARP responder which provides local responses
# instead of performing ARP broadcast into the overlay. Enabling local ARP
# responder is not fully compatible with the allowed-address-pairs extension.
# arp_responder = True
[agent]
# Agent's polling interval in seconds
# polling_interval = 2

@ -41,6 +41,12 @@ vxlan_opts = [
help=_("Extension to use alongside ml2 plugin's l2population "
"mechanism driver. It enables the plugin to populate "
"VXLAN forwarding table.")),
cfg.BoolOpt('arp_responder', default=True,
help=_("Enable local ARP responder which provides local "
"responses instead of performing ARP broadcast into "
"the overlay. Enabling local ARP responder is not fully"
"compatible with the allowed-address-pairs extension.")
),
]
bridge_opts = [

@ -325,7 +325,7 @@ class LinuxBridgeManager(object):
if cfg.CONF.VXLAN.tos:
args['tos'] = cfg.CONF.VXLAN.tos
if cfg.CONF.VXLAN.l2_population:
args['proxy'] = True
args['proxy'] = cfg.CONF.VXLAN.arp_responder
try:
int_vxlan = self.ip.add_vxlan(interface, segmentation_id,
**args)

@ -804,7 +804,7 @@ class TestLinuxBridgeManager(base.BaseTestCase):
add_vlan_fn.assert_called_with('eth0.1', 'eth0', '1')
dv6_fn.assert_called_once_with()
def test_ensure_vxlan(self):
def test_ensure_vxlan(self, expected_proxy=True):
seg_id = "12345678"
self.lbm.local_int = 'eth0'
self.lbm.vxlan_mode = lconst.VXLAN_MCAST
@ -828,7 +828,11 @@ class TestLinuxBridgeManager(base.BaseTestCase):
add_vxlan_fn.assert_called_with("vxlan-" + seg_id, seg_id,
group="224.0.0.1",
dev=self.lbm.local_int,
proxy=True)
proxy=expected_proxy)
def test_ensure_vxlan_arp_responder_disabled(self):
cfg.CONF.set_override('arp_responder', False, 'VXLAN')
self.test_ensure_vxlan(expected_proxy=False)
def test_update_interface_ip_details(self):
gwdict = dict(gateway='1.1.1.1',

@ -0,0 +1,7 @@
---
fixes:
The Linuxbridge agent now supports the ability to toggle the local ARP
responder when L2Population is enabled. This ensures compatibility with
the allowed-address-pairs extension.
- closes bug 1445089
Loading…
Cancel
Save