#!/bin/bash # Configure eth1, the baremetal network. set -e set -o xtrace cat << EOF >> /etc/network/interfaces auto eth1 iface eth1 inet static # This matches the localrc we have configured for demo environments. # It is unroutable and not suitable for production: it is a test network. address 192.0.2.1 netmask 255.255.255.0 # Expose the metadata service needed by the nodes as they boot. up iptables -t nat -A PREROUTING -d 169.254.169.254 -p tcp -m tcp --dport 80 -j REDIRECT --to-port 8775 # Grant access to the rest of the world by routing via the bootstrap node # (libvirt rejects traffic from unknown ip addresses, meaning that using # the default libvirt nat environment requires the MASQUERADE for the bare # metal nodes unless you reconfigure libvirt as well). Alternatively you # can create a second bridge on your machine and attached eth0 to that # (with an appropriate static config (or dhcp on the bridge). up iptables -t nat -A POSTROUTING -s 192.0.2.0/24 -o eth0 -j MASQUERADE # This matches the client range defined in localrc. up ip addr add 192.0.2.33/29 dev eth1 EOF