Freifunk:Backend: Unterschied zwischen den Versionen

Aus Hacksaar Wiki
Zur Navigation springen Zur Suche springen
Zeile 115: Zeile 115:
  
 
{| class="wikitable"
 
{| class="wikitable"
! style="font-weight: bold;" | Adressraum
+
! Adressraum
! style="font-weight: bold;" | Zuweisung
+
! Zuweisung
 
|-
 
|-
 
| 10.24.192.0/23
 
| 10.24.192.0/23
Zeile 173: Zeile 173:
 
Jede Domain besteht aus einem X/20, das wie folgt aufgeteilt ist:
 
Jede Domain besteht aus einem X/20, das wie folgt aufgeteilt ist:
 
{| class="wikitable"
 
{| class="wikitable"
! style="font-weight: bold;" | Adressraum
+
! Adressraum
! style="font-weight: bold;" | Zuweisung
+
! Zuweisung
 
|-
 
|-
 
| X+0/24
 
| X+0/24
Zeile 188: Zeile 188:
 
Die Domains verwenden dann die folgenden Adressen:
 
Die Domains verwenden dann die folgenden Adressen:
 
{| class="wikitable"
 
{| class="wikitable"
! style="font-weight: bold;" | Domain
+
! Domain
! style="font-weight: bold;" | IPv4-Adressraum (Intranet)
+
! IPv4-Adressraum (Intranet)
! style="font-weight: bold;" | IPv6-Adressraum (Intranet)
+
! IPv6-Adressraum (Intranet)
! style="font-weight: bold;" | IPv6-Adressraum (FFRL)
+
! IPv6-Adressraum (FFRL)
 
|-
 
|-
| Test
+
| style="font-weight: bold;" | Test
 
| 10.24.224.0/20
 
| 10.24.224.0/20
 
| fd4e:f2d7:88d2:fffd::/64
 
| fd4e:f2d7:88d2:fffd::/64
Zeile 199: Zeile 199:
 
|}
 
|}
  
= Public DNS / IPs =
+
= Gateways =
  
 
Hier eine Tabelle mit den DNS-Namen und IP-Adressen unserer Gateways.
 
Hier eine Tabelle mit den DNS-Namen und IP-Adressen unserer Gateways.
Die Gateways haben einerseits Adressen, die wir vom jeweiligen Provider zugewiesen bekommen; andererseits weisen wir den Gateways Adressen aus dem Pool zu, den uns der FFRL zur Verfügung gestellt hat.
+
Außer den hier angegebenen, von uns verwalteten Adressen haben die Gateways natürlich noch Adressen von ihren jeweilen Providern; die erfährst du jederzeit durch Auflösen des DNS-Namen.
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Gateway
 
! Gateway
! style="font-weight: bold;" | Public IPv4
+
! Intranet IPv6 (Domain Y)
! style="font-weight: bold;" | Public IPv6
+
! FFRL IPv4 (NAT-IP)
! style="font-weight: bold;" | FFRL IPv4 (NAT-IP)
+
! FFRL IPv6 (Legacy-Domain)
! style="font-weight: bold;" | FFRL IPv6
+
! FFRL IPv6 (neuere Domain X)
 
|-
 
|-
 
| style="font-weight: bold;" | gw1.saar.freifunk.net
 
| style="font-weight: bold;" | gw1.saar.freifunk.net
| 82.165.162.239
+
| fd4e:f2d7:88d2:fffY::1
| 2001:8d8:1801:56::1
 
 
| 185.66.193.26
 
| 185.66.193.26
 
| 2a03:2260:3009::101
 
| 2a03:2260:3009::101
 +
| 2a03:2260:3009:X000::1
 
|-
 
|-
 
| style="font-weight: bold;" | gw2.saar.freifunk.net
 
| style="font-weight: bold;" | gw2.saar.freifunk.net
| 93.186.192.202
+
| fd4e:f2d7:88d2:fffY::2
| 2001:4ba0:fff7:15c::1
 
 
| 185.66.193.27
 
| 185.66.193.27
 
| 2a03:2260:3009::102
 
| 2a03:2260:3009::102
 +
| 2a03:2260:3009:X000::2
 
|-
 
|-
 
| style="font-weight: bold;" | gw3.saar.freifunk.net
 
| style="font-weight: bold;" | gw3.saar.freifunk.net
| 51.254.23.212
+
| fd4e:f2d7:88d2:fffY::3
| -
 
 
| 185.66.194.28
 
| 185.66.194.28
 
| 2a03:2260:3009::103
 
| 2a03:2260:3009::103
 +
| 2a03:2260:3009:X000::3
 
|-
 
|-
 
| style="font-weight: bold;" | gw4.saar.freifunk.net
 
| style="font-weight: bold;" | gw4.saar.freifunk.net
| 159.69.210.248
+
| fd4e:f2d7:88d2:fffY::4
| 2a01:4f8:1c1c:b3aa::1
 
 
| 185.66.194.29
 
| 185.66.194.29
 
| 2a03:2260:3009::104
 
| 2a03:2260:3009::104
 +
| 2a03:2260:3009:X000::4
 
|-
 
|-
 
| style="font-weight: bold;" | mgmt.saar.freifunk.net
 
| style="font-weight: bold;" | mgmt.saar.freifunk.net
| 131.117.148.53
+
| fd4e:f2d7:88d2:fffY::fe
| 2a01:5c0:0:7::53
+
| -  
| -
 
 
| -
 
| -
|}
 
 
= Mesh IPs =
 
 
Jeder Gateway ist Teil unseres Mesh-VPN und braucht als solches diverse Adressen, über die er im Mesh erreichbar ist.
 
 
{| class="wikitable"
 
! Gateway
 
! style="font-weight: bold;" | Intranet IPv4
 
! style="font-weight: bold;" | Intranet IPv6
 
! style="font-weight: bold;" | Intranet MAC
 
! style="font-weight: bold;" | Batman MAC
 
|-
 
| style="font-weight: bold;" | gw1.saar.freifunk.net
 
| 10.24.193.1
 
| fd4e:f2d7:88d2:ffff::101
 
| ee:ee:ee:ee:00:01
 
| ca:fe:ba:be:00:01
 
|-
 
| style="font-weight: bold;" | gw2.saar.freifunk.net
 
| 10.24.193.2
 
| fd4e:f2d7:88d2:ffff::102
 
| ee:ee:ee:ee:00:02
 
| ca:fe:ba:be:00:02
 
|-
 
| style="font-weight: bold;" | gw3.saar.freifunk.net
 
| 10.24.193.3
 
| fd4e:f2d7:88d2:ffff::103
 
| ee:ee:ee:ee:00:03
 
| ca:fe:ba:be:00:03
 
|-
 
| style="font-weight: bold;" | gw4.saar.freifunk.net
 
| 10.24.193.4
 
| fd4e:f2d7:88d2:ffff::104
 
| ee:ee:ee:ee:00:04
 
| ca:fe:ba:be:00:04
 
|-
 
| style="font-weight: bold;" | mgmt.saar.freifunk.net
 
| 10.24.192.254
 
| fd4e:f2d7:88d2:ffff::fe
 
| ee:ee:ee:ee:00:fe
 
| ca:fe:ba:be:00:fe
 
|-
 
| style="font-weight: bold;" | Anycast: Aktueller Knoten
 
| 10.24.192.1
 
| fd4e:f2d7:88d2:ffff::1
 
| 32:3d:f9:8f:01:52
 
 
| -
 
| -
 
|}
 
|}
Zeile 293: Zeile 245:
  
 
Auf jedem Gateway läuft ein DHCP-Server, der IP-Adressen an Clients verteilt, die diesen Server als Gateway nutzen.
 
Auf jedem Gateway läuft ein DHCP-Server, der IP-Adressen an Clients verteilt, die diesen Server als Gateway nutzen.
Grundsätzlich verteilen wir hier /22-Ranges, also bis zu 1022 IP-Adressen pro Gateway.
 
 
Außerdem announcen die Gateways über Router Advertisments öffentlich nutzbare IPv6-Adressbereiche, aus denen sich die Clients bedienen können.
 
Außerdem announcen die Gateways über Router Advertisments öffentlich nutzbare IPv6-Adressbereiche, aus denen sich die Clients bedienen können.
Zusätzlich senden Gateways und Knoten Router Advertisments für unseren site-lokalen, internen Adressraum - Kommunikation über <tt>fd4e:f2d7:88d2:ffff::/64</tt> klappt also auch, wenn die Knoten keinen Uplink haben.
+
Zusätzlich senden Gateways und Knoten Router Advertisments für unseren site-lokalen, internen Adressraum - Kommunikation über <tt>fd4e:f2d7:88d2:fffY::/64</tt> klappt also auch, wenn die Knoten keinen Uplink haben.
  
 
Die konkreten Adressräume, die von den einzelnen GWs den Clients zugewiesen werden, stehen in der [[Freifunk:Backend#Reservierte_IPs|Tabelle oben]].
 
Die konkreten Adressräume, die von den einzelnen GWs den Clients zugewiesen werden, stehen in der [[Freifunk:Backend#Reservierte_IPs|Tabelle oben]].

Version vom 28. Juni 2020, 16:52 Uhr

Hier sind ein paar technische Details zu unseren Gateway-Servern.

Team

Grundsätzlich kümmert sich jeder aus dem Team um allgemeine Fragen auf der Mailingliste. Darüber hinaus haben manche Team-Mitglieder spezielle Aufgaben, die sie ausführen bzw. Themengebiete mit denen sie sich besonders auskennen.

Name Aufgabenbereiche
KimCM Public Relations, Webseite
Tobias Theobald Gateway-Administration, Firmware, allgemeine technische Fragen
Tobias Kuhn
Tobias von dem Broch Richtfunk, Antennenfragen
Marvin W Richtfunk, Knotenkarte, Gateway-Administration
Constantin Berhard
Ralf J Gateway-Administration, Netzwerk

Hardware-Details

Hostname CPU Threads x Modell @ Takt RAM Platte Internet-Anbindung Hoster Sponsor Aufgaben Virtualisierung Admin-Zugang
gw1.saar.freifunk.net 1 x Intel(R) Xeon(R) CPU E5-2683 v3 @ 2.00GHz 512 MB 15 GB 500 MBit/s 1&1 madonius Gateway VMware Ralf J, madonius
gw2.saar.freifunk.net 4 x Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz 8 GB 1 TB 300 MBit/s servdiscount / myLoc Gateway - Marvin W, Ralf J
gw3.saar.freifunk.net 2 x Intel(R) Xeon(R) CPU Skylake (Shared, IBRS) 2 GB 90 GB 300 MBit/s servdiscount / myLoc Gateway KVM Marvin W, Ralf J
gw4.saar.freifunk.net 2 x Intel(R) Xeon(R) CPU Skylake (Shared, IBRS) 4 GB 40 GB 1000 MBit/s Shared Hetzner Gateway KVM Marvin W, Ralf J
mgmt.saar.freifunk.net 2 x Intel(R) Xeon(R) CPU 8 GB RAM 40 GB >= 100 MBit/s Shared netcup netcup Knotenkarte, Monitoring, Saltmaster, Firmware ? Marvin W, Ralf J

Reservierte IPs

Wir haben im Freifunk-Intranet-Range die Blöcke 10.24.192.0/18 (10.24.192.0 - 10.24.255.255), 10.252.64.0/18 (10.252.64.0 - 10.252.127.255), fd4e:f2d7:88d2:ffff::/64 und fd4e:f2d7:88d2:fffd::/64 reserviert.

Der Freifunk Rheinland hat uns 185.66.193.26/31, 185.66.194.28/31 und 2a03:2260:3009::/48 aus dem öffentlichen Internet-Adresspool zugewiesen. Die IPv4-Adressen werden von allen Domains geteilt und sind Gateways zugeordnet; siehe unten.

Legacy-Domain "saar"

Diese Domain verwendet 10.24.192.0/19 (10.24.192.0 - 10.24.223.255, die erste Hälfte unseres ersten Blocks) und fd4e:f2d7:88d2:ffff::/64 als Intranet-Adressen, und 2a03:2260:3009:0000::/52 für den FFRL-Uplink.

Der IPv4-Adressraum ist wie folgt unterteilt:

Adressraum Zuweisung
10.24.192.0/23 Admin-Netz (Gateways, etc.)
10.24.194.0/23 User Services
10.24.196.0/22 Clients an GW1
10.24.200.0/22 Clients an GW2
10.24.204.0/22 Clients an GW3
10.24.208.0/22 Clients an GW4
10.24.212.0 - 10.24.223.255 Ungenutzt

Der FFRL-IPv6-Adressraum ist wie folgt strukturiert:

Adressraum Zuweisung
2a03:2260:3009:0000::/56 Admin-Netz (Gateways, etc.)
2a03:2260:3009:0100::/56 Clients an GW1
2a03:2260:3009:0200::/56 Clients an GW2
2a03:2260:3009:0300::/56 Clients an GW3
2a03:2260:3009:0400::/56 Clients an GW4
2a03:2260:3009:0500::/56 - 2a03:2260:3009:0e00::/56 Ungenutzt
2a03:2260:3009:0f00::/56 User Services

Restliche Domains

Alle anderen Domains verwenden eine kompaktere Adresszuweisung im IPv4-Bereich. Jede Domain besteht aus einem X/20, das wie folgt aufgeteilt ist:

Adressraum Zuweisung
X+0/24 Admin-Netz (Gateways, etc.)
X+256/24 User Services
X+512 - X+4096 Clients an den GWs (gleichmäßig auf 4 GWs verteilt)

Die Domains verwenden dann die folgenden Adressen:

Domain IPv4-Adressraum (Intranet) IPv6-Adressraum (Intranet) IPv6-Adressraum (FFRL)
Test 10.24.224.0/20 fd4e:f2d7:88d2:fffd::/64 2a03:2260:3009:1000::/52

Gateways

Hier eine Tabelle mit den DNS-Namen und IP-Adressen unserer Gateways. Außer den hier angegebenen, von uns verwalteten Adressen haben die Gateways natürlich noch Adressen von ihren jeweilen Providern; die erfährst du jederzeit durch Auflösen des DNS-Namen.

Gateway Intranet IPv6 (Domain Y) FFRL IPv4 (NAT-IP) FFRL IPv6 (Legacy-Domain) FFRL IPv6 (neuere Domain X)
gw1.saar.freifunk.net fd4e:f2d7:88d2:fffY::1 185.66.193.26 2a03:2260:3009::101 2a03:2260:3009:X000::1
gw2.saar.freifunk.net fd4e:f2d7:88d2:fffY::2 185.66.193.27 2a03:2260:3009::102 2a03:2260:3009:X000::2
gw3.saar.freifunk.net fd4e:f2d7:88d2:fffY::3 185.66.194.28 2a03:2260:3009::103 2a03:2260:3009:X000::3
gw4.saar.freifunk.net fd4e:f2d7:88d2:fffY::4 185.66.194.29 2a03:2260:3009::104 2a03:2260:3009:X000::4
mgmt.saar.freifunk.net fd4e:f2d7:88d2:fffY::fe - - -

Client-IPs

Auf jedem Gateway läuft ein DHCP-Server, der IP-Adressen an Clients verteilt, die diesen Server als Gateway nutzen. Außerdem announcen die Gateways über Router Advertisments öffentlich nutzbare IPv6-Adressbereiche, aus denen sich die Clients bedienen können. Zusätzlich senden Gateways und Knoten Router Advertisments für unseren site-lokalen, internen Adressraum - Kommunikation über fd4e:f2d7:88d2:fffY::/64 klappt also auch, wenn die Knoten keinen Uplink haben.

Die konkreten Adressräume, die von den einzelnen GWs den Clients zugewiesen werden, stehen in der Tabelle oben.

Clients mit fester Adresse müssen als User Service registriert werden.

Mesh-VPN

Das Mesh-VPN bezeichnet Punkt-zu-Punkt VPN-Verbindungen zwischen den Knoten und den Gateways. Über diese Verbindungen wird dann wiederum per Batman ein Mesh aufgebaut, das die Illusion eines einzigen großen Netzwerks mit allen Knoten erzeugt (auch denen, die nur per WLAN angebunden sind).

Wir nutzen für diese VPN-Verbindungen L2TP, ein sehr schlankes und effizientes Tunnelprotokoll welches der Linux-Kernel nativ unterstützt. So können die Knoten mit ihren schwachen CPUs problemlos 30 MBit/s und mehr an Daten transportieren, und auch die Gateways (wo ja alles zusammen kommt) brauchen keine extrem starken CPUs. L2TP geht von einer statischen Konfiguration und öffentlichen IP-Adressen auf beiden Seiten aus; Tunneldigger ermöglicht es uns, solche Tunnel auch dynamisch und durch NAT hindurch aufzubauen. Tunneldigger lauscht auf Port UDP/10000, und auch die L2TP-Verbindung wird über diesen Port aufgebaut.

Nebenher sind auch noch Tunnel via fastd möglich. fastd haben wir früher statt L2TP eingesetzt, es bietet den Vorteil einer verschlüsselten Verbindung. Allerdings geht das mit viel CPU-Last sowohl auf den Knoten als auch den Gateways einher, weshalb fastd nicht mehr verwendet wird und zur Zeit lediglich der Kompatibilität mit alten Knoten wegen noch läuft. fastd lauscht auf Port UDP/10003. Als Cipher unterstützen unsere Server salsa2012+umac, die VPN-interne MTU beträgt 1406 byte.

Da die Ports ggfls. angepasst werden müssen, empfiehlt sich eine Freigabe der UDP-Ports 10000-10010 für den Betrieb des Freifunk-Routers hinter einer Firewall.

Hier eine Übersicht über die Public Keys und den Online-Status (nicht live) unserer Gateways:

Gateway Public fastd Key Aktiv?
gw1.saar.freifunk.net 5136a920a8c7aa9ae2ca1c2a1e33ea8c45e01501fac0f02b9d6a05b167ac5993 Ja
gw2.saar.freifunk.net 80859883c8a22867b20082078ab0934bdf58f556e7acda90730ea282d8da9388 Ja
gw3.saar.freifunk.net 711d1dc6f2048ffe88997441612ca764595b414abea5495c4f3ce746c72774e6 Ja
gw4.saar.freifunk.net 33e02014b00a45bc8249b4428a9da614a370b5e386fa5d8d66c325941aa27568 Ja (L2TP nur eingeschränkt)

Mesh-WLAN

Hier die Details für das WLAN auf den Clients

Netz Mesh {E/B}SSID Clients ESSID 2.4 GHz Kanal 5 GHz Kanal HT-Modul
Saar 5e:ba:7a:d2:c4:b9 saar.freifunk.net 1 36 HT20

Exit-VPN

Unser Traffic geht derzeit über diese Parteien ans Netz: