====== Gateway ====== ===== Installation ===== * Debian GNU/Linux stable; Stretch 9.x * Minimalinstallation vornehmen * Spezielle [[debian_freifunk|Freifunk-Umgebung für Server]] einrichten * Mesh-VPN mit [[fastd]] installieren * Batman-ADV übersetzen und installieren * [[FFPI-Tools]] einrichten * [[Netzwerk]] und [[Firewall]] konfigurieren * Alfred für Monitoring installieren * Exit-VPN einrichten * -> [[gateway_installation|Detaillierte Installationsanleitung]] ===== Konfiguration ===== Beispiel für statische Informationen, die über [[Alfred]] im Netz kommuniziert werden. Es sollten wirklich nur Daten hinterlegt werden, die nicht an anderer Stelle ausgelesen werden können! Diese Daten werden zusammen mit dynamisch ermittelten von ''[[alfred-announce]]'' ins Netzwerk gesendet, werden von ''ffmap-backend'' verarbeitet und tauchen somit u.a. in Statistiken und im [[Meshviewer]] auf. Die Daten in ''statics.json'' haben eine höhere Priorität, als die dynamisch ermittelten. Damit kann man beispielsweise die Node-ID überschreiben, wenn man die dynamisch ermittelte nicht verwendet werden kann oder soll. Gateways, die ihre Daten so senden, müssen nicht mehr in der zentralen Datei ''aliases.json'' eingetragen werden. Ein Schritt hin zu mehr Dezentralität. { "node": { "node_id": "gate01", "hostname": "Tannhäuser Tor", "location": { "longitude": "11.611285", "latitude": "50.948991" }, "owner": { "contact": "Havelock" }, "system": { "site_code": "ffpi", "role": "gate" }, "software": { "batman-adv": { "compat": 15 } } }, "statistics": { "node_id": "gate01" } } ===== Funktionsprüfungen ===== * ''ffgate-check'' - einfache Prüfung, ob der ExitVPN-Tunnel funktionsfähig ist * Script ''exitvpn.state'' zur Tunnelprüfung für Zabbix unter ''/usr/local/share/zabbix'' ==== TODO / Offene Fragen ==== * Steht der VPN-Tunnel zum Exit? -> ''ffgate-check'' verwenden * Werden Daten übertragen? * Steht das Mesh-VPN? * Sind die anderen Gateways erreichbar? -> ''batctl gwl'' * Funktioniert die Zuteilung von IPv4-Adressen an die Clients? -> ''dhcpd-leases.py'' ==== Werkzeuge ==== * ''nethogs'' * Achtung, die Version in Debian Jessie ist anscheinend defekt. Bei Bedarf manuell kompilieren oder auf einen Bugfix warten. Siehe: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811273 * ''iftop'' * ''cbm'' * ''speedometer'' ===== Übersicht ===== ^ Name ^ Nickname ^ Betreiber ^ Adresse ^ Standort ^ Anbindung ^ Bemerkungen ^ | gate01 | Tannhäuser Tor | Thomas | 81.7.14.115 | Jena | 100 Mbit | Deaktiviert | | gate02 | | Thomas | dyn. | Serbien | | Nicht in der Firmware | | gate03 | Thesdorfer Tor | Thomas | 85.114.135.191 | Düsseldorf | 1 Gbit | Ok | | gate04 | Rellinger Tor | Kevin | 213.133.108.18 | Falkenstein | 1 Gbit | Ok | | gate05 | Elmshorner Tor | Thomas | 217.172.186.141 | Straßburg | 100 Mbit | Deaktiviert | | gate06 | Wedeler Tor | Söhnke | 81.7.11.146 | Jena | 100 Mbit | Testgateway, nicht in der Firmware | | gate07 | Finnisches Tor | Tom | 95.216.14.150 | Helsinki | 1 Gbit | Noch im Aufbau | ===== Gateway sicher vom Netz nehmen ===== TODO Dies muß noch verfeinert werden! Wenn ein Gateway aus dem Netz entfernt werden soll, bitte wie folgt vorgehen, damit es keine Ausfälle bei den Nodes und Clients gibt: * ''batctl gw off'' * 1 Minute warten * DHCP Server deaktivieren ''/etc/init.d/isc-dhcp-server stop'' * 10 Minuten warten, damit die Clients eine IP-Adresse von einem anderen Gateway bekommen haben * Die Anzahl der noch aktiven Leases kann mit dem Script ''dhcpd-leases.py'' überprüft werden * fastd beenden ''/etc/init.d/fastd stop'' Für diesen Prozeß gibt es ein passendes Script: ''ffgate-down'' (in Weiterentwicklung). ===== Optionen ===== [[redis|Redis-Server]]