I keep getting complaints from avahi that it is shutting down because your network has a .local domain and that is not allowed. It appears that the .local TLD is reserved for mDNS and any queries for names ending in .local are supposed to be sent to the mDNS multicast address, and not to a normal dns server. Is there a way to shut off this misfeature and make the router RFC compliant?
I believe it is RFC compliant (and I wrote this part of the code). I expect your case is the same as Avahi .local domain warning on Ubuntu
I checked the RFC… it states that any query ending in .local shall be sent to the mDNS multicast address, rather than to a traditional DNS server. It doesn’t come right out and say that .local shall not be served by a normal DNS server, but it seems to be implied at least. I also just ran into this problem at work because our Windows domain is a .local, and my newer linux systems can’t resolve the Windows names because systemd-resolved refuses to forward the queries to the Windows dns server.
That other thread seems to indicate that it just responds to an SOA query but not with any A records? Why is that? I thought I read somewhere that there was an A record so that you can pull up the config web server with http://something.local instead of the IP address?
Omnia’s DNS answers all in
*.local with NXDOMAIN. Even the SOA query. That’s how it’s required by the RFC. (but it adds slightly non-sensical SOA record into those answers)
You shouldn’t ask a DNS server for anything in
*.local. You should ask a mDNS server, typically UDP 5353 (e.g. avahi; I think systemd-resolved also implements it).