Testen von IPv6 zwischen Linux-Boxen in einem LAN

Testen von IPv6 zwischen Linux-Boxen in einem LAN

Ich versuche, ein IPv6-Testbed einzurichten. Ganz einfach: Nur zwei Ubuntu-Linux-Boxen, die über ein LAN miteinander kommunizieren. Beide Boxen haben eine funktionierende IPv4-Konnektivität, aber ich hatte kein Glück mit SSH über IPv6. Nach diesemWIE MAN, ich habe beiden Rechnern Adressen im lokalen Bereich (fec0::) gegeben. Auf der ersten Box habe ich Folgendes ausgeführt:

sudo ifconfig eth0 inet6 add fec0::1/64

Und beim zweiten Mal habe ich ausgeführt:

sudo ifconfig eth0 inet6 add fec0::2/64

Ich habe dann die Routing-Tabelle überprüft und jede scheint eine Route zu diesem Netzwerk zu haben, die über die eth0-Schnittstelle verläuft. Als nächstes habe ich einen Eintrag hinzugefügt, der /etc/hostsvon der zweiten Box auf die erste zeigt. Aber wenn ich dann versuche, per SSH von der zweiten Box auf die erste zu wechseln, bleibt der SSH-Client einfach hängen. Kein Fehler oder so. Wenn ich es tcpdumpauf dem Client ausführe, sehe ich überhaupt keinen IPv6-Verkehr. Was ist los?

Beachten Sie, dass es einwandfrei funktioniert, wenn ich per SSH ip6-localhostvon der Server-Maschine auf die Adresse selbst zugreife. Es scheint also kein SSH-Problem zu sein. Für jede Hilfe bin ich sehr dankbar.

Antwort1

Überprüfen Sie zunächst, ob die Option aktiviert ist ufw, wenn Sie sie installiert haben . Sie müssen sie aktivieren, da sonst der gesamte IPv6-Verkehr standardmäßig durch eine Firewall blockiert wird./etc/default/ufwIPV6=noyesufw

Versuchen Sie anschließend einige grundlegende Diagnosen, die Sie beim Erlernen von IPv6 kennen sollten.

Als Erstes sollten Sie das Paket installieren ndisc6und dann versuchen, eine Neighbor Solicitation durchzuführen. (Dies entspricht einer ARP-Anfrage in IPv4.)

sudo apt-get install ndisc6

Beachten Sie, dass universehierfür das Repository aktiviert sein muss.

Führen Sie dann von Ihrer ersten Maschine aus die folgenden Schritte aus:

ndisc6 fec0::2 eth0

Dadurch wird sichergestellt, dass Sie die MAC-Adresse für finden können fec0::2.

(Beachten Sie, dass das ndisc6Paket auch ein praktisches Dienstprogramm namens enthält, rdisc6das nützlich sein kann, wenn Sie einen IPv6-Router in Ihrem Netzwerk haben; es überprüft, ob der Router richtig reagiert.)

Nachdem Sie überprüft haben, dass die Nachbarerkennung funktioniert, versuchen Sie es als Nächstes ping6 fec0::2.

Weitere Diagnosen, die Sie möglicherweise veröffentlichen möchten, wenn weiterhin Probleme auftreten:

/sbin/ip -6 addr
/sbin/ip -6 neigh
/sbin/ip -6 route
sudo /sbin/ip6tables -L

Antwort2

Um wirklich helfen zu können, benötigen wir noch ein paar weitere Informationen. Können Sie beispielsweise erfolgreich über IPv6 zwischen den beiden Hosts pingen? Wenn Sie nicht pingen können, müssen Sie noch ein grundlegenderes Problem lösen ...

Angenommen, SiedürfenPing (grundlegende Konnektivität funktioniert) Überprüfen Sie in netstat (oder per SSH an die fec0::N-Adresse von der lokalen Box aus), ob Ihr SSH-Daemon auf den IPv6-Adressen lauscht, die Sie verwenden möchten. Möglicherweise müssen Sie Ihre sshd.conf-Datei bearbeiten und/oder sshd neu starten, damit es erkennt, dass es neue v6-Adressen zum Lauschen gibt.

verwandte Informationen