44
55display_usage () {
66 echo " Auto configuration for systemd-named-netns."
7- echo -e " \nUsage:\n\t$0 network-type ns-name \n"
7+ echo -e " \nUsage:\n\t$0 network-type ns-name [optional params] \n"
88 echo " Note: you may need root privileges for this."
99}
1010
@@ -27,19 +27,39 @@ autoconfigure_tunnel() {
2727}
2828
2929autoconfigure_nat () {
30+
3031 # add default route if gateway undefined
3132 if [ -z " ${GATEWAY} " -a -n " ${IPADDR_OUTSIDE} " ]; then
3233 /bin/ip route add default via ${IPADDR_OUTSIDE%%/* }
3334 fi
35+
3436 return 0 # additional precation against "set -e" in case of future mods of this function
3537}
3638
39+ autoconfigure_nat-access () {
40+
41+ if [ " ${NAT_ACCEPT_TRAFFIC} " != " 1" ]; then
42+ return 0
43+ fi
44+ if [ " $3 " == " up" ]; then
45+ # Accept related traffic
46+ iptables -I INPUT -i ${DEVNAME_OUTSIDE} -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
47+
48+ elif [ " $3 " == " down" ]; then
49+ iptables -D INPUT -i ${DEVNAME_OUTSIDE} -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
50+ fi
51+
52+
53+ return 0 # additional precation against "set -e" in case of future mods of this function
54+ }
3755autoconfigure () {
3856 local NSTYPE=$1
3957 local NSNAME=$2
4058
4159 echo " Starting autoconfigure for $NSTYPE ${NSNAME} "
4260 DEVNAME_INSIDE=vn-${NSNAME} 1
61+ DEVNAME_OUTSIDE=vn-${NSNAME} 0
62+
4363 source /etc/default/netns
4464 ! source " /etc/default/netns-${NSNAME} "
4565
@@ -60,7 +80,7 @@ case "$1" in
6080 display_usage
6181 exit 0
6282 ;;
63- " tunnel" |" bridge" |" nat" )
83+ " tunnel" |" bridge" |" nat" | " nat-access " )
6484 autoconfigure " $@ "
6585 exit 0
6686 ;;
0 commit comments