[Berlin-wireless] IPv6 + Multi Gateway + Mesh + Groß = ?

Bastian fly
Do Okt 1 22:56:11 CEST 2015


Hallo Martin,

der Ansatz, zunächst mit ULA im Mesh zu routen und dann für Devices
echte end-to-end ueber den jeweiligen nächstgelegenen Uplink
Connectivity ins Internet herzustellen macht definitiv Sinn.

Die Schwierigkeit ist jedoch das Erkennen von verfügbaren Prefixes im
Mesh. RAs funktionieren AFAIK nur link-local, also z.B. vom Access-Point
zum Smartphone. Tools wie 6relayd[1] helfen das auch in gerouteten
Netzen zum Laufen zu bringen.
Jedoch sollen aber nicht alle verfuegbaren Prefixes als RAs an Clients
weitergeleitet werden - das skaliert einfach nicht. Und hier kommt
source-based Routing ins Spiel: Ein Smartphone am AP hat mit der Zeit
bzw. mit Metrik-Changes mehrere Prefixes angesammelt, verwendet aber
immer nur eine Adresse vom Prefix mit der höchsten Prio für neue
Verbindungen. Schon bestehende TCP-Sessions mit ipv6.src eines älteren
Prefixes müssen aber weiterhin über den passenden Uplink geroutet werden.
Der AP/Mesh-Router muss die RAs an Clients dynamisch aendern, also die
Priority/Lifetime an die Metrik vom Mesh anpassen.

Die Idee mit DHCPv6 und der dabei enthaltenen Prefix-Delegation ist uns
auch schonmal durch den Kopf gegangen, aber bisher hat sich noch niemand
darum gekümmert mal einen Prototypen zu bauen. Am Ende sollte AFAIK
immer gegen die Routen im Mesh geprüft werden um eine oversubscription
dezentral zu vermeiden.

Mit Border-Router-Discovery-Protocol haben wir uns noch gar nicht
beschäftigt, schonmal vielen Dank für den Hinweis! Ist das evtl. im
HNCP/homenet[2] schon enthalten?

Wir wollen langfristig definitiv auch "fremde Prefixes" im Mesh nutzbar
haben. So wie früher, wo jeder einfach seinen Uplink mit NAT aber ohne
VPN zur Verfügung stellen konnte.

Grüße Bastian

[1]: http://wiki.openwrt.org/doc/uci/6relayd
[2]: https://tools.ietf.org/html/draft-ietf-homenet-hncp-06



