fragen stichworte

Leiten Sie den IPv6-Verkehr durch den IPv4-Tunnel

Meine aktuelle Situation ist, dass ich IPv6 verwenden möchte, aber momentan keine IPv6-Adresse zugewiesen habe. Ich habe jedoch einen Server mit einer Dual-Stack-Schnittstelle, einschließlich einer öffentlichen IPv4- und IPv6-Adresse (nur ein/128-Subnetz). Also dachte ich mir: Hey, wäre es nicht schön, die IPv6-Fähigkeit des Servers zu nutzen?

Zum ersten Mal habe ich einen OpenVPN-Server eingerichtet, der meinen gesamten IPv4-Verkehr durch einen IPv4-Tunnel leitet. Das hat gut funktioniert. Danach googelte ich viel und versuchte eine Lösung für meinen Bedarf zu finden, den gesamten IPv6-Verkehr durch diesen Tunnel zu leiten. Ich habe viele Tutorials gefunden, die zeigen, wie jedem Benutzer, der sich mit dem OpenVPN-Server verbindet, eine neue IPv6-Adresse aus einem eigenen Subnetz zugewiesen wird. Aber leider habe ich nur eine IPv6-Adresse: die für meinen Server, die sich nicht in meinem LAN befindet (weil sie für den Hoster meines Servers eine kostbare Sache sind, wissen Sie ...). Ich habe versucht, NAT für meine einzige IPv6-Adresse analog wie für meine IPv4-Adresse anzuwenden, scheiterte aber daran ...


server.conf:

port 1194
proto tcp

dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem

server 10.8.0.0 255.255.255.0
server-ipv6 fe80::/64

ifconfig-pool-persist ipp.txt

push "route 192.168.0.0 255.255.255.0"
push "route-ipv6 2000::/3"

push "redirect-gateway def1 bypass-dhcp"
push "redirect-gateway ipv6"

push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"

keepalive 10 120

tls-auth ta.key 0
key-direction 0

cipher AES-128-CBC   # AES
auth SHA256

comp-lzo

user openvpn
group openvpn

persist-key
persist-tun

status openvpn-status.log

verb 3

iptable:

iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -o ens3 -j MASQUERADE
ip6tables -t nat -A POSTROUTING -s fe80::/64 -o ens3 -j MASQUERADE

antworten

IPv6-Adressen sind nicht wertvoll, obwohl es unwahrscheinlich ist, dass Hosting-Dienste Tunnelbroker werden möchten. IPv6 sollte kein NAT erfordern, obwohl experimentelle Implementierungen vorhanden sind.

Der Hauptvorteil von IPv6 gegenüber IPv4 besteht darin, dass kein NAT erforderlich ist. Wenn Sie versuchen, IPv6 in Ihrem LAN zu installieren, konfigurieren Sie Ihr LAN für IPv6. Der Nachteil ist, dass Sie eine Firewall entsprechend einrichten müssen, da Sie kein NAT mehr haben, um Ihr Netzwerk zu schützen.

Sie können 6to4 verwenden, um eine Adresse basierend auf der externen IP Ihres LANs zu erstellen. Dadurch erhalten Sie einen/64-Block für Ihr LAN. Sie können dies dann über Ihr VPN weiterleiten, um IPv6-Zugriff auf Ihren Server zu ermöglichen. Dies wäre nicht global routbar, da externe Hosts in Ihr LAN routen. (Sie könnten dasselbe auf Ihrem Server versuchen.) Ich habe meine Erfahrungen mit der Implementierung von IPv6 6to4 unter OpenWRT dokumentiert, das meistens auf andere Linux-basierte Server anwendbar ist (die Konfiguration unterscheidet sich).

Ich würde jedoch empfehlen, einen Tunnelbroker zu verwenden. Sie bieten mindestens einen/64-Block und auf Anfrage weitere Blöcke. Überspringen Sie die Verwendung eines VPN für IPv6 und verwenden Sie Firewalls, um den Zugriff entsprechend einzuschränken/zuzulassen. Ich habe zu einem Tunnelbroker gewechselt und in Implementieren von IPv6 Part 2 weitere Einstellungen dokumentiert.