I’m trying to set up a somewhat weird network configuration, three interfaces on a pi, an adhoc AP, a wireless lan, and a USB modem.
I want clients of the USB device to talk to clients of the AP, I want clients of the AP to talk to other clients and a single host on the wireless network.
Sorta simple right? Just a couple firewall rules? Well NetworkManager is a land of logical defaults that do not like to be adjusted. I had it working where the AP clients could not reach out to the internet, but could reach the USB clients. NetworkManager automagic’d a NFTables ruleset that doesn’t appreciate being changed.
Okay so I’ll tell NM to not use a firewall backed in the conf, firewall-backend=none
, easy.
But once NM is restarted, the networking is behaving like the firewall is still active, despite NFtables and iptables reporting no rulesets, as NM has taken its ball and gone home.
I can’t even figure out a baseline of “what the fuck is going on” because the level of opaque NM automagic happening behind the scenes. I just poke at it and hope something happens. Half the NetworkManager behavior is hidden in dev blog posts that you need to sift through, the official documentation just basically gives the bare minimum info for a feature.
No I’m fine to do that, but systemd overwrites it every few minutes.
You’re telling me you don’t want to update a configuration that updates a configuration that updates a configuration?
Just wait until you use Ubuntu
cloud-init
which updatesnetplan
which then updatesNetworkManager
.But once NM is gone, I don’t even know how to update the thing that updates the thing that updates the thing.
My point is that NM is pretty baked-in, and I don’t know how to remove it without breaking things