Add backslash
[vsys.git] / factory / setup-link
index b8c748c..cc800ce 100755 (executable)
@@ -1,7 +1,5 @@
 #!/bin/sh +x
 
-IP=/sbin/ip
-
 SLICE=$1
 SLICEID=`id -u $SLICE`
 read INDEX
@@ -11,17 +9,16 @@ read KEY
 LINK=${KEY}if${INDEX}
 
 modprobe ip_gre
-modprobe etun
 
 ### Setup EGRE tunnel
 EGRE=d$LINK
-$IP tunnel add $EGRE  mode gre/eth remote $REMOTE key $KEY
-$IP link set $EGRE up
+ip tunnel add $EGRE  mode gre type eth remote $REMOTE key $KEY ttl 64
+ip link set $EGRE up
 
 ### Setup etun
 ETUN0=a$LINK
 ETUN1=b$LINK
-echo $ETUN0,$ETUN1 > /sys/module/etun/parameters/newif
+ip link add name $ETUN0 type veth peer name $ETUN1
 ifconfig $ETUN0 mtu 1458 up
 ifconfig $ETUN1 up
 
@@ -36,7 +33,7 @@ ifconfig $BRIDGE up
 iptables -t mangle -A FORWARD -o $BRIDGE -j MARK --set-mark $SLICEID
 
 ### Create "grab link" script
-GRAB=/vsys/grab-$ETUN0
+GRAB=/vsys/local_grab-$ETUN0
 echo $SLICE > $GRAB.acl 
 rm -f $GRAB
 cat > $GRAB <<EOF
@@ -44,22 +41,21 @@ cat > $GRAB <<EOF
 
 read PID
 
-chcontext --ctx 1 -- echo \$PID > /sys/class/net/$ETUN0/new_ns_pid 
+ip link set $ETUN0 netns \$PID
 EOF
 chmod +x $GRAB
 
 ### Create script for setting link rate
-BIND=/vsys/rate-$ETUN0
+BIND=/vsys/local_rate-$ETUN0
 echo $SLICE > $BIND.acl 
 rm -f $BIND
 cat > $BIND <<EOF
 #!/bin/sh
 
 read rt
-read lt
-read burs
 
-tc qdisc add dev $EGRE root tbf rate \$rt latency \$lt burst \$burs
+tc qdisc add dev $EGRE root handle 1: htb default 10
+tc class add dev $EGRE parent 1: classid 1:10 htb rate \$rt ceil \$rt
 
 rm -rf $BIND.acl 
 touch $BIND.acl 
@@ -68,7 +64,7 @@ EOF
 chmod +x $BIND
 
 ### Create "delete link" script
-DELETE=/vsys/delete-$ETUN0
+DELETE=/vsys/local_delete-$ETUN0
 echo $SLICE > $DELETE.acl 
 rm -f $DELETE
 cat > $DELETE <<EOF
@@ -80,7 +76,7 @@ read NULL
 iptables -t mangle -D FORWARD -o $BRIDGE -j MARK --set-mark $SLICEID
 
 # Get rid of etun devices, only need name of one of them
-echo $ETUN1 > /sys/module/etun/parameters/delif
+ip link delete dev $ETUN1 
 
 # Get rid of bridge
 ifconfig $BRIDGE down