#!/usr/bin/env bash if [ ${MODE} == "start" ] then set -ue elif [ ${MODE} == "stop" ] then set -u else echo "$(basename ${0}): mode must be one of either 'start' or 'stop'" 1>&2 exit 1 fi case ${PHASE} in "pre-up") /usr/sbin/ip netns exec {{ services_service_user_name }} /usr/sbin/sysctl -q -w net.ipv6.conf.veth0.autoconf=0 /usr/sbin/ip -n {{ services_service_user_name }} -4 address add {{ services_service_iface_inet_address }}/{{ services_service_iface_inet_prefixlen }} dev veth0 /usr/sbin/ip -n {{ services_service_user_name }} -6 address add {{ services_service_iface_inet6_address }}/{{ services_service_iface_inet6_prefixlen }} dev veth0 nodad ;; "post-up") /usr/sbin/ip -n {{ services_service_user_name }} link set dev veth0 up /usr/sbin/ip -n {{ services_service_user_name }} -4 route add default via {{ services_bridge_inet_gateway }} dev veth0 /usr/sbin/ip -n {{ services_service_user_name }} -6 route add default via {{ services_bridge_inet6_gateway }} dev veth0 ;; "pre-down") /usr/sbin/ip -n {{ services_service_user_name }} -6 route del default via {{ services_bridge_inet6_gateway }} dev veth0 /usr/sbin/ip -n {{ services_service_user_name }} -4 route del default via {{ services_bridge_inet_gateway }} dev veth0 /usr/sbin/ip -n {{ services_service_user_name }} link set dev veth0 down ;; "post-down") /usr/sbin/ip -n {{ services_service_user_name }} -6 address flush dev veth0 /usr/sbin/ip -n {{ services_service_user_name }} -4 address flush dev veth0 ;; esac