I have a computer in a Windows domain and I'm trying to get the current domain name and host's FQDN from a Golang program.
The best approach that I've found is to get the IP address of all the interfaces, and try to resolve each one of them to get the FQDN. The problem is that I don't get any results after calling the function net.LookupAddr(), but I got the FQDN if I use the Windows command nslookup or the Powershell cmdlet Resolve-DnsName.
The following code just returns an empty array:
ipAddr := "10.0.100.39"
dnsName, _ := net.LookupAddr(ipAddr)
When if I run the nslookup or Resolve-DnsName from a powershell window, it will return the FQDN.
According to the Golang code, it should be using DNSQuery_W in Windows: https://golang.org/src/net/lookup_windows.go#L291
If you know a better way to get name of the domain for the current machine in Golang, I would be happy to consider it, but still want to know what's happening here.