summaryrefslogtreecommitdiff
path: root/roles/vm/network/templates/interfaces.j2
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2019-10-06 22:33:31 +0200
committerChristian Pointner <equinox@spreadspace.org>2019-10-06 22:33:31 +0200
commitd3e6cce667930b6a9e9ce9296622f43bec5bf267 (patch)
tree050807adaec05f3f5ccf372e6e1a6ffd5bbdc7e4 /roles/vm/network/templates/interfaces.j2
parentadded support for public address mappings in vm host network (diff)
vm/network: add support for public
Diffstat (limited to 'roles/vm/network/templates/interfaces.j2')
-rw-r--r--roles/vm/network/templates/interfaces.j211
1 files changed, 9 insertions, 2 deletions
diff --git a/roles/vm/network/templates/interfaces.j2 b/roles/vm/network/templates/interfaces.j2
index d59d53e1..aa94440e 100644
--- a/roles/vm/network/templates/interfaces.j2
+++ b/roles/vm/network/templates/interfaces.j2
@@ -10,11 +10,18 @@ iface lo inet loopback
# The primary network interface
auto {{ network.primary.interface }}
iface {{ network.primary.interface }} inet static
+ pre-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/accept_ra
+ pre-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/autoconf
address {{ network.primary.ip }}
netmask {{ network.primary.mask }}
+{% if 'public' in network.primary %}
+ up /bin/ip addr add dev $IFACE {{ network.primary.public }}/32
+ up /bin/ip route add default via {{ network.primary.gateway }} src {{ network.primary.public }}
+ down /bin/ip route del default via {{ network.primary.gateway }} src {{ network.primary.public }}
+ down /bin/ip addr del dev $IFACE {{ network.primary.public }}/32
+{% else %}
gateway {{ network.primary.gateway }}
- pre-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/accept_ra
- pre-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/autoconf
+{% endif %}
{% if 'prefix6' in network.primary %}
iface {{ network.primary.interface }} inet6 static