IPv6/on-openvpn-v6: Unterschied zwischen den Versionen

Aus Opennet
Wechseln zu: Navigation, Suche
(Einschränkungen)
 
Zeile 1: Zeile 1:
{{Hinweis|'''Hinweis:''' Derzeit befindet sich das '''on-openvpn-v6''' Paket im Alpha-Teststadium.}}
+
{{Hinweis|'''Hinweis:''' Derzeit befindet sich das '''on-openvpn-v6''' Paket im Teststadium.}}
  
 
Das Opennet Paket on-openvpn-v6 soll Opennet Nutzern IPv6 Konnektivität ermöglichen.  
 
Das Opennet Paket on-openvpn-v6 soll Opennet Nutzern IPv6 Konnektivität ermöglichen.  

Aktuelle Version vom 23. Oktober 2020, 19:50 Uhr


Das Opennet Paket on-openvpn-v6 soll Opennet Nutzern IPv6 Konnektivität ermöglichen.

Inhaltsverzeichnis

[Bearbeiten] Funktionsweise

  • Voraussetzungen: das Modul on-openvpn muss installiert sein und die Zertifikate für ein User-VPN Tunnel müssen vorhanden sein
  • der Opennet Knoten baut eine OpenVPN Verbindung zum Server gai auf (IP: fd32:d8d3:87da::245 , Port: 1700)
  • auf gai läuft ein OpenVPN Dienst, welcher Layer2-Verbindungen zur Verfügung stellt (interface: tap-users-v6)
  • nach Aufbau des VPN Tunnels, holt sich der Opennet Knoten per DHCPv6 Prefix Delegation einen IPv6 Adressbereich (/60). Adressen aus diesem Bereich werden automatisch per SLAAC an alle Geräte (per radvd Dienst) im LAN (br-lan) verteilt
  • alternativ können angeschlossene Router sich aus dem zugewiesenem /60 Adressbereich per DHCPv6 Prefix Delegation ebenfalls ein (z.B. ein /64) Netz zuteilen lassen
  • jetzt haben alle Endgeräte eine IPv6 Adressen und erreichen das Internet, DNS funktioniert auch über IPv6

[Bearbeiten] Installations-/Konfigurations-/Troubleshooting-Anleitung

1. Paket installieren mit

opkg update
opkg-oni install on-openvpn-v6

Wir benötigen hier eine sehr neue Firmware Version (>= r2798). Ansonsten findet er das Paket nicht zum Installieren.

2. Es muss nun geprüft werden, ob eine IPv6 Verbindung zum Server gai besteht oder ob hier IPv4 genutzt werden muss.

2.1. IPv6: Testen, ob der Knoten den Server gai per IPv6 erreichen kann mit "ping6 fd32:d8d3:87da::245"

 root@AP-2-51:~# ping6 fd32:d8d3:87da::245
 PING fd32:d8d3:87da::245 (fd32:d8d3:87da::245): 56 data bytes
 64 bytes from fd32:d8d3:87da::245: seq=0 ttl=63 time=15.887 ms
 64 bytes from fd32:d8d3:87da::245: seq=1 ttl=63 time=16.456 ms

Wenn der Ping erfolgreich ist, weiter bei Punkt 3 lesen. Wenn der Ping nicht erfolgreich ist, dann könntest du entweder

  • auf dem UGW AP, welches dir Internet zur Verfügung stellt den Server gai.on-i.de zusätzlich hinzufügen als UGW Server
  • oder dann kann ein Workaround aktiviert werden, welche über IPv4 eine Verbindung zum VPN Server herstellt (Punkt 2.2.)

2.2. IPv4: Testen, ob der Knoten den Server gai per IPv4 erreichen kann mit "ping 192.168.0.245"

 root@AP-2-51:~# ping 192.168.0.245
 PING 192.168.0.245 (192.168.0.245): 56 data bytes
 64 bytes from 192.168.0.245: seq=0 ttl=61 time=44.751 ms
 64 bytes from 192.168.0.245: seq=1 ttl=61 time=41.677 ms
 ^C
 --- 192.168.0.245 ping statistics ---
 2 packets transmitted, 2 packets received, 0% packet loss
 round-trip min/avg/max = 41.677/43.214/44.751 ms

Wenn ledigliche eine Verbindung per IPv4 möglich ist, dann muss folgender Befehl ausgeführt werden, damit die Konfigurationsdatei angepasst wird:

 root@AP-2-51:~# on-function connect_vpn_v6_server_via_v4
 root@AP-2-51:~# /etc/init.d/openvpn restart

