[Solved] Missing /etc/systemd/resolved.conf file

Tywèle [she|her]@lemmy.dbzer0.com to Selfhosted@lemmy.world – 17 points –

Solution: I just had to create the file

I wanted to install Pi-Hole on my server and noticed that port 53 is already in use by something.

Apparently it is in use by systemd-resolved:

~$ sudo lsof -i -P -n | grep LISTEN
[...]
systemd-r    799 systemd-resolve   18u  IPv4   7018      0t0  TCP 127.0.0.53:53 (LISTEN)
systemd-r    799 systemd-resolve   20u  IPv4   7020      0t0  TCP 127.0.0.54:53 (LISTEN)
[...]

And the solution should be to edit /etc/systemd/resolved.conf by changing #DNSStubListener=yes to DNSStubListener=no according to this post I found. But the /etc/systemd/resolved.conf doesn't exist on my server.

I've tried sudo dnf install /etc/systemd/resolved.conf which did nothing other than telling me that systemd-resolved is already installed of course. Rebooting also didn't work. I don't know what else I could try.

I'm running Fedora Server.

Is there another way to stop systemd-resolved from listening on port 53? If not how do I fix my missing .conf file?

12

Here is a good primer on the configuration files and their possible locations: https://www.freedesktop.org/software/systemd/man/latest/resolved.conf.html

Edit: be careful because this is your domain name lookup you’re messing with. 😊

The domain name shouldn't matter

FWIW, I’m referring to the local DNS (domain name system) resolver; the mechanism that resolves local domain names into IP addresses so that computers can talk to each other over the LAN.

I know

It still won't really matter. The domain name is arbitrary in this case

Disable systemd-resolved.service? Uninstall systemd-resolved?

When I installed it it suggested turning that service off onvthe host. If you search online there are many suggestions on shutting off that stuff so 53 is left for pihole

Um, dnf doesn't do anything with configuration files. It is used for packages.

I would start by trying to create that file. If that doesn't fix it after restarting the service look into the docs. You may need to configure network manager.

As a temporary fix, instead of service systemd-resolved restart as per the article, you can try this, service systemd-resolved stop

Once the service is stopped the port should be free. You'll have to do this on every reboot (though maybe you can try adding the command to /etc/rc.local to stop it on every reboot)