Merge "add arp_responder flag to linuxbridge agent" into stable/liberty
This commit is contained in:
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…
Reference in New Issue