3. Warten, bis sich der VPN Tunnel aufgebaut hat (Interface tap-on-user-v6 vorhanden).

Wurde der Tunnel nicht aufgebaut, dann bitte folgende Dinge prüfen:

  • ist in uci der VPN Tunnel notiert:
 root@AP-2-51:~# uci show | grep openvpn_v6
 openvpn.gw_openvpn_v6_fd32_d8d3_87da__245_1700_udp=openvpn
 openvpn.gw_openvpn_v6_fd32_d8d3_87da__245_1700_udp.enabled='1'
 openvpn.gw_openvpn_v6_fd32_d8d3_87da__245_1700_udp.config='/var/etc/openvpn-v6//gw_openvpn_v6_fd32_d8d3_87da__245_1700_udp.conf'
  • gibt es "verdächtige" Syslog Meldungen
 logread

4. Testen der IPv6 Verbindung

Wir können jetzt das externe Interface des Servers gai pingen:

 root@AP-2-51:~# ping6 2001:67c:1400:2430::1
 PING 2001:67c:1400:2430::1 (2001:67c:1400:2430::1): 56 data bytes
 64 bytes from 2001:67c:1400:2430::1: seq=0 ttl=64 time=79.567 ms
 64 bytes from 2001:67c:1400:2430::1: seq=1 ttl=64 time=56.208 ms
 ^C
 --- 2001:67c:1400:2430::1 ping statistics ---
 2 packets transmitted, 2 packets received, 0% packet loss
 round-trip min/avg/max = 56.208/67.887/79.567 ms


Und ein Test mit Namensauflösung sollte auch funktionieren:

 root@AP-2-51:~# ping6 ct.de
 PING ct.de (2a02:2e0:3fe:1001:302::): 56 data bytes
 64 bytes from 2a02:2e0:3fe:1001:302::: seq=0 ttl=57 time=54.822 ms
 64 bytes from 2a02:2e0:3fe:1001:302::: seq=1 ttl=57 time=57.331 ms
 ^C
 --- ct.de ping statistics ---
 2 packets transmitted, 2 packets received, 0% packet loss
 round-trip min/avg/max = 54.822/56.076/57.331 ms

[Bearbeiten] IPv6 only

  • auf Opennet Knoten das on-openvpn Modul deaktivieren (nicht deinstallieren!)
  • der IPv6 Tunnel sollte natürlich funktionieren
  • auf den Endgeräten (Laptop, Handy, ...) IPv4 deaktivieren und IPv6 aktiviert lassen
  • auf dem Endgerät folgendes Testen:
 root@oni06:~# ping ct.de
 PING ct.de(redirector.heise.de (2a02:2e0:3fe:1001:302::)) 56 data bytes
 64 bytes from redirector.heise.de (2a02:2e0:3fe:1001:302::): icmp_seq=1 ttl=56 time=49.3 ms
 64 bytes from redirector.heise.de (2a02:2e0:3fe:1001:302::): icmp_seq=2 ttl=56 time=114 ms
 root@oni06:~# telnet relay.heise.de 25
 Trying 2a00:e68:14:800::19:19...
 Connected to relay.heise.de.
 Escape character is '^]'.
 220 relay.heise.de ESMTP.
 EHLO
 250-relay.heise.de Hello p200300c4671ec90071d10b583d6c8c71.dip0.t-ipconnect.de [2003:c4:671e:c900:71d1:b58:3d6c:8c71]
 250-SIZE 52428800
 250-8BITMIME
 250-PIPELINING
 250-STARTTLS
 250 HELP

[Bearbeiten] Status des Pakets

Stand 4.4.2020: Dieses Paket stellt einen ersten Versuch da, einigen Opennet Nutzern Zugriff per IPv6 zu ermöglichen. Abhängig von den Tests wird sich herausstellen, in welche Richtung weiter entwickelt wird.

[Bearbeiten] Einschränkungen

uci add firewall rule # =cfg1b92bd
uci set firewall.@rule[-1].src='on_vpn_v6'
uci set firewall.@rule[-1].name='on-user-icmpv6-lan'
uci set firewall.@rule[-1].limit='1000/second'
uci set firewall.@rule[-1].family='ipv6'
uci set firewall.@rule[-1].target='ACCEPT'
uci set firewall.@rule[-1].dest='lan'
uci add_list firewall.@rule[-1].proto='icmp'
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge