Add masquerade rule for undercloud

This commit is contained in:
James Slagle 2014-10-08 10:00:54 -04:00
parent badeb15ca5
commit 5ec8532bbf
3 changed files with 28 additions and 1 deletions

1
.gitignore vendored
View File

@ -12,7 +12,6 @@ build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg

View File

@ -0,0 +1,22 @@
# In case this script crashed or was interrupted earlier, flush, unlink and
# delete the temp chain.
iptables -t nat -F BOOTSTACK_MASQ_NEW || true
iptables -t nat -D POSTROUTING -j BOOTSTACK_MASQ_NEW || true
iptables -t nat -X BOOTSTACK_MASQ_NEW || true
iptables -t nat -N BOOTSTACK_MASQ_NEW
# Build the chain we want.
{{#bootstack.masquerade_networks}}
NETWORK={{.}}
# Workaround iptables not permitting two -d parameters in one call.
iptables -t nat -A BOOTSTACK_MASQ_NEW -s $NETWORK -d 192.168.122.1 -j RETURN
iptables -t nat -A BOOTSTACK_MASQ_NEW -s $NETWORK ! -d $NETWORK -j MASQUERADE
{{/bootstack.masquerade_networks}}
# Link it in.
iptables -t nat -I POSTROUTING -j BOOTSTACK_MASQ_NEW
# Delete the old chain if present.
iptables -t nat -F BOOTSTACK_MASQ || true
iptables -t nat -D POSTROUTING -j BOOTSTACK_MASQ || true
iptables -t nat -X BOOTSTACK_MASQ || true
# Rename the new chain into permanence.
iptables -t nat -E BOOTSTACK_MASQ_NEW BOOTSTACK_MASQ

View File

@ -0,0 +1,6 @@
#!/bin/bash
set -eux
RULES_SCRIPT=/var/opt/undercloud-stack/masquerade
. $RULES_SCRIPT