I am still learning about Qubes OS and I have never heard about lokinet before seeing this thread, so consider this as a disclaimer for anything I write here. I think we need better documentation about how various things work in Qubes OS, as well as about setting up custom DNS services.
What I have learned so far is that Qubes OS routes all DNS requests to 10.139.1.1
and 10.139.1.2
which is done using /etc/resolv.conf
files in templates and firewall rules. To use a custom DNS one obviously needs to modify both, otherwise DNS requests would still go to the 2 default hosts.
To persist modifications in /etc/*
you must either do them in the particular template, or use some of the other methods described in the docs: config files or bind-dirs. Since you mentioned that you are using a StandaloneVM, I don’t know why the changes you make may be volatile. You may need to look deeper into logs of the VM and the service file itself.
You can use the guide I shared in the other thread too. The sys-wall
I use there routes all DNS requests to a sys-dns
qube. Just replace the part related to dnscrypt
with your lokinet specific stuff, thus creating your own sys-dns
running whatever DNS you like. This approach makes any modifications in the client qube (your lokinet-standalone-debian-11
) unnecessary as sys-wall
which you will use as a NetVM will do that for you upstream.