При установке Active-Directory вам нужен динамический DNS (DDNS). Во время его установки AD регистрирует информацию в DNS, как вы можете видеть на следующем снимке. На данном компьютере Windows класс WMI win32_ComputerSystem
может предоставить вам доменное имя.
Вы можете увидеть здесь под деталью _ldap
запись:
Эта запись SRV
содержит DNS-адрес и порт контроллеров домена вашего домена. Запись _ldap
может иметь несколько значений, поскольку в вашем домене несколько контроллеров домена.
Используя инструмент NSLOOKUP.EXE
, вы можете получить эту информацию, как показано здесь:
> set type=SRV
> _ldap._tcp.dom.fr
Serveur : UnKnown
Address: 192.168.183.100
_ldap._tcp.dom.fr SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = wm2008r2ent.dom.fr
wm2008r2ent.dom.fr internet address = 192.168.183.100
Если вы не знаете домен, вы можете просто запросить _ldap._tcp
, как в примере выше:
> _ldap._tcp
Serveur : UnKnown
Address: 192.168.183.100
_ldap._tcp.dom.fr SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = wm2008r2ent.dom.fr
wm2008r2ent.dom.fr internet address = 192.168.183.100
С точки зрения C # я не уверен, что класс System.Net.DNS
позволяет запрашивать записи SRV. Вы можете найти в эту запись кодового комплекса Кажется, что сборка DnDNS делает это.