!tCyGickeVqkHsYjWnh:nixos.org

NixOS Networking

911 Members
Declaratively manage your switching, routing, wireless, tunneling and more.268 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
24 Dec 2025
@thefossguy:matrix.orgPratham Patel

At the moment, I have a very simple firewall rule for my router to ensure traffic between private and guest networks don't ever interfere. The configuration for that is here. Additionally, I have a helper function of sorts to create wireguard interfaces. Given I'm very new to firewall rules and routing, I'm not sure how to ensure that all traffic from the private network is routed via the wireguard interface but the guest network's traffic exits without ever touching the wireguard interface. Let's call it wg0 on the router.

I believe that this setup will require the following additional rules to the forward chain in the router-fw table:

iifname "isolated" oifname "wg0" drop
iifname "wg0" oifname "isolated" drop

iifname "trusted" oifname "wg0" accept
iifname "wg0" oifname "trusted" accept

iifname "wg0" oifname "wan" accept
iifname "wan" oifname "wg0" accept

And also require a new output chain in the router-fw table:

chain output {
    type filter hook output priority filter; policy accept;
    accept
}

This is what I have come up with so far. Is there anything else that I'm missing, or doing wrong?

08:57:37
@thefossguy:matrix.orgPratham Patel *

At the moment, I have a very simple firewall rule for my router to ensure traffic between private and guest networks don't ever interfere. The configuration for that is here. Additionally, I have a helper function of sorts to create wireguard interfaces. Given I'm very new to firewall rules and routing, I'm not sure how to ensure that all traffic from the private network is routed via the wireguard interface but the guest network's traffic exits without ever touching the wireguard interface. Let's call it wg0 on the router.

I believe that this setup will require the following additional rules to the forward chain in the router-fw table:

iifname "isolated" oifname "wg0" drop
iifname "wg0" oifname "isolated" drop

iifname "trusted" oifname "wg0" accept
iifname "wg0" oifname "trusted" accept

iifname "wg0" oifname "wan" accept
iifname "wan" oifname "wg0" accept

And also require a new output chain in the router-fw table:

chain output {
    type filter hook output priority filter; policy accept;
    accept
}

This is what I have come up with so far. Is there anything else that I'm missing, or doing wrong?

(edit: switched git reference from master to a specific commit)

09:02:24
@thefossguy:matrix.orgPratham Patel *

At the moment, I have a very simple firewall rule for my router to ensure traffic between private and guest networks don't ever interfere. The configuration for that is here. Additionally, I have a helper function of sorts to create wireguard interfaces. Given I'm very new to firewall rules and routing, I'm not sure how to ensure that all traffic from the private network is routed via the wireguard interface but the guest network's traffic exits without ever touching the wireguard interface. Let's call it wg0 on the router.

I believe that this setup will require the following additional rules to the forward chain in the router-fw table:

iifname "isolated" oifname "wg0" drop
iifname "wg0" oifname "isolated" drop

iifname "trusted" oifname "wg0" accept
iifname "wg0" oifname "trusted" accept

iifname "wg0" oifname "wan" accept
iifname "wan" oifname "wg0" accept

And also require a new output chain in the router-fw table:

chain output {
    type filter hook output priority filter; policy accept;
    accept
}

This is what I have come up with so far. Is there anything else that I'm missing, or doing wrong?

(edit: switched git reference from master to a specific commit)

09:02:49
@thefossguy:matrix.orgPratham Patel *

At the moment, I have a very simple firewall rule for my router to ensure traffic between private and guest networks don't ever interfere. The configuration for that is here. Additionally, I have a helper function of sorts to create wireguard interfaces. Given I'm very new to firewall rules and routing, I'm not sure how to ensure that all traffic from the private network is routed via the wireguard interface but the guest network's traffic exits without ever touching the wireguard interface. Let's call it wg0 on the router.

I believe that this setup will require the following additional rules to the forward chain in the router-fw table:

iifname "isolated" oifname "wg0" drop
iifname "wg0" oifname "isolated" drop

iifname "trusted" oifname "wg0" accept
iifname "wg0" oifname "trusted" accept

iifname "wg0" oifname "wan" accept
iifname "wan" oifname "wg0" accept

And also require a new output chain in the router-fw table:

chain output {
    type filter hook output priority filter; policy accept;
    accept
}

This is what I have come up with so far. Is there anything else that I'm missing, or doing wrong?

(edit: switched git reference from master to a specific commit)

09:04:06
@pltrz_:matrix.orgpltrz joined the room.12:41:07
@acidbong:envs.net@acidbong:envs.net does systemd-resolved support secret configs? judging by man resolved.conf, it only accepts entries from systemd/resolved.conf[.d/*.conf] 16:46:31
@autiboy:matrix.mautiweb.netAutiboyYou might be able to use agenix16:52:57
@acidbong:envs.net@acidbong:envs.neti already use sops-nix, how would it be different?16:54:13
@autiboy:matrix.mautiweb.netAutiboyIt shouldn't be that different16:56:29
@acidbong:envs.net@acidbong:envs.netbut does resolved support configs from outside /etc/systemd?16:56:52
@autiboy:matrix.mautiweb.netAutiboyI don't know. But if your trying to specify a secrets file in a unit you can use extraConfig16:59:05
@marcel:envs.net@marcel:envs.net Sops also supports installing secrets so any location. Not just /run/secrets 16:59:36
@acidbong:envs.net@acidbong:envs.netah, TIL17:00:36
@marcel:envs.net@marcel:envs.net * 17:18:50
@acidbong:envs.net@acidbong:envs.neton a semi-related note, I want to use NextDNS without its client, which option of the listed ones (Resolved, Dnsmasq, Stubby, DNScrypt, Kresd, Cloudflared, Unbound) is the most convenient/fitting for a laptop-only setup?17:27:17
@acidbong:envs.net@acidbong:envs.net* on a semi-related note, I want to use NextDNS without its client, which option of the listed ones (Resolved, Dnsmasq, Stubby, DNScrypt, Kresd, Cloudflared, Unbound) is the most convenient/fitting for a laptop-only setup, with ot without considering NixOS?17:28:44
@k900:0upti.meK900resolved is definitely the least work17:33:35
@acidbong:envs.net@acidbong:envs.netand already integrates with NetworkManager17:34:25
@acidbong:envs.net@acidbong:envs.net(but so does Dnsmasq 🤔 )17:34:40

Show newer messages


Back to Room ListRoom Version: 6