[vpn] Probleme mit dem Routing

Matthias Schiffer mschiffer at universe-factory.net
Mi Aug 20 08:24:00 CEST 2014


On 08/20/2014 08:09 AM, Bernd Kalbfuss-Zimmermann wrote:
> Hallo Netzwerker,
> 
> ich bin gerade dabei, den Freifunk Dreiländereck (CH-DE-FR) ins ICVPN zu
> bringen. Der öffentliche Schlüssel ist bereits im Repo auf github.com
> (dreilaendereck1). Die tinc-Verbindung steht. Die Peers sind mittels
> ping erreichbar. Quagga scheint ebenfalls zu laufen. Die Routen werden
> übertragen und die einzelnen Freifunk-Netze sind aus unserem
> Freifunk-Netz über das Mesh VPN zu erreichen.
> 
> Jetzt habe ich allerdings noch folgendes Problem: Da wir ausgehenden
> WAN-Verkehr über eine VPN-Verbindung anonymisieren, arbeiten wir mit
> zwei Routing-Tabellen. Bei der Konfiguration des Gateways haben wir uns
> an den Kollegen aus Hamburg
> <http://wiki.freifunk.net/Freifunk_Hamburg/Gateway> orientiert. Das
> Routing der Pakete aus dem Mesh VPN läuft über die Tabelle 42, welche
> als Default Gateway die VPN-Schnittstelle tun0 definiert. In diese
> Tabelle lasse ich Quagga auch die angekündigten Routen eintragen
> (Zusätzlicher Eintrag "table 42" in der zebra.conf").
> 
> Der Nachteil dieser Lösung ist, dass die Freifunk-Netze damit vom
> Gateway aus nicht erreichbar sind (da sie in der Routing-Tabelle main
> fehlen). D.h., ich kann auch zugehörigen DNS-Server nicht erreichen.
> Leider scheint es keine Möglichkeit zu geben, die Routen von Quagga in
> beide Tabellen eintragen zu lassen (zumindest habe ich in der
> Dokumentation für Quagga nichts gefunden). Eine weiterer "table"-Eintrag
> in der zebra.conf überschreibt lediglich den letzten Wert.
> 
> Wie kann ich dieses Problem möglichst elegant lösen? Hat jemand einen
> Vorschlag? Mir scheint, es gibt wenigstens zwei Ansätze:
> 
> a) Vom Gateway ausgehende Pakete an Freifunk-Netze / Nicht-WAN-Netze
> (z.B. 10.x.y.z) prinzipiell auf die Tabelle 42 umleiten
> b) Die beiden Tabellen (z.B. mittels eines Skripts) regelmäßig
> synchroniseren
> 
> Meinungen? Alternativen?
> 
> LG,
> 
> Bernd
> 

Also, in Lübeck benutzen wir einfach Bird statt Quagga, der kann
problemlos seine Routen in beide Kernel-Tabellen pumpen. Insgesamt ist
die Bird-Config um Größenordnungen mächtiger; der einzige Nachteil von
Bird ist, dass man separate Daemons und somit auch separate Configs und
Peerings für IPv4 und IPv6 braucht (das soll sich aber irgendwann in
einer zukünftigen Bird-Version ändern, aber das wird noch ein bisschen
dauern...)

Grüße,
Matthias


-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 819 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.freifunk.net/pipermail/vpn-freifunk.net/attachments/20140820/2f5eb946/attachment.pgp>


Mehr Informationen über die Mailingliste vpn