This has been a problem for me since fedora switched to systemd-resolver.
My basic LAN has a dedicated DNS (dnsmasq) and DHCP server. Other servers have a single name: no FQDN, only hostname. The dnsmasq server maintains a hosts file with the static ip addresses of those servers. I just installed F35 minimal server on a RPi 3. From that server, I can get the addresses of the local servers via dig and nslookup. But via other apps, like NFS, those hostnames are not sent to my local DNS server; rather they are sent to outside backup DNS servers, and sent to top level domain servers.
My other servers, running F34, work fine.
Any help will be greatly appreciated.
I’ve had similar problems and I’m not sure how to fix it. I’ve switched to NetworkManager for DNS and that’s fixed everything here for me.
I have a working configuration on my home server lab, but unfortunately I’m away for a couple more weeks, the servers are presently offline, and I don’t have the configuration committed to memory. I did have to have compatible changes both on the dnsmasq server and on the other servers, I recall.
Bottom line is that I can’t help until second week of May. Hopefully someone else can assist in the meantime.
I think this solves this problem, at least for me:
systemd-resolved does not resolve hostnames without suffix
To make systemd-resolved resolve hostnames that are not fully qualified domain names, add ResolveUnicastSingleLabel=yes to /etc/systemd/resolved.conf.
Warning: This will forward single-label names to global DNS servers which may not be under your control. This behaviour is not standard-conformant and may create a privacy and security risk. See resolved.conf(5) for details.
This only seems to work with LLMNR disabled (LLMNR=no).