Neuere Linux Distributionen beinhalten bereits einen IPv6-fähigen Kernel. Die IPv6-Funktionalität wird im Allgemeinen als Modul kompiliert. Es ist aber durchaus möglich, dass das Modul nicht automatisch beim Start des Betriebssystems geladen wird.
Hinweis: Sie sollten die Kernel Serie 2.2.x nicht mehr verwenden, da die IPv6-Implementierung nicht mehr aktuell ist. Auch die in der Serie 2.4.x wird nicht mehr weiterentwickelt bzgl. der Definitionen in den neueren RFCs. Es wird empfohlen, einen aus der Serie 2.6.x zu verwenden.
Um zu überprüfen, ob ihr aktueller Kernel IPv6 unterstützt, sollten sie einen Blick in ihr /proc-Dateisystem werfen. Folgende Einträge müssen existieren:
/proc/net/if_inet6 |
Einen kleinen automatischen Test können Sie wie folgt durchführen:
# test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready" |
Wenn dieser Test negativ verläuft, ist das IPv6 Modul aller Wahrscheinlichkeit noch nicht geladen.
Mit folgenden Befehl können Sie versuchen, das Modul zu laden:
# modprobe ipv6 |
Wenn dieser Befehl positiv verläuft, dann sollten Sie das Modul mit folgendem Befehl auflisten können:
# lsmod |grep -w 'ipv6' && echo "IPv6 module successfully loaded" |
Der obige Test sollte nun erfolgreich verlaufen.
Hinweis: Ein Entfernen des Moduls im laufenden System wird derzeit nicht unterstützt und kann unter gewissen Bedingungen zu einem Absturz des Kernels führen.
Es ist möglich das IPv6 Modul bei Bedarf automatisch zu laden. Sie müssen nur folgende Zeile in die Konfigurationsdatei des kernel modul loaders eintragen (normalerweise: /etc/modules.conf oder /etc/conf.modules):
alias net-pf-10 ipv6 # automatically load IPv6 module on demand |
Mit der folgenden Zeile ist es auch möglich, das automatische Laden des IPv6 Moduls auszuschalten.
alias net-pf-10 off # disable automatically load of IPv6 module on demand |
Anmerkung: In Kernel Series 2.6.x wurde der Modul-Lade-Mechanismus geändert. Die neue Konfigurationsdatei wird anstelle /etc/modules.conf nun /etc/modprobe.conf genannt.
Wenn beide oben gezeigten Methoden ohne Erfolg blieben und ihr Kernel somit keine IPv6 Unterstützung bietet, dann haben Sie folgende Optionen:
Aktualisieren Sie Ihre Distribution mit einer Version, die von Haus aus IPv6 unterstützt (empfohlen für Anfänger),
Sie können einen Standard-Kernel kompilieren (einfach, wenn Sie die benötigten Optionen kennen)
Kompilieren Sie die Kernel-Quellen ihrer Distribution (manchmal nicht ganz so einfach)
Kompilieren Sie einen Kernel mit den USAGI-Erweiterungen
Falls Sie sich dazu entscheiden, einen neuen IPv6 kompatiblen Kernel zu kompilieren, sollten Sie auf jeden Fall bereits Erfahrung mit der Kernel-Kompilierung haben sowie das Linux Kernel HOWTO lesen.
Ein Vergleich zwischen dem Standard-Kernel und dem Kernel mit USAGI-Erweiterungen ist verfügbar unter IPv6+Linux-Status-Kernel.
Detailliertere Ausführungen zur Kompilierung eines IPv6 fähigen Kernels finden Sie unter IPv6-HOWTO-2#kernel.
Hinweis: Sie sollten wann immer möglich die Kernel Serie 2.6.x oder höher einsetzen, da die IPv6 Unterstützung der Serie 2.4.x nur einige Backports erhält und die IPv6-Unterstützung von Serie 2.2.x hoffnungslos veraltet ist und nicht mehr weiterentwickelt wird.
Wie für den Standard-Kernel gilt auch hier, dass das Kompilieren des Kernels nur fortgeschrittenen Benutzern empfohlen wird, die mit IPv6 und dem Kompilieren des Kernels bereits vertraut sind.
Siehe auch USAGI project / FAQ und Obtaining the best IPv6 support with Linux (Article) (Spiegel).
Nicht alle Netzwerkgeräte sind bereits (bzw. überhaupt) dazu in der Lage, IPv6 Pakete übertragen zu können. Den aktuellen Status können Sie unter IPv6+Linux-status-kernel.html#transport.
Ein entscheidender Punkt ist die Tatsache, dass ein IPv6 Paket wegen der Struktur der Netzwerkschicht in der Kernel-Implementierung nicht wirklich aufgrund der IP-Header-Nummer (6 anstelle 4) wiedererkannt wird. Es wird aufgrund der Protokollnummer der Schicht 2 Transport-Protokolls wiedererkannt. Folglich können IPv6 Pakete von keinem Transport-Protokoll verwendet werden, welche diese Protokoll-Nummer nicht nutzen. Hinweis: Das Paket wird nach wie vor über den Link transportiert, aber auf der Empfänger-Seite kann das Paket nicht verarbeitet werden (Sie können dies z.B. mit tcpdump sehen).
Serial Line IP (RFC 1055 / SLIP), auch SLIPv4 genannt; das Gerät heißt: s1X
Parallel Line IP (PLIP), gleich dem SLIP, Gerätename: plipX
ISDN mit rawip Encapsulation; Gerätename: isdnX
ISDN mit syncppp Encapsulation; Gerätename: ipppX (Designfrage des ipppd; in der Kernel Serie 2.5.x wird ipppX in einer allgemeinen PPP Schicht inkludiert)
Zurück | Zum Anfang | Weiter |
IPv6 System-Check | Nach oben | IPv6 kompatible Tools zur Netzwerkkonfiguration |