Normalerweise richte ich einen IPv6-Tunnel ein (von sixxs.net oder he.net), wenn sie noch kein IPv6 haben. Auf diese Weise hat der Computer eine statische Adresse und ich muss mich nicht mit NAT anlegen. Ich richte auch gerne eine schlüsselbasierte Authentifizierung ein (dann müssen sie dir nicht ihr Passwort mitteilen).
Sixxs hat einen eigenen Client, den Sie verwenden. Es funktioniert hinter fast jedem NAT und wird automatisch aktualisiert, wenn sich die IPv4-Adresse ändert. Sie haben Anweisungen zum Einrichten und es ist für Ubuntu gepackt.
Hurricane Electric verwendet einen Tunnel, in dem IPv6-Pakete als Nutzdaten eines IPv4-Pakets gesendet werden. Im Gegensatz zu Sixxs wird kein TCP / UDP verwendet. Dies bedeutet, dass das NAT, hinter dem Sie sich befinden, das Weiterleitungs-PROTOKOLL 41 (nicht den Port) unterstützen muss und nur ein Computer hinter dem NAT es verwenden kann. Die Software zur Verwendung eines solchen Tunnels ist in Ubuntu integriert.
Für HE verwende ich so etwas in /etc/network/interfaces
:
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
endpoint 216.218.226.238
address 2001:470:a29f::2
netmask 64
ttl 64
up ip -6 route add default dev he-ipv6
down ip -6 route del default dev he-ipv6
Das andere, was Sie tun müssen, ist, Ihren Tunnelendpunkt zu aktualisieren. Da Sie nicht wissen, wann sich die externe IP ändert, müssen Sie nur versuchen, den Endpunkt alle paar Minuten zu aktualisieren. Sie könnten so etwas verwenden und es von cron ausführen:
#!/bin/sh
echo -n "Hurricane Electric Proto-41 tunnel endpoint update: "
#(C) 2010 Erik B. Andersen This script is licensed under the latest version of the
# AGPL published by the Free Software Foundation at http://www.gnu.org/licenses/ .
####Set these for each different site#########
pass="passwordhere"
user_id="a765b8e2f474667dcb56e08c5f1aa05b"
tunnel_id="97817"
####Past here doesn't need to be changed######
wget -4 "https://ipv4.tunnelbroker.net/ipv4_end.php?ipv4b=AUTO&pass=$(echo -n "${pass}" | md5sum | grep -o -E "[0-9a-fA-F]{32}")&user_id=${user_id}&tunnel_id=${tunnel_id}" -O /dev/null -o /dev/null --no-check-certificate
echo " Done"