IPv6/Gentoo

Настройка 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 вариант написать. Он, всё-таки, более глобален.

IPv6/Gentoo (last edited 2011-02-10 15:31:41 by NM Realname)