first time I try HassOS (befor I using only a the Docker on Ubuntu) and I change the hostname to ha.mylocaldom.local and after restart the HassOS Banner show me
ha.mylocaldom.local.local
So it seems the OS put’s always local behind the hostname. Again If i try with CLI or web hostname. So I must put ha.mylocaldom at the web gui to get ha.mylocaldom.local on the banner?
Feature I guess? Definitely not a bug, that’s just how mdns works.
HA tells the underlying Linux system that the hostname is {x}. Then the system broadcasts via LLMNR that the name {x} resolves to it’s ip and broadcasts via MDNS that the name {x}.local resolved to its IP.
Not really something HAOS has much control over. .local is reserved for MDNS so that postfix is always added and LLMNR names are just the hostname, no postfix.
If you’re trying to use local as your search domain it’s not going to work. .local is reserved for MDNS. HA and any addons won’t ask any DNS server to resolve .local names. If the name ends in .local it will only try to resolve it with mdns, failing that an NXDOMAIN response will be returned. HA uses systemd-resolved for multicast queries and that’s how it works, it refuses to ask a recursive resolver to resolve multicast queries as that can leak internal names.
If you want HA to be available at ha.local all you have to do is set the hostname to ha. It will broadcast that it is available at ha.local via MDNS and devices will resolve that name. It will also be available at ha via LLMNR for windows devices since that’s the multicast protocol they support.
If you have a bunch of devices on your network which don’t support mdns and LLMNR then yea it might be easiest to have a local resolver on your network. But you’ll need to pick a search domain besides local or you’ll have issues.
Thank you. I have a Windows Domain and the internal windows Domain is called MyName.local. So I try to give the HA server an internal doamin name. But now I have set the host name to ha and defined an external domainname over my UTM and everything is fine.