I stumbled across this thread, which seems to be experiencing the same problem (albeit on Ubuntu):
https://discourse.pi-hole.net/t/wifi-hotspot-not-suppling-ip-kills-ftldns/49223. For more in-depth information, look at this thread.
Please note that I use Pi-Hole in combination with Unbound.
Let me summarize my problem:
"NetworkManager (NetMan)" uses "dnsmasq", but so does Pi-Hole.
When creating a Wi-Fi hotspot on Linux Mint, NetMan tries to use dnsmasq in order to assign IP adresses to other devices that try to connect through the hotspot.
But since dnsmasq is already configured and in use by Pihole, NetMan fails to assign any IP adresses through dnsmasq.
What's also interesting is that, quote:
NetworkManager has no builtin dnsmasq but pulls in the dnsmasq-base package (core/binaries only) as recommendation and executes it automatically when starting any kind of shared connection, including the WiFi hotspot.
This is true as dnsmasq isn't actually installed on my system. I've tried installing it, but then it overrules pihole-ftl.
Enabling the DHCP component within Pihole doesn't work, since Pihole is handling the DHCP itself, and it can't share it with NetMan.
When running systemctl status NetworkManager with the wireless hotspot enabled, I get the following output:
may 01 18:00:00 NetworkManager[876]: [1651420884.9634] Executing: /usr/sbin/iptables --table nat --insert POSTROUTING --source 10.42.0.0/255.255.25>
may 01 18:00:00 NetworkManager[876]: [1651420884.9675] dnsmasq-manager: starting dnsmasq...
may 01 18:00:00 NetworkManager[876]: [1651420884.9706] device (wlp3s0): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'manag>
may 01 18:00:00 dnsmasq[10788]: failed to create listening socket for 10.42.0.1: Address already in use
may 01 18:00:00 NetworkManager[10788]: dnsmasq: failed to create listening socket for 10.42.0.1: Address already in use
may 01 18:00:00 dnsmasq[10788]: FAILED to start up
may 01 18:00:00 NetworkManager[876]: [1651420884.9920] dnsmasq-manager: dnsmasq exited with error: Network access problem (address in use, permissi>
may 01 18:00:00 : [1651420885.0070] device (wlp3s0): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'man>
may 01 18:00:00 : [1651420885.0090] device (wlp3s0): state change: secondaries -> activated (reason 'none', sys-iface-state: 'ma>
may 01 18:00:00 : [1651420885.0152] device (wlp3s0): Activation: successful, device activated.
When checking what is running on the DNS port (lsof -i:53), I get the following:
pihole-FT 6442 pihole 4u IPv4 82524 0t0 UDP *:domain
pihole-FT 6442 pihole 5u IPv4 82525 0t0 TCP *:domain (LISTEN)
pihole-FT 6442 pihole 6u IPv6 82526 0t0 UDP *:domain
pihole-FT 6442 pihole 7u IPv6 82527 0t0 TCP *:domain (LISTEN)
Which of course, is to be expected.
When checking what is running on the DHCP port (lsof -i:67), I get nothing.
This is also to be expected, and pihole-FTL would be listening if I were to enable its DHCP component.
So my question is: Has anyone got a solution to make my Linux Laptop's (with Pi-Hole and Unbound) Wifi hotspot work?
I have seen a fork of pihole out there that does the job, but I'd like to get it to work with Pi-Hole itself.
Thanks.