summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@gmail.com>2011-02-04 17:03:37 -0800
committerVishvananda Ishaya <vishvananda@gmail.com>2011-02-04 17:03:37 -0800
commitd86f1af6326d4276e9cbfb3274c211ff3f5629cb (patch)
tree56bd7dbe2b6e2b5eff0cc3f313da9f793fd595fa /nova
parent321f581660aad3fc9da5f88276bfdf11f6960d97 (diff)
downloadnova-d86f1af6326d4276e9cbfb3274c211ff3f5629cb.tar.gz
nova-d86f1af6326d4276e9cbfb3274c211ff3f5629cb.tar.xz
nova-d86f1af6326d4276e9cbfb3274c211ff3f5629cb.zip
allow for bridge to be the public interface
Diffstat (limited to 'nova')
-rw-r--r--nova/network/linux_net.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/nova/network/linux_net.py b/nova/network/linux_net.py
index 3a8bd9435..69389b333 100644
--- a/nova/network/linux_net.py
+++ b/nova/network/linux_net.py
@@ -206,6 +206,11 @@ def ensure_bridge(bridge, interface, net_attrs, set_ip=False):
if(FLAGS.use_ipv6):
_execute("sudo ip -f inet6 addr change %s dev %s" %
(net_attrs['cidr_v6'], bridge))
+ # NOTE(vish): If the public interface is the same as the
+ # bridge, then the bridge has to be in promiscuous
+ # to forward packets properly.
+ if(FLAGS.public_interface == bridge):
+ _execute("sudo ifconfig %s promisc" % bridge)
if interface:
# NOTE(vish): This will break if there is already an ip on the
# interface, so we move any ips to the bridge