Wie erreiche ich IPv4-Adressen von einem reinen IPv6-Netzwerk aus?

Wie erreiche ich IPv4-Adressen von einem reinen IPv6-Netzwerk aus?

Ich möchte diese Adresse über eine IPv6-Adresse erreichen:
http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/

In unseren Freifunk-Routern ist kein DNS vorhanden, daher kann der Name downloads.openwrt.orgnicht aufgelöst werden. Alle Server im Internet sind nur über IPv6-Adressen erreichbar. Nun können wir diesen Paketspiegel nicht mehr vom Router aus erreichen, um Pakete darüber zu installieren opkg install.

Es wäre eine Lösung, wenn wir unserer Konfiguration beispielsweise Folgendes hinzufügen könnten:

http://[2001:db8::1]/attitude_adjustment/12.09/ar71xx/generic/packages/

Unsere Router verwenden OpenWRT und sind nur IPv6-fähig. Ich möchte einen Eintrag hinzufügen, /etc/hostsdamit der Domänenname downloads.openwrt.orgin eine entsprechende IPv6-Adresse aufgelöst wird.

Ist es möglich, eine IPv6 auf eine Domäne umzuleiten?

Antwort1

Sie können nicht einfach eine IPv6-Adresse „hinzufügen“, um einen Host zu erreichen, der nur über IPv4 verfügbar ist. Dies sind zwei völlig unterschiedliche und inkompatible Protokolle.

Damit Ihr IPv6-nurDamit ein Netzwerk IPv4-Adressen erreichen kann, ist ein Gateway erforderlich, das Zugriff auf IPv4 hat. Dies geschieht im Allgemeinen mit einem NAT64/DNS64-Gateway, das IPv4-Adressen in „falsche“ IPv6-Adressen übersetzt, Verbindungen zu diesen „falschen“ IPv6-Adressen akzeptiert und die Verbindungen in das IPv4-Netzwerk übersetzt. Diese IPv6-Adressen liegen im 64:ff9b::/96Bereich.

In OpenWrt wird NAT64 mit Tayga und DNS64 mit Bind durchgeführt. Weitere Informationen zur Einrichtung finden Sie unterverfügbar im OpenWrt-Wiki. Sie benötigen Attitude Adjustment oder Barrier Breaker; frühere Versionen von OpenWrt boten keine ausreichende Unterstützung für IPv6 und andere Technologien.

Sie können öffentliche DNS64/NAT64-Resolver zu Ihrer /etc/resolv.conf hinzufügen:

nameserver 2001:67c:2b0::4
nameserver 2001:67c:2b0::6

Sie können die Übersetzung auch auf der Client-Site „rückgängig machen“, indem Sie464xlat. 464xlat verwendet die gleichen Tools (wie oben erwähnt, aber auf andere Weise). Mit 464xlat können Sie auch URLs mit wörtlichen IPs erreichen.

Antwort2

Die Domäne downloads.openwrt.orghat eine IPv4-Adresse, aber keine IPv6-Adresse. Sie können sie also nicht über IPv6 erreichen, es sei denn, Sie verwenden einen Übersetzungsmechanismus. Sie könnten NAT64 verwenden, um von einem Nur-IPv6-Client aus eine TCP-Verbindung zu diesem Nur-IPv4-Server herzustellen.

Aber warum sollten Sie einen reinen IPv6-Client verwenden? Dual Stack ist eine gute Idee, aber momentan ist IPv6 nur für Tests für diejenigen sinnvoll, die die Einschränkungen kennen, die sich daraus ergeben, wenn es zu viele reine IPv4-Hosts gibt.

Wenn Sie es schaffen, eine TCP-Verbindung zum Server zu öffnen, stehen Sie vor einer weiteren Herausforderung. HTTP Version 1.1 erfordert, dass der Client den Namen des Servers sendet, den er über die HTTP-Verbindung kontaktiert. Und viele Websites, darunter auch, downloads.openwrt.orgerfordern die Übermittlung dieses Headers.

Ihr HTTP-Client kann diesen Header nur senden, wenn er den zu sendenden Domänennamen kennt. Sie sollten dem Client also besser die ursprüngliche URL mitteilen und ihm irgendwie Zugriff gewähren, um diesen Namen in eine IP-Adresse aufzulösen. Wenn es IPv6 sein muss, bedeutet das immer noch, dass Sie NAT64 benötigen. Sie können jedoch eine Zuordnung vom Domänennamen zur NAT64-IP-Adresse eingeben /etc/hostsund diese sollte problemlos funktionieren.

Für einen einzelnen Domänennamen mag das gut funktionieren. Wenn Sie jedoch möchten, dass ein reiner IPv6-Host mehrere Domänen erreichen kann, ohne dass Sie jede einzelne /etc/hostsmit einer NAT64-Adresse versehen müssen, benötigen Sie eine dynamische Übersetzung der Adressen. Dafür ist DNS64 da.

Wenn der Client nun über IPv4-Zugriff verfügt und nur DNS fehlt, ist die Antwort viel einfacher. Geben Sie einfach die IPv4-Adresse ein, /etc/hostswie davidgo vorgeschlagen hat. Sie müssen diese Datei natürlich jedes Mal aktualisieren, wenn sich die IP-Adresse des Servers ändert, was hoffentlich nicht allzu oft vorkommt.

Antwort3

Ich glaube, Sie stellen möglicherweise die falsche Frage. Sie können eine IPv6-Adresse nicht zu einer Domäne umleiten, da der Vorgang umgekehrt funktioniert, d. h. eine Domäne wird in einen [oder mehrere] Hosts aufgelöst.

Ich konnte keine Informationen zu Ihrem Router finden, aber wenn darauf OpenWRT läuft, sollten Sie in der Lage sein, einen Eintrag in /etc/hosts hinzuzufügen, sodass der Domänenname in die entsprechende IP-Adresse aufgelöst wird.

verwandte Informationen