Update documentation slightly

This commit is contained in:
2026-01-18 16:27:10 +01:00
parent 1b81c38e62
commit 3ab3077096
2 changed files with 27 additions and 18 deletions

View File

@@ -1,18 +1,13 @@
# Nyota - PVVs network host configuration
Nyota, named after Nyota Uhura, is intended to serve as _the_ source of truth for PVVs DNS and DHCP configurations.
It is based on nix, and contains both the generating code and actual data.
Nyota, named after Nyota Uhura, is intended to serve as the source of truth for PVVs DNS configuration.
It is based on nix, and this repository should contain both the generating code and actual data.
Normal PVV "hosts" (servers or similar) can be defined in ./hosts.nix, and custom DNS configurations can be placed in each zone configuration file in ./zones, such as ./zones/pvv.ntnu.no.nix.
Normal PVV "hosts" (servers or similar) should be defined in ./hosts.nix, and configuration and additional records can be placed in each zone configuration file in ./zones, such as ./zones/pvv.ntnu.no.nix.
## Building DNS zone files
Provided you already have nix, you should be able to run `nix build .#zoneConfig`, and the resulting config is placed in `./result/zones`.
## Building DHCP configuration
(not implemented)
Provided you have nix on your system, you should be able to run `nix build .#`, and the resulting config is placed in `./result/zones`.
## Examples;
@@ -26,13 +21,13 @@ A host configuration like
};
roundrobin = {
ipv4 = [ (pvvv4 101) (pvvv4 102) ];
ipv6 = [ (pvvv6 101) (pvvv6 102) ];
ipv4 = [ (pvvv4 101) (pvvv4 202) ];
ipv6 = [ (pvvv6 101) (pvvv6 202) ];
};
```
... will generate a bind configuration like
... will generate zone files like
```bind
@@ -40,9 +35,23 @@ drolsum.pvv.ntnu.no. IN A 129.241.210.217
drolsum.pvv.ntnu.no. IN AAAA 2001:700:300:1900::217
login2.pvv.ntnu.no. IN CNAME drolsum
roundrobin.pvv.ntnu.no. IN A 129.241.210.201
roundrobin.pvv.ntnu.no. IN A 129.241.210.202
roundrobin.pvv.ntnu.no. IN AAAA 2001:700:300:1900::201
roundrobin.pvv.ntnu.no. IN AAAA 2001:700:300:1900::202
201.128-255.210.241.129.in-addr.arpa. PTR roundrobin.pvv.ntnu.no
202.128-255.210.241.129.in-addr.arpa. PTR roundrobin.pvv.ntnu.no
217.128-255.210.241.129.in-addr.arpa. PTR drolsum.pvv.ntnu.no
1.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.9.1.0.0.3.0.0.0.7.0.1.0.0.2.ip6.arpa PTR roundrobin.pvv.ntnu.no
2.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.9.1.0.0.3.0.0.0.7.0.1.0.0.2.ip6.arpa PTR roundrobin.pvv.ntnu.no
7.1.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.9.1.0.0.3.0.0.0.7.0.1.0.0.2.ip6.arpa PTR drolsum.pvv.ntnu.no
roundrobin.pvv.ntnu.no. IN A 129.241.210.101
roundrobin.pvv.ntnu.no. IN A 129.241.210.102
roundrobin.pvv.ntnu.no. IN AAAA 2001:700:300:1900::101
roundrobin.pvv.ntnu.no. IN AAAA 2001:700:300:1900::102
```
## Future plans
- Also generate DHCP server configurations
- Build and verify with CI/CD
- Automatically push updated configurations to the DNS server

View File

@@ -29,7 +29,7 @@ in {
};
roundrobin = {
ipv4 = [ (pvvv4 101) (pvvv4 102) ];
ipv6 = [ (pvvv6 101) (pvvv6 102) ];
ipv4 = [ (pvvv4 201) (pvvv4 202) ];
ipv6 = [ (pvvv6 201) (pvvv6 202) ];
};
}