IPv6 und HeimautomatisierungSeit kurzen ist mein Internetanbieter Unitymedia. Satte Bandbreite zu günstigem Preis hat mich gelockt. Wie so manch Anderer auch, habe ich erst recht spät entdeckt, dass man hinter einem DS-Lite-Gateway hängt und es damit ziemlich Essig ist mit Port-Forwarding und IPv4. Da ich parallel auch noch ein wenig mit Heimautomatisierung zu spielen begonnen habe, habe ich natürlich ein gewisses Interesse daran, auch ein paar Funktionen über das Internet zu nutzen. Auf dieser Seite werde ich so nach und nach dokumentieren, welche Lösungen ich nutze, um dem DS-Lite-Horror zu entkommen. IPv6Die gute Nachricht beim Unitymedia-Anschluss: IPv6 geht, ohne dass der Provider sich irgendwie störend dazwischenklemmt. Das lässt sich ganz gut überprüfen, indem man z.B. eine IPv6 Online-Ping-Seite nutzt. Die eigene IPv6-Adresse kriegt man z.B. über Wie ist meine IP raus, wenn man nicht Bordmittel wie ipconfig oder ifconfig nutzt. Das funktioniert sogar mit eingeschalteter Firewall am Technicolor TC7200 Router (sofern die Client-Firewall Ping nicht blockt). Die Herausforderung besteht also "nur noch" darin, von nicht-IPv6-Netzen auf IPv6-Adressen zuzugreifen. Kommerzielle Anbieter haben hierfür Relay-Lösungen im Angebot, aber dann wäre der Preisvorteil des Unitymedia-Anschlusses schnell dahin. Also: Selbst ist der Mann. Geräte im Internet mit IPv6 veröffentlichenAls erstes mal müssen die Geräte, welche man erreichbar haben will, per IPv6 erreichbar sein. Das geschieht auf dem Technicolor TC7200 über Portweiterleitungen. Das ist fast analog zu IPv4 NATting - nur dass hier wirklich weitergeleitet wird, also eben kein NAT stattfindet. Um also meinen Raspberry auf Port 80 ins Internet freizugeben, habe ich folgende Schritte unternommen:
Damit kann ich im Browser die URL http://[<IPv6-Adresse>] aufrufen (<IPv6-Adresse> ist die des Raspberry - die eckigen Klammer müssen mit eingegeben werden!) und lande auf dem Webserver auf meinem Raspberry. Voila! IPv4 nach IPv6 RelayingHier werde ich - soweit ich es ausprobiere - Methoden zum Weiterleiten von IPv4 nach IPv6 beschreiben. Ich kann noch nicht sagen, wie viel hier am Ende stehen wird... Auf jeden Fall wird es nach und anch mehr werden. HTTP relayAls erstes habe ich versucht, meinen Raspberry Webserver unter IPv4 erreichbar zu machen. Dafür stehen mir zum Glück folgende Möglichkeiten zur Verfügung:
Letzteres ist nicht so ungewöhnlich - wie es mit IPv6 aussieht, kann ich schwer sagen. Um herauszufinden, ob das eigene Hosting-Paket IPv6 kann, ist ein starkes Indiz die Ausführung von folgendem Befehl (am Beispiel meines Hosters/meiner Domäne) - hier die Windows-Variante, Linux geht aber genauso:
> nslookup webvoss.de Die hervorgehobene Adresse ist eine IPv6-Adresse, und damit ein starkes Indiz, dass mein Provider IPv6-fähig ist. Eine kurze suche im allwissenden Internet ergibt etliche PHP-Proxies, die per PHP Web-Requests weitertunneln. Dieser hier ist recht simpel und gut zu verstehen, weswegen ich ihn installiert habe. Er macht also folgendes: Rufe ich http://webvoss.de/test/demo.html auf, leitet der PHP-Proxy die Anfrage unter der Haube an http://mein.raspberry.de/test/demo.html weiter und liefert dann das Ergebnis an mich zurück. Es sieht also so aus, als wäre mein Raspberry tatsächlich unter der Domäne webvoss.de erreichbar. Funktioniert auch soweit so gut, ich habe nur eine kleine, recht hemdsärmlig gemachte Änderung eingebaut, so dass ich eine weitere Ebene in die URL einfügen kann - es wird also http://webvoss.de/proxy/test/demo.html an http://mein.raspberry.de/test/demo.html weitergeleitet (ohne /proxy). Insgesamt sehen also die ersten Zeilen im PHP-Proxy-Script so aus: <?php Das geht auch eleganter, reicht mir aber erstmal. Fett hervorgehoben die IPv6 des Raspberry. Außerdem muss man die .htaccess noch anpassen: Options +FollowSymLinks So eingerichtet, klappt der Zugriff bestens. (Anmerkung: Natürlich gibt es webvoss.de/proxy nicht so - probierte es gar nicht erst ) Was bleibt zu tun? Zugriffskontrolle. Ich will meinen Raspberry noch so einstellen, dass er Webanfragen aus dem Internet ablehnt, außer sie kommen vom Proxyscript. ToDo... Und: Nur recht statische Webseiten werden so funktionieren. Irgendwann will ich aber das Bild der Raspberry Kamera streamen... ToDo. Coming next: VPN mit SoftEtherEin voller VPN-Zugang mit SoftEther sollte sich eigentlich hinkriegen lassen - das gehe ich in den nächsten Wochen mal an. |
Links zum Thema |