aboutsummaryrefslogtreecommitdiffstats
path: root/os_net_config/impl_ifcfg.py
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-10-08 15:49:19 +0000
committerGerrit Code Review <review@openstack.org>2015-10-08 15:49:19 +0000
commit95a8412bd9a80ce1e15363ae6c1a51db9432f9d7 (patch)
tree2a2a54558ac16f7295081cdf216fdb709a4e9792 /os_net_config/impl_ifcfg.py
parent2497f596be89f3f6cfb1431fba68a0a599879e40 (diff)
parent0b130b6b3b4a9e0768e99b1496d2852f2ca47bb7 (diff)
Merge "Support multiple addresses assignment with ifcfg"
Diffstat (limited to 'os_net_config/impl_ifcfg.py')
-rw-r--r--os_net_config/impl_ifcfg.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/os_net_config/impl_ifcfg.py b/os_net_config/impl_ifcfg.py
index 81a1df4..20bbe30 100644
--- a/os_net_config/impl_ifcfg.py
+++ b/os_net_config/impl_ifcfg.py
@@ -136,19 +136,24 @@ class IfcfgNetConfig(os_net_config.NetConfig):
if base_opt.use_dhcpv6:
data += "DHCPV6C=yes\n"
elif base_opt.addresses:
- #TODO(dprince): Do we want to support multiple addresses?
v4_addresses = base_opt.v4_addresses()
if v4_addresses:
- first_v4 = v4_addresses[0]
data += "BOOTPROTO=static\n"
- data += "IPADDR=%s\n" % first_v4.ip
- data += "NETMASK=%s\n" % first_v4.netmask
+ for i, address in enumerate(v4_addresses):
+ num = '%s' % i if i else ''
+ data += "IPADDR%s=%s\n" % (num, address.ip)
+ data += "NETMASK%s=%s\n" % (num, address.netmask)
v6_addresses = base_opt.v6_addresses()
if v6_addresses:
first_v6 = v6_addresses[0]
data += "IPV6_AUTOCONF=no\n"
- data += "IPV6ADDR=%s\n" % first_v6.ip
+ data += "IPV6ADDR=%s\n" % first_v6.ip_netmask
+ if len(v6_addresses) > 1:
+ secondaries_v6 = " ".join(map(lambda a: a.ip_netmask,
+ v6_addresses[1:]))
+ data += "IPV6ADDR_SECONDARIES=\"%s\"\n" % secondaries_v6
+
if base_opt.hwaddr:
data += "HWADDR=%s\n" % base_opt.hwaddr
if ovs_extra: