SSH über Internet mit IPv6 nicht erreichbar

l8lechi

Cadet 2nd Year
Registriert
Apr. 2015
Beiträge
18
Moin!

Kurze Erkläuterung zu meiner Idee und dem daraus entstandenem Problem:

Ich habe mir ein ziemlich altes Thinkpad gekauft um auch unterwegs arbeiten zu können. Meine Idee war, dass ich auf meiner Workstation zuhause OpenSSH als Server laufen lasse, und mich von unterwegs via SSH nach Hause verbinden kann.

Ich bin bei Vodafone mit einem Gigabit-Vertrag (9er WG :D) und habe hier ne gemietete Fritzbox 6660 Cable.

Die Fritzbox verwendet einen DS-Lite Tunnel. Irgendwo habe ich gelesen dass das dann über IPv4 sowieso nicht mehr geht, darum habe ich direkt beschlossen das über IPv6 zu machen. Warum auch nicht.

Also habe ich mir erstmal openssh-server installiert, in /etc/ssh/sshd_config den Port und PubkeyAuthentication eingestellt und bei der PC-Firewall den Port freigegeben.
Dann kam der tricky Teil, weil ich eigentlich nicht so viel Ahnung von Netzwerken habe - die Routereinstellungen ändern.
Ich habe folgendes getan:
  • Auf fritz.box eingeloggt.
  • Unter Internet - Freigaben auf Gerät für Freigaben hinzufügen geclickt
  • Meine Workstation ausgewählt
    • IPv6 Interface ID eingestellt auf etwas was ich mir merken kann
    • IPv6 Einstellungen:
      • PING6 freigeben
      • Firewall für delegierte IPv6 Präfixe dieses Gerätes öffnen
      • NICHT die exposed host Option angehakt
    • Auf Neue Freigabe geclickt
      • Anwendung: andere Anwendung
      • Bezeichnung: ssh
      • Protokoll: TCP
      • Port an Gerät: ABCDE bis ABCDE (das ist auch der Port den ich in /etc/ssh/sshd_config benutzt hab)
      • Port extern gewünscht: ABCDE
      • Freigabe aktivieren angekreuzt
      • Internetzugriff über IPv4 und IPv6
    • Übernehmen
Auf meinem Computer habe ich dann noch die IPv6 Adresse im NetworkManager hinzugefügt die der IPv6 Interface ID entspricht.

Über mein lokales Netzwerk ist es mir jetzt möglich mich mit SSH von meinem Laptop und meinem Handy aus mit meinem PC zu verbinden:
ssh username@IPv6:Präf:ix00:0000:IPv6:Inte:rfac:eID0 -p ABCDE


Klappt ohne Probleme. Versuche ich es aber über das Internet kommt immer der Fehler
Connection timed out

Auf keycdn.com hab ich dann den IP locator Test, den Ping Test und den Traceroute Test gemacht, um zu schauen woran es liegt.
Der Ping locator Test funktioniert einwandfrei.
Beim Ping Test habe ich 100% Packet loss bei allen Servern.
Beim Traceroute Test auch, allerdings habe ich etwas was vielleicht hilft gefunden:
  • xxxx:xxxx::1a:1
  • xxxx:xxxx:0:336::2
oder
  • xxxx:xxxx:42:1
  • xxxx:xxxx:0:359::2
Die xxxx-Teile sind immer gleich, und stimmen mit den ersten zwei Abschnitten der IPv6 von meinem Router überein (diese hat aber insgesamt vier Abschnitte).
Mach ich irgendwas falsch? Lässt mich meine Fritzbox oder Vodafone nicht durch?

Danke schonmal für Hilfe! :)

PS: Über IPv4 funktioniert natürlich auch nichts obwohl ich es probiert habe - der Port sollte ja sowohl für IPv6 als auch IPv4 geöffnet sein.
 
riversource schrieb:
Dann hast du zumindest unter Windows keine IPv6 Nameserver.
Das kann ich verschmerzen. Ich habe gar kein Windows.

riversource schrieb:
Dann hab ich jetzt ganz schlechte Nachrichten für dich: Ohne IPv6 im LAN nutzt du es auch fürs Internet nicht.
Oh. Das ist ja schlimm. Dann sind sämtliche Ergebnisse von https://test-ipv6.com/ falsch. Dort steht:
Test mit IPv4 DNS-Eintrag Okay (0.753s) verwende ipv4
Test mit IPv6 DNS-Eintrag Okay (0.726s) verwende ipv6
Test mit Dual Stack DNS-Eintrag Okay (0.546s) verwende ipv6
Prüfung auf Dual-Stack-DNS und große Pakete Okay (0.156s) verwende ipv6
Großes IPv6-Paket testen Okay (0.646s) verwende ipv6
Prüfen, ob der DNS-Server Ihres ISPs IPv6 unterstützt Okay (1.405s) verwende ipv6
IPv4-Dienstleister finden Okay (0.700s) verwende ipv4 ASN 60294
IPv6-Dienstleister finden Okay (0.270s) verwende ipv6 ASN 60294

riversource schrieb:
Die Heimnetzgeräte brauchen IPv6 Adressen, Routen und DNS Server, sonst liegt die IPv6 Verbindung komplett lahm.
Die Heimnetzgeräte haben IPv6-Adressen und IPv6-Routen. Genauso hab ich im DNS-Server (dnsmasq) öffentliche IPv6-DNS-Server konfiguriert.

Nur nutz ich IPv6 für die Kommunikation zwischen den LAN-Geräten nicht. MIr erschießt sich darin kein Nutzen. Außerdem kann man nicht auf allen Geräten IPv6 konfigurieren. Mein TV und mein AVR bieten mir nur eine IPv4-Maske bei der manuellen Konfiguration an.
 
riversource schrieb:
Vielleicht greifst du nicht explizit drauf zu, aber unterm Blech werden sogar die meisten Verbindungen über IPv6 laufen, vor allem von Hintergrunddiensten.

Code:
ip -6 neigh show
fe80::464e:6dff:fe3c:9bd1 dev eno1 lladdr 44:4e:6d:3c:9b:d1 router STALE
Das hab ich grad auf meinem Desktoprechner abgefragt. Die MAC gehört meiner Fritzbox.

Ich kann aus diesem einen Eintrag keine Kommunikation zu anderen LAN-Geräten rauslesen.

Hingegen ist die ARP Table ziemlich gefüllt.
 
Pummeluff schrieb:
fritz.box → Heimnetz → Netz → (Reiter) Netzeinstellungen → Weitere → (Taste) IPv6:
[x] Router Advertisement im LAN aktiv​
[x] Unique Local Addresses (ULA) zuweisen, solange keine IPv6-Internetverbindung besteht (empfohlen)​
[ ] DNSv6-Server auch über Router Advertisement bekanntgeben (RFC 5006)
[x] DHCPv6-Server in der FRITZ!Box deaktivieren​
Das schaltet lediglich die Bekanntgabe des DNSv6-Servers aus und hat mit dem Thema hier nichts tun. Das wäre dann eine sinnvolle Einstellung, wenn man einen eigenen DNS-Server im Heimnetz hat (z. B. einen Pi-hole), aber diesen nicht über IPv6 erreichbar haben will, also den DNS-Server nur über IPv4 ansprechen will.
riversource schrieb:
Es gibt Systeme, die sich über DHCPv6 z.B. die Nameserver holen. Der muss anbleiben
Nein, das ist Geschichte, denn das betraf nur Windows und Windows-Versionen, die nicht mehr unterstützt werden. Ich würde Stand heute den DHCPv6-Server ebenfalls deaktivieren, auch weil man dann eine GUA als DNSv6-Server auch an einem dynamischen IPv6-Präfix nehmen könnte. Und selbst wenn, eine DNS-Auflösung über IPv6 was nie zwingend erforderlich, der Client löst dann über IPv4 auf. Auch über IPv4 kann man IPv6-Adressen auflösen, daher keine Beschränkung bezüglich IPv6.
l8lechi schrieb:
Lustigerweise kann ich, wenn dieser Port geöffnet ist […] über den ANDEREN Port
Merkwürdig. Keine Idee. Nur eine wilde Spekulation: Vielleicht öffnet Dein SSH-Server das Interface falsch und sagt ihm nicht, dass ein Server gestartet wurde, folglich legt sich wegen EEE oder sonst einem Strom-Spar-Mechanismus das Interface schlafen. Mein Tipp: Vom Server aus irgendwohin eine TCP-Verbindung aufbauen lassen, durch ein Skript.
 
Hi, ich wollte nur mal schnell ein kleines Update zur Lage geben:
Im Moment kann ich, solang tailscale up ist, auf meinen PC via IPv6 mit SSH zugreifen. Allerdings ohne Tailscale auf dem anderen Gerät zu benötigen.... ist mir immernoch ein Rätsel.

"Unglücklicherweise" muss ich mich jetzt damit erstmal zufrieden geben, da meine Bachelorarbeit ansteht die mit dem Thema so ziemlich garnichts zu tun hat, außer dass ich ab und zu Remotezugriff brauche ^^.

Wahrscheinlich werde ich mich erst danach wieder hiermit auseinander setzen können, deswegen ist (und war) hier erstmal eine Zeit lang Funkstille.
Falls jemand auf diesen Post stößt und ein ähnliches Problem hat, gerne melden, ich lese nach wie vor Antworten, nur kann ich im Moment nicht mehr ordentlich drauf antworten. ;)

LG!
 
Zurück
Oben