From 45ff96e29669c5650873b0a7ddcf52160eddd27c Mon Sep 17 00:00:00 2001 From: Trey Morris Date: Wed, 27 Jul 2011 17:58:13 -0500 Subject: fixed create_networks ipv6 management --- nova/network/manager.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/nova/network/manager.py b/nova/network/manager.py index 34b26d728..37f8ea25d 100644 --- a/nova/network/manager.py +++ b/nova/network/manager.py @@ -614,6 +614,11 @@ class NetworkManager(manager.SchedulerDependentManager): bridge_interface, dns1=None, dns2=None, **kwargs): """Create networks based on parameters.""" fixed_net = netaddr.IPNetwork(cidr) + if FLAGS.use_ipv6: + fixed_net_v6 = netaddr.IPNetwork(cidr_v6) + significant_bits_v6 = 64 + network_size_v6 = 1 << 64 + for index in range(num_networks): start = index * network_size significant_bits = 32 - int(math.log(network_size, 2)) @@ -636,14 +641,12 @@ class NetworkManager(manager.SchedulerDependentManager): net['label'] = label if FLAGS.use_ipv6: - project_net_v6 = netaddr.IPNetwork(cidr_v6) - significant_bits_v6 = 64 - network_size_v6 = 1 << 64 - start_v6 = index * network_size_v6 - cidr_v6 = '%s/%s' % (project_net_v6[start_v6], + cidr_v6 = '%s/%s' % (fixed_net_v6[start_v6], significant_bits_v6) net['cidr_v6'] = cidr_v6 + project_net_v6 = netaddr.IPNetwork(cidr_v6) + if gateway_v6: # use a pre-defined gateway if one is provided net['gateway_v6'] = str(gateway_v6) -- cgit