Hamburg:Infrastruktur
Dies ist die Dokumentation der von Freifunk Hamburg gepflegten Infrastruktur. Ziel ist es, Externen einen guten Überblick zu geben und die Einstiegshürde für Leute, die neu dabei sind, zu senken. Dabei muss man beachten, dass diese Seite und alle Unterseiten eigentlich immer work in progress sind, da Teile der Infrastruktur kontinuierlich verändert und verbessert werden.
Bitte seht diese Seiten auch als Aufruf, sich bei Freifunk Hamburg zu engagieren. Wir brauchen immer neue Leute, die uns helfen, Freifunk Hamburg besser zu machen.
Übersicht
gw05 und gw08 wurden inzwischen wieder abgeschaltet
Server
Gateways
Die Gateways dienen als Endpunkte für das Mesh-VPN, welches von den entsprechend konfigurierten Knoten aufgebaut wird. Dabei wird das Mesh-VPN für zwei Dinge genutzt:
- Dem Verbinden entfernter Mesh-Wolken, um eine Kommunikation zu ermöglichen, wo keine Mesh-Verbindung (per Funk) existiert. So werden z.B. lokal angebotene Dienste in der ganzen Stadt erreichbar gemacht.
- Dem Zugang zum Internet. Hierzu leiten die Gateways den Datenverkehr ins Internet, wobei bei IPv4 NAT zum Einsatz kommt.
Auf den Gateways laufen insbesondere folgende Dienste: fastd (als VPN-Daemon), bind9 (als Nameserver für die Nutzer), ein DHCP Server für IPv4 Adressen, radvd zum Ankündigen des genutzten IPv6-Netzes und NTP zur Zeitsynchronisation.
Die Gateways werden über Puppet aufgesetzt. Dafür existiert ein Puppet Modul sowie die dazugehörige Konfiguration pro Gateway. Lokale Änderungen werden weitestgehend vermieden, um die Konfiguration zu vereinfachen und, falls es nötig sein sollte, ein schnelles Neuaufsetzen zu ermöglichen.
Host | IPv6 | RFC1918 | DHCP Range | ICVPN | batman & Tunnel MACs | Besonderheiten | Standort | Betreuer | Internetzugang |
---|---|---|---|---|---|---|---|---|---|
gw01 | 2a03:2267::202 | 10.112.1.11 | 10.112.2.2 – 10.112.9.254 10.112.54.2 - 10.112.61.245 |
ja | de:ad:be:ef:01:01 de:ad:be:ff:01:01 de:ad:bf:ff:01:01 |
gw01 für Helgoland | artfiles, host03 | IPv4: lokal IPv6: lokal | |
gw02 | 2a03:2267::201 | 10.112.42.1 | 10.112.10.2 – 10.112.17.254 10.112.62.2 - 10.112.63.254 |
ja | de:ad:be:ef:05:05 de:ad:be:ff:05:05 de:ad:bf:ff:05:05 |
n@work, host01 | IPv4: lokal IPv6: lokal | ||
gw03 | 2a03:2267::301 | 10.112.1.3 | 10.112.18.2 – 10.112.25.254 10.112.42.2 - 10.112.49.254 |
ja, Meta Node | de:ad:be:ef:03:03 de:ad:be:ff:03:03 de:ad:bf:ff:03:03 |
IPHH, host02 | IPv4: lokal IPv6: lokal |
Router
Die Router sind eigene virtuelle Maschinen, die BGP sprechen und so unseren Peers die Netze (IPv4 und IPv6) an den jeweiligen Standorten ankündigen. Hierfür haben wir eine eigene AS-Nummer: AS49009.
Per separater Bridge auf dem entsprechenden Hostsystem wird den dort ebenfalls laufenden weiteren Maschinen (Gateways & Server) Konnektivität bereitgestellt. Entferne Maschinen werden über Tunnel (meist GRE) angebunden. Zwischen den drei Routern existieren ebenfalls Tunnel, um eingehenden Traffic entsprechend zu dem richtigen Zielsystem routen zu können (Stichwort: asymmetrisches Routing).
Auf den Routern läuft eine Firewall (IPv4 und IPv6) die Ingress (eingehend; bcp38) und Egress (ausgehend) Filtering umsetzt. Dies bedeutet, dass ein- oder ausgehende Pakete verworfen werden, die eine Ziel- oder Absenderadresse aus einem reservierten oder privaten Adressblock haben (bei IPv4 z.B. 192.168.0.0/16). Gleichzeitig werden nur Pakete eingehend akzeptiert, wenn sie als Zieladresse das eigene Netz haben. Ausgehende Pakete analog dazu nur, wenn sie als Quelladresse das eigene Netz haben. Diese Maßnahmen dienen dazu, nur technisch korrekten Datenverkehr durchzulassen und die Folgen von Fehlkonfigurationen abzumindern. So sperren einige Hoster den Zugang, wenn Pakete mit falscher Absenderadresse versendet werden.
Host | IPv6 | IPv4* | Besonderheiten | Standort | Betreuer | Peering |
---|---|---|---|---|---|---|
wandale0 | 2a03:2267:ba5e::a | 193.96.224.245 | n@work, host01 | IPv4: ja IPv6: ja | ||
wende0 | 2a03:2267:ba5e::b | 193.96.224.249 | IPv4 Uplink für Bremen, IPv6 Transit für Lübeck |
IPHH, host02 | IPv4: ja IPv6: ja | |
suede0 | 2a03:2267:ba5e::c | 193.96.224.241 | artfiles, host03 | IPv4: nein IPv6: ja | ||
greve0 (geplant) | 2a03:2267:ba5e::d | tbd | IRZ42 | IPv4: ja IPv6: ja |
(*) Verteilung der öffentlichen IPv4 Adressen über Repository