ansible-edda/playbooks/filesystem/common/etc/network/interfaces.d/veth-_service.j2

20 lines
1015 B
Plaintext
Raw Normal View History

iface {{ service_iface_name }} inet manual
pre-up mkdir -p /run/netns
pre-up ln -sfTv /proc/$(cat /var/lib/{{ ansible_hostname }}/containers/{{ service_user_name }}/pidfile)/ns/net /run/netns/{{ service_user_name }}
pre-up ip link add name $IFACE type veth peer name veth0 netns {{ service_user_name }}
pre-up ip link set $IFACE master br0
post-up ip -n {{ service_user_name }} link set veth0 up
post-up ip -n {{ service_user_name }} address add {{ service_bridge_address }}/24 dev veth0
post-up ip -n {{ service_user_name }} route add default via {{ service_bridge_gateway }} dev veth0
pre-down ip -n {{ service_user_name }} route del default via {{ service_bridge_gateway }} dev veth0
pre-down ip -n {{ service_user_name }} address del {{ service_bridge_address }}/24 dev veth0
pre-down ip -n {{ service_user_name }} link set veth0 down
post-down ip link set $IFACE nomaster
post-down ip link del dev $IFACE
post-down rm /run/netns/{{ service_user_name }}