summaryrefslogtreecommitdiff
path: root/ImmaeEu-up
blob: c2dc93adca69af7d45e5089e9a632361a802e0e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh
# This file sets up the tap device.
# It gives you the freedom to do anything you want with it.
# Use the correct name for the tap device:
# The environment variable $INTERFACE is set to the right name
# on most platforms, but if it doesn't work try to set it manually.

# Give it the right ip and netmask. Remember, the subnet of the
# tap device must be larger than that of the individual Subnets
# as defined in the host configuration file!
SUBDOMAIN=$(echo "$NAME" | sed -e "s/\([A-Z][a-z0-9]*\)/\L\1 /g;" | awk '{ for (i=NF; i>1; i--) printf("%s.",$i); print $1; }')
while [ -z "$MYIPS" -o -z "$GWIP" ]; do
  MYIPS=`getent hosts ${SUBDOMAIN}.immae.eu | cut -d' ' -f1 | tr "\\n" ' '`
  GWIP=`getent hosts gw.vpn.immae.eu | head -n1 | cut -d' ' -f1`
  sleep 5
done
rm -f /run/tinc_$NETNAME.vars
echo -e "MYIPS=\"$MYIPS\"\nGWIP=\"$GWIP\"" > /run/tinc_$NETNAME.vars
ip -6 link set $INTERFACE up mtu 1280
for MYIP in $MYIPS; do
  ip -6 addr add $MYIP/96 dev $INTERFACE
done
ip -6 route add default via $GWIP
(cd /etc/tinc/$NETNAME/hosts && git pull -q origin master) || true