CentOS 5: IPv6-Tunnel zu Freenet6 einrichten
Momentan bieten die meisten Internet Service Provider (kurz ISP) noch keine direkten IPv6-Verbindungen an. Damit Sie dennoch eine IPv6-Verbindung ins Internet aufbauen können, gibt es sogenannte Tunnel Broker. Zu diesen wird eine IPv4-Verbindung aufgebaut, in welcher IPv6 getunnelt wird.
In der folgenden Anleitung wird beschrieben, wie Sie unter CentOS 5 die Client-Software von gogo6.com installieren, einen 6in4-Tunnel zu den Freenet6-Servern konfigurieren und das System als IPv6-Router einrichten.
Bevor Sie mit der Installation und Konfiguration loslegen, erstellen Sie sich unter http://gogonet.gogo6.com/page/freenet6-registration einen Freenet6-Account. Diesen benötigen Sie später für den Verbindungsaufbau zu den Freenet6-Servern.
Installieren Sie jetzt den Router Advertisement Daemon radvd.
[root@centos5 ~]# yum install radvd
Damit der Router Advertisement Daemon nicht automatisch gestartet wird, führen Sie den folgenden Befehl aus.
[root@centos5 ~]# chkconfig radvd off
Ob der Router Advertisement Daemon deaktiviert wurde können Sie wie folgt überprüfen.
[root@centos5 ~]# chkconfig --list radvd
radvd 0:Aus 1:Aus 2:Aus 3:Aus 4:Aus 5:Aus 6:Aus
radvd 0:Aus 1:Aus 2:Aus 3:Aus 4:Aus 5:Aus 6:Aus
Um das IPv6-Forwarding dauerhaft zu aktivieren, fügen Sie einen neuen Eintrag in die /etc/sysctl.conf ein.
[root@centos5 ~]# echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf
Laden Sie anschließend die neue Konfiguration durch den folgenden Befehl.
[root@centos5 ~]# sysctl -p
Damit Sie den gogoClient kompilieren können, benötigen Sie eventuell noch einige weitere Pakete.
[root@centos5 ~]# yum install gcc-c++ openssl-devel
Wechseln Sie anschließend in das Verzeichnis /usr/src und laden die Quellen des gogoClients herunter.
[root@centos5 ~]# cd /usr/src/
[root@centos5 src]# wget http://gogo6.com/downloads/gogoc-1_2-RELEASE.tar.gz
[root@centos5 src]# wget http://gogo6.com/downloads/gogoc-1_2-RELEASE.tar.gz
Entpacken Sie nun das heruntergeladene Quellenpaket und wechseln in das entpackte Verzeichnis.
[root@centos5 src]# tar xfz gogoc-1_2-RELEASE.tar.gz
[root@centos5 src]# cd gogoc-1_2-RELEASE
[root@centos5 src]# cd gogoc-1_2-RELEASE
Durch den folgenden Befehl kompilieren Sie den gogoClient für Ihr Linux-System.
[root@centos5 gogoc-1_2-RELEASE]# make platform=linux all
Installieren Sie anschließend den gogoClient in das Verzeichnis /usr/local/gogoc.
[root@centos5 gogoc-1_2-RELEASE]# make platform=linux installdir=/usr/local/gogoc install
Erstellen Sie jetzt unter /usr/local/gogoc weitere Verzeichnisse für die Konfigurationsdatei, die temporären Serverlisten und die Logdatei.
[root@centos5 ~]# mkdir -p /usr/local/gogoc/etc /usr/local/gogoc/var/tmp /usr/local/gogoc/var/log
Kopieren Sie die Beispiel-Konfigurationsdatei in das entsprechende Verzeichnis.
[root@centos5 ~]# cp /usr/local/gogoc/bin/gogoc.conf /usr/local/gogoc/etc/
Öffnen Sie anschließend die Konfigurationsdatei /usr/local/gogoc/etc/gogoc.conf mit einem Editor.
[root@centos5 ~]# vi /usr/local/gogoc/etc/gogoc.conf
Ändern bzw. ergänzen Sie die folgenden Direktiven in der Konfigurationsdatei. Bei den Direktiven userid und passwd geben Sie die bei der Freenet6-Registrierung angegebenen Daten an.
userid=<BENUTZERNAME>
passwd=<PASSWORT>
server=anonymous.freenet6.net
auth_method=any
host_type=router
if_prefix=eth0
broker_list=/usr/local/gogoc/var/tmp/tsp-broker-list.txt
last_server=/usr/local/gogoc/var/tmp/tsp-last-server.txt
log_file=2
log_filename=/usr/local/gogoc/var/log/gogoc.log
passwd=<PASSWORT>
server=anonymous.freenet6.net
auth_method=any
host_type=router
if_prefix=eth0
broker_list=/usr/local/gogoc/var/tmp/tsp-broker-list.txt
last_server=/usr/local/gogoc/var/tmp/tsp-last-server.txt
log_file=2
log_filename=/usr/local/gogoc/var/log/gogoc.log
Nachdem Sie die Konfigurationsdatei angepasst haben, erstellen Sie ein Init-Skript für den gogoClient.
[root@centos5 ~]# vi /etc/rc.d/init.d/gogoc
Fügen Sie die folgenen Zeilen in das Init-Skript ein.
#!/bin/sh
# chkconfig: 345 95 5
# description: runs the IPv6 tunnel from gogo6.com
. /etc/init.d/functions
test -x /usr/local/gogoc/bin/gogoc || exit 0
RETVAL=0
start() {
if [ ! -f /var/lock/subsys/gogoc ]; then
echo -n "Starting gogoc: "
daemon /usr/local/gogoc/bin/gogoc -y -f /usr/local/gogoc/etc/gogoc.conf 2>/dev/null
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/gogoc
echo
fi
return $RETVAL
}
stop() {
pidof radvd >/dev/null
if [ $? -eq 0 ]; then
echo -n "Stopping radvd: "
killproc /usr/sbin/radvd
echo
fi
echo -n "Stopping gogoc: "
killproc /usr/local/gogoc/bin/gogoc
RETVAL=$?
rm -f /var/lock/subsys/gogoc
echo
return $RETVAL
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/lock/subsys/gogoc ]; then
stop
start
fi
;;
*)
echo "Usage: $0 {start|stop|restart|condrestart}"
exit 1
esac
exit $RETVAL
# chkconfig: 345 95 5
# description: runs the IPv6 tunnel from gogo6.com
. /etc/init.d/functions
test -x /usr/local/gogoc/bin/gogoc || exit 0
RETVAL=0
start() {
if [ ! -f /var/lock/subsys/gogoc ]; then
echo -n "Starting gogoc: "
daemon /usr/local/gogoc/bin/gogoc -y -f /usr/local/gogoc/etc/gogoc.conf 2>/dev/null
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/gogoc
echo
fi
return $RETVAL
}
stop() {
pidof radvd >/dev/null
if [ $? -eq 0 ]; then
echo -n "Stopping radvd: "
killproc /usr/sbin/radvd
echo
fi
echo -n "Stopping gogoc: "
killproc /usr/local/gogoc/bin/gogoc
RETVAL=$?
rm -f /var/lock/subsys/gogoc
echo
return $RETVAL
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/lock/subsys/gogoc ]; then
stop
start
fi
;;
*)
echo "Usage: $0 {start|stop|restart|condrestart}"
exit 1
esac
exit $RETVAL
Nachdem Sie das Init-Skript erstellt haben, müssen Sie noch die Rechte des Skripts ändern, damit dieses ausgeführt werden kann.
[root@centos5 ~]# chmod 0755 /etc/rc.d/init.d/gogoc
Erstellen Sie anschließend einen Service für den gogoClient.
[root@centos5 ~]# chkconfig --add gogoc
Damit der gogoClient beim Systemstart automatisch gestartet wird, sollten Sie den folgenden Befehl ausführen.
Hinweis: Bevor Sie den folgenden Befehl ausführen oder den gogoClient manuell starten, sollten Sie die IPv6-Firewall und die laufenden Dienste auf Schwachstellen überprüfen. Es kann durchaus sein, dass Sie einen unsicheren Dienst in der IPv4-Firewall gesperrt haben, dieser aber über IPv6 noch erreichbar ist.
[root@centos5 ~]# chkconfig gogoc on
Starten Sie jetzt den gogoClient manuell.
[root@centos5 ~]# service gogoc start
Wenn Sie die Logdatei /usr/local/gogoc/var/log/gogoc.log beim Starten des gogoClients überprüfen, sollten Sie die folgenden Meldungen erhalten.
[root@centos5 ~]# tail -f /usr/local/gogoc/var/log/gogoc.log
2011/04/17 18:52:22 I gogoc: gogoCLIENT v1.2-RELEASE build Apr 17 2011-18:41:20
2011/04/17 18:52:22 I gogoc: Built on ///Linux centos5 2.6.18-238.5.1.el5 #1 SMP Fri Apr 1 18:42:32 EDT 2011 i686 i686 i386 GNU/Linux///
2011/04/17 18:52:22 I gogoc: Establishing connection to server anonymous.freenet6.net using reliable UDP.
2011/04/17 18:52:22 E gogoc: Failed to contact TSP listener at anonymous.freenet6.net.
2011/04/17 18:52:22 I gogoc: Disconnected. Retrying.
2011/04/17 18:52:22 I gogoc: Establishing connection to server anonymous.freenet6.net using TCP.
2011/04/17 18:52:23 I gogoc: Connection to server anonymous.freenet6.net successful.
2011/04/17 18:52:24 I gogoc: Received a TSP redirection message from server anonymous.freenet6.net (1200 Redirection).
2011/04/17 18:52:24 I gogoc: The server redirection list is [ anon-taipei.freenet6.net, anon-amsterdam.freenet6.net, anon-montreal.freenet6.net ].
2011/04/17 18:52:24 I gogoc: Sorting the server redirection list.
2011/04/17 18:52:54 I gogoc: The optimized server redirection list is [ anon-montreal.freenet6.net, anon-taipei.freenet6.net, anon-amsterdam.freenet6.net ].
2011/04/17 18:52:54 I gogoc: Establishing connection to server anon-montreal.freenet6.net using reliable UDP.
2011/04/17 18:52:54 I gogoc: Matching server key found and used.
2011/04/17 18:52:56 I gogoc: Authentication successful.
2011/04/17 18:52:56 I gogoc: Tunnel negotiation successful. Accepted offer.
2011/04/17 18:52:56 I gogoc: Checking for Linux IPv6 support...
2011/04/17 18:52:56 I gogoc: IPv6 support found.
2011/04/17 18:52:56 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:52:57 E gogoc: Interface configuration script completed with errors.
2011/04/17 18:52:57 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:52:58 I gogoc: Interface configuration script completed successfully.
2011/04/17 18:53:28 I gogoc: Establishing connection to server anon-montreal.freenet6.net using reliable UDP.
2011/04/17 18:53:29 I gogoc: Matching server key found and used.
2011/04/17 18:53:30 I gogoc: Authentication successful.
2011/04/17 18:53:31 I gogoc: Tunnel negotiation successful. Accepted offer.
2011/04/17 18:53:31 I gogoc: Checking for Linux IPv6 support...
2011/04/17 18:53:31 I gogoc: IPv6 support found.
2011/04/17 18:53:31 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:53:32 I gogoc: Interface configuration script completed successfully.
2011/04/17 18:53:32 I gogoc: The host type is 'router'.
2011/04/17 18:53:32 I gogoc: The tunnel type is v6udpv4.
2011/04/17 18:53:32 I gogoc: Your IPv6 address is 2001:05c0:1000:000b:0000:0000:0000:892b.
2011/04/17 18:53:32 I gogoc: Your IPv6 prefix is 2001:05c0:110d:f100:0000:0000:0000:0000/56.
2011/04/17 18:53:32 I gogoc: Your IPv6 DNS address is 2001:05c0:1000:0011:0000:0000:0000:0002.
2011/04/17 18:53:32 I gogoc: Keepalive initialized with peer 2001:05c0:1000:000b:0000:0000:0000:892a. Interval=30000ms. Timeout=5000ms. General timeout at 3 consecutive timeouts.
2011/04/17 18:52:22 I gogoc: gogoCLIENT v1.2-RELEASE build Apr 17 2011-18:41:20
2011/04/17 18:52:22 I gogoc: Built on ///Linux centos5 2.6.18-238.5.1.el5 #1 SMP Fri Apr 1 18:42:32 EDT 2011 i686 i686 i386 GNU/Linux///
2011/04/17 18:52:22 I gogoc: Establishing connection to server anonymous.freenet6.net using reliable UDP.
2011/04/17 18:52:22 E gogoc: Failed to contact TSP listener at anonymous.freenet6.net.
2011/04/17 18:52:22 I gogoc: Disconnected. Retrying.
2011/04/17 18:52:22 I gogoc: Establishing connection to server anonymous.freenet6.net using TCP.
2011/04/17 18:52:23 I gogoc: Connection to server anonymous.freenet6.net successful.
2011/04/17 18:52:24 I gogoc: Received a TSP redirection message from server anonymous.freenet6.net (1200 Redirection).
2011/04/17 18:52:24 I gogoc: The server redirection list is [ anon-taipei.freenet6.net, anon-amsterdam.freenet6.net, anon-montreal.freenet6.net ].
2011/04/17 18:52:24 I gogoc: Sorting the server redirection list.
2011/04/17 18:52:54 I gogoc: The optimized server redirection list is [ anon-montreal.freenet6.net, anon-taipei.freenet6.net, anon-amsterdam.freenet6.net ].
2011/04/17 18:52:54 I gogoc: Establishing connection to server anon-montreal.freenet6.net using reliable UDP.
2011/04/17 18:52:54 I gogoc: Matching server key found and used.
2011/04/17 18:52:56 I gogoc: Authentication successful.
2011/04/17 18:52:56 I gogoc: Tunnel negotiation successful. Accepted offer.
2011/04/17 18:52:56 I gogoc: Checking for Linux IPv6 support...
2011/04/17 18:52:56 I gogoc: IPv6 support found.
2011/04/17 18:52:56 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:52:57 E gogoc: Interface configuration script completed with errors.
2011/04/17 18:52:57 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:52:58 I gogoc: Interface configuration script completed successfully.
2011/04/17 18:53:28 I gogoc: Establishing connection to server anon-montreal.freenet6.net using reliable UDP.
2011/04/17 18:53:29 I gogoc: Matching server key found and used.
2011/04/17 18:53:30 I gogoc: Authentication successful.
2011/04/17 18:53:31 I gogoc: Tunnel negotiation successful. Accepted offer.
2011/04/17 18:53:31 I gogoc: Checking for Linux IPv6 support...
2011/04/17 18:53:31 I gogoc: IPv6 support found.
2011/04/17 18:53:31 I gogoc: Executing interface configuration script: /bin/sh "/usr/local/gogoc/template/linux.sh".
2011/04/17 18:53:32 I gogoc: Interface configuration script completed successfully.
2011/04/17 18:53:32 I gogoc: The host type is 'router'.
2011/04/17 18:53:32 I gogoc: The tunnel type is v6udpv4.
2011/04/17 18:53:32 I gogoc: Your IPv6 address is 2001:05c0:1000:000b:0000:0000:0000:892b.
2011/04/17 18:53:32 I gogoc: Your IPv6 prefix is 2001:05c0:110d:f100:0000:0000:0000:0000/56.
2011/04/17 18:53:32 I gogoc: Your IPv6 DNS address is 2001:05c0:1000:0011:0000:0000:0000:0002.
2011/04/17 18:53:32 I gogoc: Keepalive initialized with peer 2001:05c0:1000:000b:0000:0000:0000:892a. Interval=30000ms. Timeout=5000ms. General timeout at 3 consecutive timeouts.
Sobald der gogoClient gestartet wurde und erfolgreich einen IPv6-Tunnel hergestellt hat, sollten Sie eine neue Schnittstelle (tun) mit einer globalen IPv6-Adresse vorfinden. Des Weiteren sollte die Netzwerkkarte in Ihrem System (hier eth0) eine globale IPv6-Adresse erhalten haben.
[root@centos5 ~]# ifconfig
eth0 Link encap:Ethernet Hardware Adresse 00:0C:29:7C:67:9F
inet Adresse:192.168.10.129 Bcast:192.168.10.255 Maske:255.255.255.0
inet6 Adresse: 2001:5c0:110d:f100::1/64 Gültigkeitsbereich:Global
inet6 Adresse: fe80::20c:29ff:fe7c:679f/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:56127 errors:0 dropped:0 overruns:0 frame:0
TX packets:37348 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:54666743 (52.1 MiB) TX bytes:5875826 (5.6 MiB)
Interrupt:59 Basisadresse:0x2000
lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:35 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:3908 (3.8 KiB) TX bytes:3908 (3.8 KiB)
tun Link encap:UNSPEC Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet6 Adresse: 2001:5c0:1000:b::892b/128 Gültigkeitsbereich:Global
UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1280 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:500
RX bytes:416 (416.0 b) TX bytes:56 (56.0 b)
eth0 Link encap:Ethernet Hardware Adresse 00:0C:29:7C:67:9F
inet Adresse:192.168.10.129 Bcast:192.168.10.255 Maske:255.255.255.0
inet6 Adresse: 2001:5c0:110d:f100::1/64 Gültigkeitsbereich:Global
inet6 Adresse: fe80::20c:29ff:fe7c:679f/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:56127 errors:0 dropped:0 overruns:0 frame:0
TX packets:37348 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:54666743 (52.1 MiB) TX bytes:5875826 (5.6 MiB)
Interrupt:59 Basisadresse:0x2000
lo Link encap:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:35 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:3908 (3.8 KiB) TX bytes:3908 (3.8 KiB)
tun Link encap:UNSPEC Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet6 Adresse: 2001:5c0:1000:b::892b/128 Gültigkeitsbereich:Global
UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1280 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:500
RX bytes:416 (416.0 b) TX bytes:56 (56.0 b)
Zum Testen des IPv6-Tunnels senden Sie einige ICMP6 Echo Requests an einen öffentlichen IPv6-Server (z.B. ipv6.google.com).
[root@centos5 ~]# ping6 -c3 -n ipv6.google.com
PING ipv6.google.com(2a00:1450:8004::6a) 56 data bytes
64 bytes from 2a00:1450:8004::6a: icmp_seq=0 ttl=53 time=94.6 ms
64 bytes from 2a00:1450:8004::6a: icmp_seq=1 ttl=53 time=94.3 ms
64 bytes from 2a00:1450:8004::6a: icmp_seq=2 ttl=53 time=93.8 ms
--- ipv6.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 93.838/94.286/94.695/0.350 ms, pipe 2
PING ipv6.google.com(2a00:1450:8004::6a) 56 data bytes
64 bytes from 2a00:1450:8004::6a: icmp_seq=0 ttl=53 time=94.6 ms
64 bytes from 2a00:1450:8004::6a: icmp_seq=1 ttl=53 time=94.3 ms
64 bytes from 2a00:1450:8004::6a: icmp_seq=2 ttl=53 time=93.8 ms
--- ipv6.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 93.838/94.286/94.695/0.350 ms, pipe 2
Die Konfiguration der IPv6-fähigen Systeme in Ihrem Netzwerk erfolgt durch den Router Advertisement Daemon. Sobald der IPv6-Tunnel aufgebaut wurde, sollten Ihre Client-Systeme automatisch eine globale IPv6-Adresse erhalten und über IPv6 ins Internet gelangen.
Weitere Informationen zum gogoClient und dessen Konfigurationsdatei finden Sie in den entsprechenden Manpages.
[root@centos5 ~]# man /usr/local/gogoc/man/man8/gogoc.8
[root@centos5 ~]# man /usr/local/gogoc/man/man5/gogoc.conf.5
[root@centos5 ~]# man /usr/local/gogoc/man/man5/gogoc.conf.5
Dieser Eintrag wurde am 23.04.2011 erstellt und zuletzt am 12.05.2011 bearbeitet.
Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_1255.html
[ Zur Startseite ] [ Zur Kategorie ]
© 2004-2021 by Georg Kainzbauer