2.Tried start Guest VM, virt-manager gives error about dnsmasq missing.
3.Edited “default” network xml file.
added: <dns enable="no"/>
removed: dhcp range
4.Tried start Guest VM again, all working.
Same should work with Whonix, since whonix don’t need dns or dhcp.
I hope you guys can fix this in whonix network xmls. And attack surface will be reduced.
My experience was different. After uninstalling dnsmasq-base and modifying default network settings, I ended up with libvirt process instability where it crashed and refused to start-up or let the virtual machine manager GUI to connect to it until
> It sounds like you're using the old monolithic 'libvirtd' daemon.
How to check that?
> Thus if you're not intending to use the libvirt virtual network feature,
simply don't install its modyle, and then libvirtd will see the module
doesn't exist, and skip the dlopen.
That sounds like something people would do who compile from source code?
We're using libvirtd (9.0.0-4) from Debian package sources. [1]
> If you're using the new modular daemons,
That is libvirtd 9.x or 10.x?
Is there a chance that something is wrong with the libvirtd compilation settings by Debian's packaging?
[1] packages.debian.org/bookworm/libvirt-daemon
@Patrick got a reply and it seems that Debian package maintainers are causing this by the way they choose to put it together. Let’s work on a draft for a request/bug report and ill go ahead and send it to their tracker.
Running libvirt without dnsmasq broken due to Debian’s packaging
content:
Package: libvirt-daemon
Severity: normal
Expected behavior:
Running libvirt should be possible without dnsmasq should be possible
Actual behavior:
Libvirt crashes when dnsmasq is not installed by default.
Additional information:
Upstream libvirt confirmed, that Debian packages all into libvirt-daemon. [1] This is apparently not how upstream libvirt has designed it to be. Could you look into it please?
The dns element can have an optional enable attribute Since 2.2.0. If enable is “no”, then no DNS server will be setup by libvirt for this network (and any other configuration in will be ignored). If enable is “yes” or unspecified (including the complete absence of any element) then a DNS server will be setup by libvirt to listen on all IP addresses specified in the network’s configuration.
This means, if is unspecified then a DNS server will be setup by libvirt to listen on all IP addresses specified in the network’s configuration.
Sadly still not possible, once you remove the package and redefine the networks from scratch it will lead into error of unable to find ‘dnsmasq’ binary. maybe alternative last try is a dummy package, but i dunno if it will resolve it or not.