Recently I found an issue regarding the UAG not able to name resolve my Horizon Connection Servers in my lab environment.
I’m running Horizon version 7.11 with UAG version 3.8 appliances for external access. The appliances are enrolled fully automated with a PowerShell and a configuration file.
I’ve created a blog post on how to do this for Horizon DaaS. The same principle also applies also Horizon 7.
The appliances are enrolled with the DNS server IP address and DNS Search domain configuration parameters within the PowerShell configuration file:
After the UAG deployment, you can see the configuration is correctly applied in the UAG admin page (https://uag-mgt-ip:9443/admin)
Log in with the admin account. Go to Manual Settings -> Advanced Configuration -> System Configuration (scroll down)
When the UAG is initially deployed, everything works as expected and the UAG is able to name resolve the Horizon Connection servers. The problem occurs only when you reboot the appliance. After the appliance is rebooted, I noticed I was not able to connect externally to my Horizon environment anymore.
As it turns out, this change came with UAG version 3.7. The underlying OS Photon version 3 handles DNS resolving differently, for instance not resolving .local domains anymore.
When I looked again at the UAG admin page, I noticed my Horizon Connection server was not reachable after the reboot:
When I logged on as root on the UAG console, I could not ping the Horizon Connection Server with FQDN. This was strange because the DNS and DNS Search settings were still present in the configuration.
I decided to perform some basic Linux tests to see if everything was configured correctly on the appliance. The first place you want to look for DNS settings is the /etc/resolv.conf file. It was there I noticed the DNS name server IP address was reset to IP address 127.0.0.53
When I changed this back to my own DNS server, 192.168.0.10, the problem was solved. But, as it turned out, after another reboot the IP Address was changed again to 127.0.0.53 and as a result, the Horizon Connection Server was again not reachable anymore.
The (permanent) Fix
Update: According to KB50120424 the following procedure is still supported, but can change in the future! Please check upfront if the KB is still valid before changing anything.
The permanent fix is to change the file /etc/systemd/resolved.conf
You will have to out-comment the Domains line and fill in your DNS Search domain FQDN, in this case domain.local and save the file.
When you go back to /etc/resolv.conf, you will notice the extra line search domain.local
The nameserver is still 127.0.0.53 in this file. Don’t worry, because this doesn’t matter and DNS name resolving works perfectly again.
When you now reboot the appliance, the configuration is still there, and the Horizon Connection servers are still reachable!
I hope this article will help someone facing the same problems!