1
1
Fork 1
mirror of https://github.com/oddlama/nix-config.git synced 2025-10-10 14:50:40 +02:00

feat: add more topology documentation

This commit is contained in:
oddlama 2024-04-04 02:28:41 +02:00
parent 34efe5686e
commit ed729c4073
No known key found for this signature in database
GPG key ID: 14EFE510775FE39A
7 changed files with 56 additions and 7 deletions

View file

@ -2,10 +2,10 @@
inherit
(config.lib.topology)
mkInternet
mkDevice
mkSwitch
mkRouter
mkConnection
mkConnectionRev
;
in {
imports = [
@ -14,8 +14,12 @@ in {
}
];
nodes.internet = mkInternet {};
nodes.sentinel.interfaces.wan.physicalConnections = [(mkConnectionRev "internet" "*")];
nodes.internet = mkInternet {
connections = [
(mkConnection "sentinel" "wan")
(mkConnection "fritzbox" "wan1")
];
};
nodes.fritzbox = mkRouter "FritzBox" {
info = "FRITZ!Box 7520";
@ -25,7 +29,7 @@ in {
["wan1"]
];
connections.eth1 = mkConnection "ward" "wan";
connections.wan1 = mkConnectionRev "internet" "*";
interfaces.eth1.addresses = ["192.168.178.1"];
};
networks.home-fritzbox = {
@ -49,5 +53,47 @@ in {
connections.eth1 = mkConnection "switch-attic" "eth3";
connections.eth2 = mkConnection "kroma" "lan1";
connections.eth3 = mkConnection "nom" "lan1";
connections.eth4 = mkConnection "switch-livingroom" "eth1";
};
nodes.switch-livingroom = mkSwitch "Switch Livingroom" {
info = "D-Link DGS-105";
image = ./images/dlink-dgs105.png;
interfaceGroups = [["eth1" "eth2" "eth3" "eth4" "eth5"]];
connections.eth2 = mkConnection "tv-livingroom" "eth1";
};
nodes.tv-livingroom = mkDevice "Livingroom TV" {
# TODO info
# image = ./images/epson-xp-7100.png;
interfaces.eth1 = {};
};
nodes.ruckus-ap = mkSwitch "Wi-Fi AP" {
info = "Ruckus R500";
image = ./images/ruckus-r500.png;
interfaceGroups = [["eth1" "wifi"]];
connections.eth1 = mkConnection "switch-attic" "eth4";
};
nodes.printer = mkDevice "Printer Attic" {
info = "Epson XP-7100";
image = ./images/epson-xp-7100.png;
connections.eth1 = mkConnection "switch-attic" "eth5";
};
nodes.dect-repeater = mkSwitch "DECT Repeater" {
info = "FRITZ!Box 7490";
image = ./images/fritzbox.png;
interfaceGroups = [
["eth1" "eth2" "eth3" "eth4"]
];
connections.eth1 = mkConnection "switch-attic" "eth6";
};
nodes.wallbox = mkDevice "Wallbox" {
info = "Mennekes Amtron";
image = ./images/mennekes-wallbox.png;
connections.eth1 = mkConnection "dect-repeater" "eth2";
};
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB