Algumas ideias:
Você poderia simplesmente usar o nslookup para resolver o endereço IP para um nome DNS como nslookup 192.168.1.2
, mas isso obviamente não funcionaria se uma zona de pesquisa inversa não tivesse sido configurada pelo administrador.
Outra maneira seria confiar no sufixo DNS fornecido pelo servidor DHCP - simplesmente consulte ipconfig /all | find /I "suffix"
para obter essa informação. Isso também funcionaria somente se o administrador configurasse o escopo DHCP corretamente e o cliente obtivesse seu endereço via DHCP.
Se você não puder confiar em nada dos itens acima para fornecer informações corretas, considere usar o VBScript ou o PowerShell para vincular ao serviço LDAP do AD e consultar o RootDSE object para que as propriedades descubram o nome do domínio. Isso deve funcionar mesmo usando uma ligação anônima, ou seja, sem fornecer credenciais. De lá, você deve poder consultar o _ldap._tcp.pdc._msdcs.seu registro SRV do domínio para encontrar o nome do PDC.