I was having a very similar issue (or the same?) to the one described in here.
In my case I am attempting to install pi-hole on a fresh streisand installation; I must differ with the recommended steps from the official documentation on how to set pi-hole with a vpn as choosing the interface ip does not work; instead i choose one of the vpn interfaces as the main one (i've tried wg0 and tun0) but with the public ip address and gateway (as per the defaults) - it works like a charm but on reboot the dnsmasq service fails to start and the vpn interfaces would be down (although I could manually up them);
The problem is that dnsmasq installed by Streisand enters in conflict with the custom dnsmasq shipped with pihole on pihole-FTL.service, as described here
sudo systemctl stop dnsmasq.service
sudo systemctl restart pihole-FTL.service
running this commands brings all vpn interfaces back up and everything is working with pi-hole filtering on all interfaces and as closed-relay. So I've tried disabling the default dnsmasq from boot but I am faced with errors:
root@pihole:~# systemctl disable dnsmasq
Synchronizing state of dnsmasq.service with SysV init with /lib/systemd/systemd-sysv-install...
Executing /lib/systemd/systemd-sysv-install disable dnsmasq
insserv: warning: current start runlevel(s) (empty) of scriptdnsmasq' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script
dnsmasq' overrides LSB defaults (0 1 6).
insserv: warning: current start runlevel(s) (empty) of scriptdnsmasq' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script
dnsmasq' overrides LSB defaults (0 1 6).
root@pihole:~# update-rc.d dnsmasq disable
insserv: warning: current start runlevel(s) (empty) of scriptdnsmasq' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script
dnsmasq' overrides LSB defaults (0 1 6).
My solutions was to remove the systemd and init.d scripts for dnsmasq (I'm hoping there is a better suggestion on how to deal with it?)
rm /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/dnsmasq.service
rm /etc/init.d/dnsmasq
rm /etc/systemd/system/dnsmasq.service.d
Everything seems to work correctly now and the server is not working as an open-relay.