Настройка IPv6-туннеля от tunnelbroker.net стандартными средствами генты для динамического IP:
1 # вырезка из /etc/conf.d/net
2 depend_henet() {
3 need net.ppp0
4 }
5
6 mtu_henet="1280"
7 config_henet=("2001:470:1f14:14ef::2/64") # то, что tunnelbroker называет client ipv6
8 routes_henet=("::/0")
9 link_henet="ppp0"
10
11 preup() {
12 if [ "$IFVAR" == "henet" ]; then
13 modprobe ipv6
14 HENET_LOCAL="$(interface_get_address ppp0)"
15 echo "$HENET_LOCAL" > /var/run/henet.local
16 HENET_USERID=<ID юзера>
17 HENET_MDPASS=<пароль в MD5>
18 HENET_TUNID=<ID туннеля>
19 HENET_POP=<адрес другой стороны туннеля>
20 curl -4 -k --retry 10 --retry-delay 5 "https://ipv4.tunnelbroker.net/ipv4_end.php?ipv4b=AUTO&pass=$HENET_MDPASS&user_id=$HENET_USERID&tunnel_id=$HENET_TUNID"
21 ip tunnel add henet mode sit remote $HENET_REMOTE local "$HENET_LOCAL" ttl 255 || return 1
22 ip link set henet up
23 fi
24 }
Потом можно в cron сунуть скрипт, который будет сравнивать текущий адрес интерфейса ppp0 и содержимое /var/run/henet.local, и перезапускать интерфейс henet при изменении адреса.
Хорошо бы и для скрипта network вариант написать. Он, всё-таки, более глобален.