diff options
| author | quentin@aristote.fr <quentin@aristote.fr> | 2023-05-18 13:39:06 +0200 |
|---|---|---|
| committer | quentin@aristote.fr <quentin@aristote.fr> | 2023-05-20 20:13:45 +0200 |
| commit | 925fc182e5ea9b87c3a62e80f5a20be4e827cd3b (patch) | |
| tree | dc3772ee2a298fd6f39b8ab355aaecd8d5da593e /config/networking/bridges.nix | |
| parent | 001f53d081b78c5145cd7449f08f783bb56f35e3 (diff) | |
config: networking: hostapd: disable low-level bridging
Diffstat (limited to 'config/networking/bridges.nix')
| -rw-r--r-- | config/networking/bridges.nix | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/config/networking/bridges.nix b/config/networking/bridges.nix new file mode 100644 index 0000000..95f163e --- /dev/null +++ b/config/networking/bridges.nix @@ -0,0 +1,22 @@ +{ config, lib, utils, pkgs, ... }: + +let cfg = config.personal.networking; +in { + config = lib.mkMerge (builtins.map (network: + let + bridge = network.interface; + device = network.device; + in { + networking.bridges."${bridge}".interfaces = [ ]; + + systemd.services."${bridge}-netdev".script = '' + echo Setting forward delay to 0 for ${bridge}... + ip link set ${bridge} type bridge forward_delay 0 + ''; + + systemd.services.hostapd.postStart = '' + sleep 3 + ${pkgs.iproute2}/bin/bridge link set dev ${device} hairpin on + ''; + }) [ cfg.networks.wan cfg.networks.iot ]); +} |
