mob next [ci-skip] [ci skip] [skip ci]

lastFile:modules/clan/gw-router/iperf.nix
This commit is contained in:
2026-08-11 11:19:16 +07:00
parent 2a8c29d36f
commit d1b9186b40
2 changed files with 37 additions and 4 deletions
+4 -4
View File
@@ -302,10 +302,10 @@
};
imports = [
./ipv6.nix
./firewall.nix
./dns-dhcp.nix
./pppoe.nix
./crowdsec.nix
./dns-dhcp.nix
./firewall.nix
./ipv6.nix
./pppoe.nix
];
}
+33
View File
@@ -0,0 +1,33 @@
{
roles.default.perInstance = { ... }: {
nixosModule =
{
config,
lib,
...
}:
let
vlanIf = name: "vlan-${name}";
dir = config.clan.core.settings.directory;
instance = "zerotier";
networkId = builtins.readFile "${dir}/vars/shared/zerotier-network-${instance}/network-id/value";
full = "fd" + networkId + "9993";
hextet = i: builtins.substring (i * 4) 4 full;
subnetZtier = "${hextet 0}:${hextet 1}:${hextet 2}:${hextet 3}:${hextet 4}:${builtins.substring 20 2 full}00::/88";
in
{
services.iperf3.enable = true;
networking.firewall.interfaces = lib.genAttrs vlanIf (_: {
allowedTCPPorts = [ 5201 ];
allowedUDPPorts = [ 5201 ];
});
networking.firewall.extraInputRules = ''
ip6 saddr ${subnetZtier} tcp dport 5201 accept comment "iperf3 over the mesh"
ip6 saddr ${subnetZtier} udp dport 5201 accept comment "iperf3 over the mesh"
'';
};
};
}