2019-07-04 15:43:32 +02:00
# Netzwerk im [Zentralwerk](http://www.zentralwerk.de/)
2016-11-27 01:47:02 +01:00
2021-04-08 02:35:46 +02:00
[Begrüßung von Menschen im Haus, die für ihren Anschluss Zugang zum Netzwerk brauchen ](doc/hello.md )
2019-07-04 15:43:32 +02:00
## Zweck
2016-11-27 01:47:02 +01:00
2019-07-04 15:43:32 +02:00
Das Zentralwerk ist ein Gebäude, das bestmöglich vernetzt sein soll. Das beginnt mit der Bereitstellung vom Zugang zum Internet, reicht über das isolierte Zusammenführen von einzelnen Anschlüssen und endet mit Angebot von zeitgemäßen Diensten für alle, die das Netz nutzen wollen.
2016-11-27 01:47:02 +01:00
2019-07-04 15:43:32 +02:00
Anstatt irgendwie rumzukonfigurieren, soll es eine Nachvollziehbarkeit (Reproduzierbarkeit) der gemachten Einstellungen geben.
Mit der Transparenz soll es möglich sein, dass das Netzwerk möglichst einfach verwaltet werden kann. (Stichworte sind: Zusammenarbeit, Wiederherstellbarkeit, Teilhabe, Mitmachen, Nachahmen, …)
2016-11-27 01:47:02 +01:00
2021-04-08 02:35:46 +02:00
## Öffentlichkeit
2016-11-27 01:47:02 +01:00
2021-04-08 02:35:46 +02:00
Warum ist das alles einsehbar? Für maximale Transparenz!
Wir sind kein Unternehmen das Geheimnisse schützen muss. Stattdessen wollen wir freie Kommunikation für alle!
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
Wie werden die (wenigen) persönlichen Daten "öffentlich" verwaltet? Mit entsprechender Verschlüsselung!
Wir, ein kleiner Kreis von Menschen die das Netzwerk im Zentralwerk betreuen, haben dafür einen Geheimschlüssel. Im Übrigen behandeln wir gleichermaßen sicher die "heiligen" Zugangsdaten für die Geräte (und andere für den Betrieb wichtigen Instanzen).
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
## Informationen für Lebewesen, die das Netzwerk mit verwalten
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
### Inhaltsverzeichnis
2016-11-27 01:47:02 +01:00
2016-12-14 21:12:29 +01:00
* [Verkabelung Patchpanel Haus B ](cabling.md )
2021-04-08 02:35:46 +02:00
* TODO: tuerme, saal
2016-11-27 01:47:02 +01:00
* [Planung der IP-Adressbereiche ](subnets.md )
2019-07-04 15:43:32 +02:00
* (verschlüsselte) [Kontakte zu den Personen mit den einzelnen Anschlüssen ](contact.md.gpg )
2016-11-27 01:47:02 +01:00
* Dokumentation
2016-12-14 21:12:29 +01:00
* [WiFi-Provisionierung ](doc/wifi-provisioning.md ) und Erstellung von Privatnetzen
2019-07-04 15:43:32 +02:00
* [Einrichtung einer Testumgebung fürs Mit- und Nachmachen (Entwicklung) ](doc/test-environment.md )
2021-04-08 02:35:46 +02:00
* `flake.nix` und Unterverzeichnis [nix/ ](nix ): Konfigurationsskripte
2016-12-15 15:43:20 +01:00
2021-04-08 02:35:46 +02:00
### Nixification Roadmap
2016-12-15 15:43:20 +01:00
2021-04-08 02:35:46 +02:00
- [x] Einlesen der Salt-Daten in Nix
- [x] Containererstellung
- [ ] Migration der Container
- [ ] device-scripts auf Site Config umstellen
- [ ] Site Config dumpen, Salt-Daten löschen
2016-12-15 15:43:20 +01:00
2021-04-10 14:52:13 +02:00
### Server Setup
checkout dieses repos
/etc/nixos, registry
input.key
nixos-rebuild
2021-04-08 02:35:46 +02:00
### Nix Flake
2017-11-02 17:09:35 +01:00
2021-04-08 02:35:46 +02:00
[Segfaulting nix? ](https://github.com/NixOS/nix/issues/4178 ) Until
resolved, `export GC_DONT_GC=1`
2017-11-02 17:09:35 +01:00
2021-04-08 02:35:46 +02:00
#### Site Config
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
Wir verwenden das Module-System von NixOS eigenständig in
`nix/lib/config` weil:
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
* Checks gegen options
* Nutzbarkeit in Paketen (device-scripts) ausserhalb eines
`nixos-rebuild`
* Konfigurationsdaten über mehr als 1 Host
2019-07-04 15:43:32 +02:00
2021-04-08 02:35:46 +02:00
#### nixosConfigurations
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
Systemkonfigurationen für alle Hosts mit der `role` `"server"` oder
`"container"`
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
#### nixosModule
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
Alle NixOS-Einstellungen
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
### LXC-Containers auf Server
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
TODO
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
build-container
lxc-attach
systemctl start lxc@$host
2019-07-04 16:27:48 +02:00
2021-04-08 02:35:46 +02:00
### Dinge die stets schieflaufen
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
#### pub-Netz läuft, aber kein DHCP+Internet darüber verfügbar
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
Eventuell hat `uci` bei der ap-Konfiguration die Switch-Konfiguration
für dieses VLAN nicht in `/etc/config/network` angelegt.
2019-07-04 16:21:32 +02:00
2021-04-08 02:35:46 +02:00
* **Überprüfen**: `swconfig dev switch0 show`