I have set up an OpenVPN Server on a Debian9 device so that my company can reach our server infrastructure from the outside. I'd like them to use hostnames to reach the servers so I've set up Bind9 as an internal DNS. I've modified OpenVPN's server.conf so that the DNS and Domain are pushed to client :
push "dhcp-option DNS X.X.X.X"
push "dhcp-option DOMAIN mydomain.com"
I have no problems pinging hostnames and FQDN on a Linux client, however, on Windows, I can only ping the FQDN. If I do a ipconfig /all on the Windows client, I can see that the DNS suffix mydomain.com is affected to the right NIC. Running a nslookup shows me that the DNS in use is my computer's default and not the one provided by the OpenVPN server so my guess is that my computer only searches the hostname on the default DNS.
Which client version are you using ? The options available vary depending on the version as you can see here: OpenVPN - Using DNS servers pushed to clients
This is just a hunch but I would try adding this option in the client config file: register-dns (source)
Optionally:
block-outside-dns
(used to prevent DNS leaks)