On 10/01/2015 10:14 PM, Martin Garbe wrote:
> Hallo Bastian,
> 
> der Wechsel zu OLSRv2 klingt sinnvoll und das sollte auch machbar sein.
> 
> Bisher haben wir kein eigenes öffentliches IPv6 Prefix. Hierfür haben
> wir bisher keine Notwendigkeit gesehen. Wir gehen noch davon aus, dass
> ein ULA Prefix anfangs reicht und dann die Provider-dependent IPv6
> Adressen dazu kommen.
> 
> Habt ihr auch schon mal über DHCPv6 nachgedacht? Mit gewissem Aufwand
> könnte man das auch ins Mesh integrieren.
> 
> Am Ende bleibt neben dem statischen Konfigurieren von Prefixen (z.B.
> mit ULA-Prefix oder anderem statischen IPv6 Prefix) nur noch das
> Verbreiten von Prefixen durch RAs. Bei mehreren Gateways im Mesh ist
> dann das Border-Router-Discovery-Protocol sehr ansprechend, weil dies
> viele unserer Probleme lösen würde. Hierzu scheint es aber noch keine
> Implementierung zu geben, richtig?
> 
> Wollt ihr bei eurer ein-Prefix Strategie langfristig bleiben oder habt
> ihr die Dinge bisher so implementiert, weil es die Tool hergeben?
> 
> Gruß,
> Martin
> 
> 
> On 10/01/2015 12:39 AM, Bastian wrote:
>> Hallo Rostock,
> 
>> schön von euch zu hören!
> 
>> 1) ja, wir haben wirklich die selben Probleme! 2) nein, wir haben
>> dafür auch (noch) keine saubere Lösung :(
> 
>> OLSRv1 kann schlichtweg kein source-specific routing. OLSRv2[1]
>> kann das aber! Wir haben das Feature aber noch nicht 
>> ausprobiert...
> 
>> Wir nutzen momentan nur unser eigenes IPv6 Prefix im Backbone,
>> welches über mehrere FTTR (fiber-to-the-roof) Standorten mit dem
>> Internet verbunden ist. Die Prefixes der einzelnen Router werden
>> per Hand konfiguriert und die Vergabe über ein IPAM administriert.
> 
>> Es gab in Berlin mal den Ansatz von auto-ipv6, welches grob
>> folgendes Konzept verfolgt:
> 
>> Wenn im OLSR-Mesh von einem Knoten eine default-route und zugleich
>> ein ausreichend großes Prefix verkündet wird, dann würfle dir aus
>> diesem Prefix ein kleineres Prefix, welches alle deine lokalen
>> Client-facing Interfaces (z.B. AccessPoint) abdeckt. Konfiguriere
>> die Interfaces entsprechend mit den daraus gewonnenen /64 Prefixes,
>> aktiviere relay6d und announce dieses nun erzeugte Prefix wieder
>> ins Mesh.
> 
>> Das oder etwas so ähnliches[2][3] hat Stargieg mal gebaut und in
>> unsere Firmware als cronjob integriert.
> 
>> Ein Problem trat auf, als wir IPv6-Prefixes anderer FF-Communities
>> aus dem ICVPN ins OLSR gekippt haben. Auf einmal hatten Kirchtürme
>> in Berlin eine IPv6 aus Lübeck. Und auf unmaintained nodes ist ein
>> config-file änderndes Script auch ganz doof. Da hilft nämlich auch
>> kein reboot mehr.
> 
> 
>> Mein persönlicher Tipp an euch: Macht kein IPv6 mit OLSRv1 - nutzt
>> die Gelegenheit um gleich richtig auf OLSRv2 zu wechseln.
> 
>> Ich fände es cool wenn wir den Dialog zu dem ganzen Thema weiter
>> führen und offen halten - das hilft hoffentlich allen anderen die
>> früher oder später auch Layer3-Mesh mit IPv6 machen wollen.
> 
>> Grüße Bastian
> 
>> [1]:
>> https://lists.olsr.org//pipermail/olsr-dev/2015-July/007700.html 
>> [2]: 
>> https://github.com/stargieg/packages_berlin/tree/master/utils/auto-ipv
> 6-gw
> 
> 
> [3]:
>> https://github.com/stargieg/packages_berlin/tree/master/utils/auto-ipv
> 6-node
> 
> 
> 
>> On 09/30/2015 11:32 PM, Martin Garbe wrote:
>>> Viele Grüße nach Berlin,
>>>
>>> Wir diskutieren gerade in Rostock, wie man am schlausten IPv6 
>>> großflächig einführt. Warum komme ich jetzt auf euch zu? Weil es
>>> Ähnlichkeiten zwischen Rostock und Berlin bzgl. Infrastruktur
>>> gibt. Wir nutzen in Rostock ausschließlich OLSR. In Berlin wird
>>> OLSR auch genutzt. Wird bei euch eigentlich OLSR größflächig
>>> eingesetzt oder ist es nur eines von vielen Routingprotokollen? 
>>> Desweiteren gibt es in Berlin sehr viele Wireless-Schnittstellen 
>>> zwischen den Mesh-Knoten. In Rostock sind viele Bachbone-Knoten
>>> nur per Wireless angebunden. Insgesamt sind in Rostock und
>>> Umgebung mehr als 400 Knoten vernetzt.
>>>
>>> Wir würden auch andere Meinungen/Erfahrungen sammeln, um dann 
>>> hoffentlich klügere Entscheidungen zu treffen :)
>>>
>>> Was uns derzeit u.a. beschäftigt ist OLRS im Zusammenhang mit
>>> IPv6 und mehreren Gateways ins Internet. Wenn es bei IPv6 mehrere
>>> Gateways von unterschiedlichen Providern im Mesh Netz gibt, wird
>>> es auch mehrere IPv6 Präfixe geben. Diese sollten im Netz
>>> verteilt werden, sodass der Mesh-Knoten am Ende eine IP in jedem
>>> ausgestrahlten Präfix hat. So weit, so gut. Leider ist dieses
>>> Verteilen der Präfixe in OLSR Netzen nicht standardmäßig
>>> eingebaut. Es gab mal einen Vorschlag [1] dafür BRDP zu nutzen.
>>> Das wurde aber anscheinend noch nicht umgesetzt. Wie löst ihr das
>>> Problem? Habt ihr überhaupt das gleiche Problem wie wir oder
>>> macht ihr etwas anders?
>>>
>>> Viele Grüße, Martin
>>>
>>>
>>> [1] http://www.olsr.org/files/multi-smart-gateway.pdf
> 
> 
> 
> 
>> _______________________________________________ Berlin mailing
>> list Berlin at berlin.freifunk.net 
>> http://lists.berlin.freifunk.net/cgi-bin/mailman/listinfo/berlin 
>> Diese Mailingliste besitzt ein öffentlich einsehbares Archiv
> 
> 
> 
> _______________________________________________
> Berlin mailing list
> Berlin at berlin.freifunk.net
> http://lists.berlin.freifunk.net/cgi-bin/mailman/listinfo/berlin
> Diese Mailingliste besitzt ein öffentlich einsehbares Archiv
> 


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



Mehr Informationen über die Mailingliste Berlin