[Berlin-wireless] Autokonfiguration eines IPv6-Meshes

Alina Friedrichsen x-alina
Do Nov 26 00:24:37 CET 2009


Nunja, Alex besteht sehr beharrlich auf AHCP. Da die Bundeswehr bei
ihren Uplinks hoechstwahrscheinlich auf ein Modell mit mehreren
zentralen VPN-Server setzen wird macht das auch Sinn.
Wer selbst die Hoheit ueber seinen/ihren IP-Adressbereich hat, brauch
kein Grassroots-Routing betreiben und kann sich den ganzen Kram mit den
IP-Renumbering sparen.
Da wird es wohl so aussehen, das z.B. im Camp XYZ in Afghanistan ein
festgelegter oeffentlicher IPv6- und IPv4-Adressbereich herein getunnelt
wird, mit dem dann normales Routing betrieben werden kann.
Fuer die Autokonfiguration ist es nun notwendig, das all die anderen
Nodes den IPv6- und IPv4-Adressbereich kennen, der in das lokale Mesh
hinein geroutet wird. Genau das macht AHCP. Es verbreitet das
IPv6-Prefix und stellt zentral eine Art DHCP fuer die IPv4-Adressen
bereit.
Das funktioniert aber nur wenn so ein AHCP in Reichweite ist. Das ist im
Camp in Afghanistan sicher der Fall, aber wie sieht es in Freifunk aus? 

Wir haben hier nicht eine Funkwolke, sondern mehrere
Auseinanderdriftende. Wer also eine neue Wolke aufbauen will, muss also
erstmal nen AHCP aufstellen und konfigurieren. 
Aber ist Autokonfiguration nicht gerade fuer AnfaengerInnen, die eine
neue Wolke aufbauen wollen? Das die weniger Einstiegsschwierigkeiten
haben. Und gerade die muessten nun statt den Nodes den AHCP-Server
konfigurieren, also waere nichts gewonnen.
Das die Bundeswehr AHCP gut gebrauchen kann ist klar, aber wenn wir nun
unser angepeiltes Grassroots-Routing in Betracht ziehen? Also wir
verwenden keine oeffentlichen IPv6-Adressen fuer das Grundrouting und
tunneln uns stattdessen unsere Public-IPs vom Internet-Gateway. Das
heisst also die IPv6-Adresse fuers Grundrouting kann z.B. eine Unique
Local Address sein, was wiederum heisst das das Prefix immer gleich sein
kann, egal neben welchen Uplink der Node auch steht.
Eine solche IPv6-Adresse laesst sehr einfach Autokonfigurieren. Du
nimmst einfach das konstante Prefix und schmeisst dahinter die
MAC-Adresse, oder eine 64-Bit Zufallszahl. Das reicht, damit es
ausreichend unwahrscheinlich ist, das es eine IPv6-Adresse im Mesh
zweimal gibt.
Bei IPv4 sieht die Sache schon schwieriger aus. Du kriegst nicht die
vollstaendige MAC-Adresse in eine IPv4-Adresse, sondern nur 2 oder 3
Bytes davon. Wobei zu erwaehnen ist, das die ersten 3 Bytes die
Herstellerkennung sind und nur die letzten 3 sozusagen die Seriennummer
des Geraets. Bei einen Mesh mit der selben Hardwaere wuerden sich also
nur die letzten 3 Bytes unterscheiden. 2 Bytes sind 65 Tausend
Moeglichkeiten und 3 Bytes 16 Millionen.
Wenn wir uns nun das Konzept mit den 4to6-Tunnel angucken, wuerden wir
ja die zu IPv6 umgerechneten IPv4-Adressen als HNA ankuendigen. Nun ist
es beim olsrd so, das wenn es zwei als HNA angekuendigte IP-Adressen im
Mesh doppelt gibt, keinen Falls die Welt unter geht. Sie werden
stattdessen als Anycast-Adressen behandelt, d.h. es wird zu der
IP-Adresse von den beiden geroutet, die am naechsten liegt.
Wie hoch liegt also die Wahrscheinlichkeit, das es von der IP-Adresse
die Du erreichen willst, es eine doppelte gibt, die zudem in der
Topologie zu Dir naeher liegt? Bei 2 von 65 Tausend oder 16 Millionen?
Wenn dies wieder erwarten Eintritt, kann die IPv4-Adresse ja auch noch
von Hand nach-konfiguriert werden.

Ich persoenlich glaube nicht, das es viele wirkliche Anwendungsfaelle
dafuer geben wird, in denen wir IPv4-Routing innerhalb es Mesches
brauchen werden.
Momentan verwenden wir im IPv4-only Mesh ja eh NAT, d.h. die einzigen
IP-Adressen die wir Mesh-intern normalerweise erreichen koennen, sind
die Freifunk-Nodes selber und die werden ja in Zukunft auch IPv6
sprechen koennen.
Ueber 99% des Traffics geht ja eh ins Internet und dafuer waere es ja
sowieso Sinnvoller einen End-to-End Tunnel zu verwenden. Dieser wuerde
dann die IPv4-Adressen mit dem Internet-Gateway aushandeln.

Wer also kein Mesh-internes IPv4-Routing braucht, was bei den meisten
normalen AnwenderInnen der Fall sein sollte, kann ganz auf eine
IPv4-Adresse im Mesh verzichten. Fuer wen nicht, wuerden die Chancen gut
stehen, das die Autokonfiguration ohne Konflikte in seinen/ihren Umfeld
klappt. Nur wenn all das Fehlschlaegt waere noch eine manuelle
Konfiguration der IPv4-Adressen notwendig. Das duerfte in weit, weit
weniger als 0,1% der Faelle der Fall sein.

Das wars jetzt erstmal. Auf gezielte Desinformationen seitens Alex,
werde ich nur noch reagieren, wenn ich das Gefuehl habe, er koennte
damit Erfolg haben. Ansonsten sind aber alle herzlich dazu eingeladen
Fragen zu stellen und *konstruktive* Kritik zu ueben.

Alina






Mehr Informationen über die Mailingliste Berlin