X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=factory%2Fsetup-nat;h=e703f5d8df506a1e6d6b664e15be4d71c4763180;hb=ec3b7dbe56acbc80e7d22dc88a70146f25aed42c;hp=64be40b65b84468058778c72a1dcd357da10efd9;hpb=236618a38a437f3bd12924bd926f086e0f0c47b6;p=vsys.git diff --git a/factory/setup-nat b/factory/setup-nat index 64be40b..e703f5d 100755 --- a/factory/setup-nat +++ b/factory/setup-nat @@ -1,22 +1,18 @@ #!/bin/sh +x -IP=/sbin/ip - SLICE=$1 SLICEID=`id -u $SLICE` read KEY -modprobe etun - ### Setup etun ETUN0=nat$KEY ETUN1=natx$KEY -echo $ETUN0,$ETUN1 > /sys/module/etun/parameters/newif +ip link add name $ETUN0 type veth peer name $ETUN1 ifconfig $ETUN1 10.0.$KEY.1 up -/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE -/sbin/iptables -A FORWARD -i eth0 -o $ETUN1 -m state --state RELATED,ESTABLISHED -j ACCEPT -/sbin/iptables -A FORWARD -i $ETUN1 -o eth0 -j ACCEPT +iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE +iptables -A FORWARD -i eth0 -o $ETUN1 -m state --state RELATED,ESTABLISHED -j ACCEPT +iptables -A FORWARD -i $ETUN1 -o eth0 -j ACCEPT ### Create "grab link" script GRAB=/vsys/local_grab-$ETUN0 @@ -27,7 +23,7 @@ cat > $GRAB < /sys/class/net/$ETUN0/new_ns_pid +ip link set $ETUN0 netns \$PID EOF chmod +x $GRAB @@ -41,12 +37,12 @@ cat > $DELETE < /sys/module/etun/parameters/delif +ip link delete dev $ETUN1 # Clean up files rm -f $GRAB $GRAB.acl