Adds a flag for DHCP agent configuration
to add dhcp-broadcast flag to Dnsmasq process
In order to support virtual network on top of Infiniband
Fabric, there is a requirement to receive DHCP response
via broadcast message (according to IB Spec).
DocImpact
Change-Id: I95329e535bacf14b650a8f37179ecd020b5bfafe
Closes-Bug: #
1293953
# Location to DHCP lease relay UNIX domain socket
# dhcp_lease_relay_socket = $state_path/dhcp/lease_relay
+# Use broadcast in DHCP replies
+# dhcp_broadcast_reply = False
+
# Location of Metadata Proxy UNIX domain socket
# metadata_proxy_socket = $state_path/metadata_proxy
'dnsmasq_lease_max',
default=(2 ** 24),
help=_('Limit number of leases to prevent a denial-of-service.')),
+ cfg.BoolOpt('dhcp_broadcast_reply', default=False,
+ help=_("Use broadcast in DHCP replies")),
]
IPV4 = 4
if self.conf.dhcp_domain:
cmd.append('--domain=%s' % self.conf.dhcp_domain)
+ if self.conf.dhcp_broadcast_reply:
+ cmd.append('--dhcp-broadcast')
+
ip_wrapper = ip_lib.IPWrapper(self.root_helper,
self.network.namespace)
ip_wrapper.netns.execute(cmd, addl_env=env)
network=FakeV4Network(),
max_leases=256)
+ def test_spawn_cfg_broadcast(self):
+ self.conf.set_override('dhcp_broadcast_reply', True)
+ self._test_spawn(['--conf-file=', '--domain=openstacklocal',
+ '--dhcp-broadcast'])
+
def test_output_opts_file(self):
fake_v6 = '2001:0200:feed:7ac0::1'
expected = (