2018-08-29 13:45:02 -05:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
usage() {
|
|
|
|
echo "$0 [-h]"
|
|
|
|
echo ""
|
|
|
|
echo "Options:"
|
|
|
|
# echo " -i: StarlingX ISO image"
|
|
|
|
echo ""
|
|
|
|
}
|
|
|
|
|
|
|
|
while getopts "i:" o; do
|
|
|
|
case "${o}" in
|
|
|
|
*)
|
|
|
|
usage
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
shift $((OPTIND-1))
|
|
|
|
|
|
|
|
BRIDGE_INTERFACE=${BRIDGE_INTERFACE:-stxbr}
|
2018-09-07 16:21:40 -04:00
|
|
|
EXTERNAL_NETWORK=${EXTERNAL_NETWORK:-10.10.10.0/24}
|
|
|
|
EXTERNAL_IP=${EXTERNAL_IP:-10.10.10.1/24}
|
2018-08-29 13:45:02 -05:00
|
|
|
|
|
|
|
if [[ -r /sys/class/net/${BRIDGE_INTERFACE}1 ]]; then
|
|
|
|
echo "${BRIDGE_INTERFACE}1 exists, cowardly refusing to overwrite it, exiting..."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
for i in {1..4}; do
|
2018-12-17 11:02:35 -06:00
|
|
|
sudo ip link add ${BRIDGE_INTERFACE}$i type bridge
|
2018-08-29 13:45:02 -05:00
|
|
|
done
|
|
|
|
|
2018-12-17 11:02:35 -06:00
|
|
|
sudo ip addr add $EXTERNAL_IP dev ${BRIDGE_INTERFACE}1
|
|
|
|
sudo ip link set ${BRIDGE_INTERFACE}1 up
|
|
|
|
sudo ip link set ${BRIDGE_INTERFACE}2 up
|
|
|
|
sudo ip link set ${BRIDGE_INTERFACE}3 up
|
|
|
|
sudo ip link set ${BRIDGE_INTERFACE}4 up
|
2018-08-29 13:45:02 -05:00
|
|
|
sudo iptables -t nat -A POSTROUTING -s $EXTERNAL_NETWORK -j MASQUERADE
|