In diesem Abschnitt werden die Befehle beschrieben, die mit der IPv6-Implementierung zu Oracle Solaris hinzugefügt werden. Hier werden auch die Modifikationen an vorhandenen Befehlen beschrieben, um IPv6 zu unterstützen.
Mit dem Befehl ipaddrsel können Sie die Richtlinientabelle für die IPv6-Standard-Adressauswahl bearbeiten.
Der Oracle Solaris-Kernel verwendet die Richtlinientabelle für die IPv6-Standard-Adressauswahl, um die Zieladressen in eine Reihenfolge zu bringen und die Quelladresse eines IPv6-Paket-Headers auszuwählen. Die Richtlinientabelle ist in der /etc/inet/ipaddrsel.conf-Datei enthalten.
Die folgenden Tabelle enthält die Standard-Adressformate und deren Prioritäten für die Richtlinientabelle. Ausführliche technische Informationen zur IPv6-Adressenauswahl finden Sie in der Manpage inet6(7P).
Tabelle 11–5 Richtlinientabelle für die IPv6-Adressauswahl
Präfix |
Prioritätsstufe |
Definition |
---|---|---|
::1/128 |
50 |
Loopback |
::/0 |
40 |
Standard |
2002::/16 |
30 |
6to4 |
::/96 |
20 |
IPv4-kompatibel |
::ffff:0:0/96 |
10 |
IPv4 |
In dieser Tabelle haben die IPv6-Präfixe (::1/128 und ::/0) Vorrang vor den 6to4-Adressen (2002::/16) und den IPv4-Adressen (::/96 und ::ffff:0:0/96). Aus diesem Grund wählt der Kernel standardmäßig die globale IPv6-Adresse der Schnittstelle für Pakete, die für ein anderes IPv6-Ziel bestimmt sind. Die IPv4-Adresse der Schnittstelle hat eine geringere Priorität, insbesondere für Pakete, die an einen IPv6-Ziel gerichtet sind. Bei der ausgewählten IPv6-Quelladresse verwendet der Kernel darüber hinaus das IPv6-Format für die Zieladresse.
In den meisten Fällen müssen Sie die Richtlinientabelle für die IPv6-Standard-Adressauswahl nicht ändern. Wenn Sie die Richtlinientabelle bearbeiten müssen, verwenden Sie den Befehl ipaddrsel.
In den folgenden Fällen können Sie die Richtliniendatei ändern:
Wenn das System über eine Schnittstelle verfügt, die für ein 6to4-Tunnel verwendet wird, können Sie den 6to4-Adressen eine höhere Priorität zuweisen.
Wenn Sie möchten, dass eine bestimmte Quelladresse nur bei einem Datenaustausch mit einer bestimmten Zieladresse verwendet wird, können Sie diese Adressen zur Richtliniendatei hinzufügen. Dann priorisieren Sie diese Adressen mit dem Befehl ifconfig.
Wenn Sie möchten, dass IPv4-Adressen eine höhere Prioritätsstufe als IPv6-Adressen einnehmen, können Sie die Priorität ::ffff:0:0/96 zu einem höheren Wert ändern.
Möchten Sie veralteten Adressen eine höhere Priorität zuweisen, fügen Sie die veraltete Adresse der Richtliniendatei hinzu. Beispielsweise sind Standort-lokale Adressen in IPv6 jetzt veraltet. Diese Adressen haben das Präfix fec0::/10. Sie können die Richtlinientabelle jedoch so ändern, dass Standort-lokale Adressen eine höhere Priorität erhalten.
Weitere Informationen zum Befehl ipaddrsel finden Sie in der Manpage ipaddrsel(1M).
6to4-Tunneling ermöglicht die Kommunikation zwischen isolierten 6to4-Standorten. Um jedoch Pakete an einen nativen, nicht-6to4 IPv6-Standort zu übertragen, muss der 6to4-Router einen Tunnel zu einem 6to4-Relay-Router einrichten. Der 6to4-Relay-Router leitet die 6to4-Pakete an das IPv6-Netzwerk und schließlich an den nativen IPv6-Standort. Wenn Ihr 6to4-konformer Standort Daten mit einem nativen IPv6-Standort austauschen muss, können Sie den entsprechenden Tunnel mit dem Befehl 6to4relay einrichten.
Da die Verwendung von Relais-Routern nicht sicher ist, wird das Tunneling zu einem Relay-Router in Oracle Solaris standardmäßig deaktiviert. Berücksichtigen Sie diese Aspekte beim Erstellen eines Tunnels zu einem 6to4-Relay-Router, bevor Sie dieses Szenario umsetzen. Ausführliche Informationen zu 6to4-Relay-Routern finden Sie unter Sicherheitsbetrachtungen bei Tunneln zu einem 6to4-Relay-Router. Wenn Sie sich entschließen, die Unterstützung für 6to4-Relay-Router zu implementieren, finden Sie die zugehörigen Verfahren unter So konfigurieren Sie einen 6to4-Tunnel.
Der Befehl 6to4relay weist die folgende Syntax auf:
6to4relay -e [-a IPv4-address] -d -h |
Unterstützt Tunnel zwischen dem 6to4-Router und einem Anycast 6to4-Relay-Router. Die Endpunktadresse des Tunnels wird dann auf 192.88.99.1 gesetzt, die Standardadresse für die Anycast-Gruppe der 6to4-Relay-Router.
Unterstützt Tunnel zwischen dem 6to4-Router und einem 6to4-Relay-Router mit der angegebenen IPv4-Adresse.
Deaktiviert die Unterstützung für das Tunneling zu einem 6to4-Relay-Router, die Standardeinstellung für Oracle Solaris.
Zeigt die Hilfe für 6to4relay an.
Weitere Informationen finden Sie in der Manpage 6to4relay(1M).
Der Befehl 6to4relay ohne Argumente zeigt den aktuellen Status der Unterstützung für 6to4-Relay-Router an. Das folgende Beispiel zeigt die Standardeinstellung für die Oracle Solaris-Implementierung von IPv6 an.
# /usr/sbin/6to4relay 6to4relay:6to4 Relay Router communication support is disabled |
Wenn die Relay-Router-Unterstützung aktiviert ist, liefert der Befehl 6to4relay die folgende Ausgabe:
# /usr/sbin/6to4relay 6to4relay:6to4 Relay Router communication support is enabled IPv4 destination address of Relay Router=192.88.99.1 |
Wenn Sie die Option -a und eine IPv4-Adresse mit dem Befehl 6to4relay angeben, wird die mit -a angegebene IPv4-Adresse anstelle von 192.88.99.1 angezeigt.
6to4relay meldet die erfolgreiche Ausführung der Optionen -d, -e und-a IPv4-Adresse nicht. Jedoch zeigt 6to4relay bei der Ausführung dieser Optionen eventuell generierte Fehlermeldungen an.
Mit dem Befehl ifconfig können Sie IPv6-Schnittstellen aktivieren und das Tunneling-Modul plumben. ifconfig verwendet einen erweiterten Satz ioctls, um sowohl IPv4- als auch IPv6-Netzwerkschnittstellen zu konfigurieren. Im Folgenden werden die ifconfig-Optionen für die Unterstützung von IPv6-Vorgängen aufgeführt. Unter Überwachen der Schnittstellenkonfiguration mit dem Befehl ifconfig finden Sie die IPv4- und IPv6-Aufgaben, die ifconfig einbeziehen.
Richtet den Schnittstellenindex ein.
Richtet die Tunnelquelle oder das -ziel ein.
Erstellt die nächste verfügbare logische Schnittstelle.
Löscht die logische Schnittstelle mit der angegebenen IP-Adresse.
Richtet eine Point-to-Point-Zieladresse für eine Schnittstelle ein.
Richtet eine Adresse, Netzmaske oder beides für eine Schnittstelle ein.
Richtet die Teilnetzadresse einer Schnittstelle ein.
Aktiviert oder deaktiviert die Paketübertragung auf einer Schnittstelle.
Kapitel 7Konfigurieren eines IPv6-Netzwerks (Vorgehen) enthält Verfahren zur IPv6-Konfiguration.
Die folgende Syntax des Befehls ifconfig erstellt die logische Schnittstelle hme0:3:
# ifconfig hme0 inet6 addif up Created new logical interface hme0:3 |
Diese Syntax des Befehls ifconfig überprüft, ob die neue Schnittstelle korrekt erstellt wurde:
# ifconfig hme0:3 inet6 hme0:3: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2 inet6 inet6 fe80::203:baff:fe11:b321/10 |
Die folgende Syntax des Befehls ifconfig löscht die logische Schnittstelle hme0:3.
# ifconfig hme0:3 inet6 down # ifconfig hme0 inet6 removeif 1234::5678 |
# ifconfig ip.tun0 inet6 plumb index 13 |
Öffnet einen Tunnel, der dem Namen der physikalischen Schnittstelle zugeordnet wird.
# ifconfig ip.tun0 inet6 ip.tun0: flags=2200850<POINTOPOINT,RUNNING,MULTICAST,NONUD, #IPv6> mtu 1480 index 13 inet tunnel src 0.0.0.0 inet6 fe80::/10 --> :: |
Konfiguriert die Datenströme, die für TCP/IP erforderlich sind, um das Tunnelgerät zu verwenden und den Gerätestatus zu melden.
# ifconfig ip.tun0 inet6 tsrc 120.46.86.158 tdst 120.46.86.122 |
Konfiguriert die Quell- und Zieladresse des Tunnels.
# ifconfig ip.tun0 inet6 ip.tun0: flags=2200850<POINTOPOINT,RUNNING,MULTICAST,NONUD, IPv6> mtu 1480 index 13 inet tunnel src 120.46.86.158 tunnel dst 120.46.86.122 inet6 fe80::8192:569e/10 --> fe80::8192:567a |
Meldet dem neuen Gerätestatus nach der Konfiguration.
Dieses Beispiel für die Konfiguration einer 6to4-Pseudoschnittstelle verwendet die Teilnetz-ID 1 und gibt die Host-ID in hexadezimaler Form an:
# ifconfig ip.6to4tun0 inet6 plumb # ifconfig ip.6to4tun0 inet tsrc 129.146.86.187 \ 2002:8192:56bb:1::8192:56bb/64 up |
# ifconfig ip.6to4tun0 inet6 ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11 inet tunnel src 129.146.86.187 tunnel hop limit 60 inet6 2002:8192:56bb:1::8192:56bb/64 |
Das folgende Beispiel zeigt die Kurzform für die Konfiguration eines 6to4-Tunnels:
# ifconfig ip.6to4tun0 inet6 plumb # ifconfig ip.6to4tun0 inet tsrc 129.146.86.187 up |
# ifconfig ip.6to4tun0 inet6 ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11 inet tunnel src 129.146.86.187 tunnel hop limit 60 inet6 2002:8192:56bb::1/64 |
Der Befehl netstat zeigt sowohl den IPv4- als auch den IPv6-Netzwerkstatus an. Setzen Sie den Wert DEFAULT_IP in der Datei /etc/default/inet_type, um auszuwählen, welche Protokollinformationen angezeigt werden. Alternativ können Sie hierzu die Befehlszeilenoption -f verwenden. Mit einer permanenten Einstellung von DEFAULT_IP können Sie sicherstellen, dass netstat nur IPv4-Informationen anzeigt. Diese Einstellung können Sie durch die Option -f außer Kraft setzen. Weitere Informationen zur inet_type-Datei finden Sie in der Manpage inet_type(4).
Mit der Option -p des Befehls netstat zeigen Sie die net-to-media-Tabelle an, die ARP-Tabelle für IPv4 und den Neighbor-Cache für IPv6. Weitere Informationen finden Sie in der Manpage netstat(1M) Unter So zeigen Sie den Status der Sockets an finden Sie Beschreibungen von Verfahren, die diesen Befehl verwenden.
Mit dem Befehl snoop können Sie sowohl IPv4- als auch IPv6-Pakete erfassen. Dieser Befehl kann IPv6-Header, IPv6-Extension-Header, ICMPv6-Header und Neighbor Discovery-Protokolldaten anzeigen. Standardmäßig zeigt der Befehl snoop sowohl IPv4- als auch IPv6-Pakete an. Wenn Sie das Protokollschlüsselwort ip oder ip6 angeben, zeigt der Befehl snoop nur IPv4- bzw. IPv6-Pakete an. Mit der IPv6-Filteroptionen können Sie alle Pakete (sowohl IPv4 als auch IPv6) filtern, um nur IPv6-Pakete anzuzeigen. Weitere Informationen finden Sie in der Manpage snoop(1M) Unter So überwachen Sie den IPv6-Netzwerkverkehr finden Sie Verfahren, die den snoop-Befehl verwenden.
Der Befehl route kann sowohl an IPv4- als auch an IPv6-Routen angewendet werden; IPv4-Routen sind dabei die Standardeinstellung. Wenn Sie die Option -inet6 direkt hinter dem Befehl route in die Befehlszeile eingegeben, werden die Vorgänge an IPv6-Routen durchgeführt. Weitere Informationen finden Sie in der Manpage route(1M).
Mit dem Befehl ping können sowohl IPv4- als auch IPv6-Protokolle zum Sondieren von Zielhosts verwendet werden. Die Protokollauswahl hängt von den Adressen ab, die vom Namensserver für den angegebenen Zielhost zurückgegeben werden. Standardmäßig verwendet der Befehl ping das IPv6-Protokoll, wenn der Namensserver eine IPv6-Adresse für den Zielhost zurückgibt. Gibt der Server nur eine IPv4-Adresse zurück, verwendet ping das IPv4-Protokoll. Sie können diese Option mit der Befehlszeilenoption -A außer Kraft setzen, indem Sie angeben, welches Protokoll verwendet werden soll.
Ausführliche Informationen finden Sie in der Manpage ping(1M) Verfahren, die den Befehl ping verwenden, finden Sie unter Ermitteln des Status von Remote-Hosts mit dem Befehl ping.
Mit dem Befehl traceroute können Sie sowohl IPv4- als auch IPv6-Routen zu einem bestimmten Host verfolgen. Aus Sicht des Protokolls verwendet traceroute den gleichen Algorithmus wie ping. Verwenden Sie die Befehlszeilenoption -A, um diese Auswahl außer Kraft zu setzen. Mit der Befehlszeilenoption -a können Sie jede einzelne Route an jede Adresse eines Multihomed-Host verfolgen.
Ausführliche Informationen finden Sie in der Manpage traceroute(1M) Verfahren, die den Befehl traceroute verwenden, finden Sie unter Anzeigen von Routing-Informationen mit dem Befehl traceroute.