[Berlin-wireless] Diskussion: Auto-Portforwarding

Stefan Sperling stsp
So Okt 22 12:09:35 CEST 2006


On Sun, Oct 22, 2006 at 08:18:42AM +0200, Sven-Ola Tuecke wrote:
> Hintergrund: In den meisten Netzen haben die Internet-Gateways eine 
> (dynamische) offizielle IP-Adresse. Per NAT kann man draussen  z.B. Webseiten 
> abrufen. Man kann aber keine anbieten.

Super das du das ansprichts. Du scratchst einen Itch ;-)

Das NAT ist für mich persönlich das grösste Manko eines Freifunk-only
Internetanschlusses - neben dem Problem dass der Upstream auf den meisten
DSL Anschlüssen (und somit den meisten Freifunk HNAs) viel zu knapp ist.

Ich hatte eine Zeit lang zuhause einen imaps server laufen, der meine Mails
von 4 verschiedenen Accounts schön vorsortiert zusammenfasste und von
"überall erreichbar" anbot - irgendwann war mir die Sache aber aufgrund
des knappen Upstreams bei meinem HNA und des Portforwardgerangels dann
doch zu umständlich.

SSH Zugang nach Hause ist mir ziemlich wichtig, und das läuft zur
Zeit über ein manuell eingestelltes Portforwarding von meinem
"Standard HNA". Da dieser natürlich wie alles andere auch keine
100%ige Uptime garantieren kann, wäre es natürlich super, wenn sich das
Portforwarding im Falle eines Ausfalls eine andere HNA suchen 
und dann das neue IP:Port Pärchen irgendwo für mich erreichbar
kundtun könnte. Redundanz ist immerhin ein Freifunk-only feature,
das auch der beste DSL Anschluss (alleine) nicht bieten kann :)

> Man koennte daher:
> 
> a) sich einen offiziellen IP-Bereich greifen und in Zusammenarbeit mit 
> irgendeinem Provider ein AS betreiben. Damit erhaelt jeder Node eine 
> offizielle IP-Adresse, die im Internet geroutet wird. Machen die Wiener so. 

Und jeder Node macht eine VPN Verbindung zu besagtem ISP?
Und wenn die HNA umspringt, wird der Tunnel kurz unterbrochen?

Falls der Plan ist, Traffic vom ISP zum Freifunk nur über einen
"zentralen" Freifunk Node zu schicken, weiss ich nicht, wie man mit
Segmenten des Netzes umgehen soll, die sich nicht untereinander erreichen
können. Da gibts in Berlin einige von. Ich kann Weissensee von Kreuzberg
aus nicht pingen, z.B.

Gibts ISPs in Berlin, die das machen würden?
Ich könnte mal beim in-berlin anfragen.
Die dynamische Lösung b) hat natürlich den Vorteil, die Dezentralität
des Freifunknetzes nicht anzurühren. Daher würde ich sie bevorzugen.

> b) man kann mit Portforwarding arbeiten. Das nicht so aufwaendig und wuerde 
> auch mit den typischen Endkunden-Internetzugaengen klappen. Ist eine 
> Uebergangsloesung - und ja: man kann Filesharing dann auch besser betreiben. 

Würde ich eher als "Dynamische Lösung" als Uebergangsloesung bezeichnen.

Vorteil:
Wenn das gut gemacht wird, läuft es von selbst, ohne extra Infrastruktur.

Nachteil:
Man braucht dann wie oben erwähnt eine Stelle im Netz,
die (evtl. nur auf Wunsch öffentlich) die aktuellen IP:Port
Pärchen pro Node auflistet, da sich die HNA (und somit auch
der Port) ständig ändern kann. Dass es ohne spezielle Webserver
Konfiguration nicht möglich ist, dass gleichzeitig der Gatewaybetreiber
als auch 5 andere die dahinter sitzen, einen webserver auf port 80
anbieten sollte ja klar sein. Die Ports für die 5 anderen müssten
also irgendwo kommuniziert werden.

Wenn überhaupt, wäre ich sehr dafür, automatisches Portforwarding
nur für Dienste zu machen, mit denen der Gateway Betreiber einverstanden
ist. Mit Layer-7 filtering ist das ja anscheinend technisch machbar.

Ein konfigurierbares Trafficshaping auf dem Upstream des HNAs wäre
natürlich auch nicht schlecht, damit der Gatewaybetreiber noch gemütlich
surfen kann während im Freifunk liegende Server servieren.

> Das muesste man irgendwie abfragen.

Siehst du eine Implementierung als OLSR plugin als machbar?
Ich wäre auf jeden Fall bereit mitanzupacken, sofern mein
(im Semester recht knapper) Zeitrahmen das zulässt.

Hier ein paar Vorschläge, was ein HNA Betreiber (idealerweise im
Webinterface) so an automatischen Portforwardings einstellen können
sollte (Dienste die imho per default enabled sein könnten haben einen *,
p2p kram habe ich erstmal weggelassen):

	Port range für automatisches Portforwarding [10000-50000]
	Zu forwardende Dienste:
	[*]	SSH
		Für ssh wären mehrere Ports gut, z.b. wenn der HNA Nutzer
		(nicht Betreiber) auf seinem Node den Port 22 auf den
		Router selbst und 2222 auf einen internen Rechner lenken
		möchte.
	[ ]	FTP
	[*]	HTTP
		http direkt aufs Webinterface des Nodes, oder wie bei
		ssh mit zwei ports (80 und 8080?)
	[*]	HTTPS
	[ ]	IMAP
	[*]	IMAPS
	[ ]	IRC
	[ ]	JABBER
	[ ]	POP3
	[*]	POP3S
	[*]	PPTP
	[*]	OPENVPN
	[*]	CVSPSERVER (use SSH for non-anonymous access!)
	[*]	GIT-DAEMON (use SSH/HTTPS for non-anonymous access!)
	[*]	SVN (use SSH/HTTPS for non-anonymous access!)

Weiterhin wäre die Möglichkeit nett, bestimme Node:Port
Pärchen angeben zu können, für die dann automatisch Portforwarding
eingerichtet wird, damit man Sonderwünsche mit dem nächsten HNA
Betreiber (und idealerweise meheren) absprechen und umsetzen kann.
Das erinnert natürlich an manuelles Portforwarding, wäre aber
ohne vi und iptables Kenntnisse konfigurierbar ;)

-- 
stefan
http://stsp.in-berlin.de                                 PGP Key: 0xF59D25F0

-------------- nächster Teil --------------
_______________________________________________
Berlin mailing list
Berlin at olsrexperiment.de
https://www.olsrexperiment.de/cgi-bin/mailman/listinfo/berlin




Mehr Informationen über die Mailingliste Berlin