2008-11-04 58 views
2

总之 - 如何翻译一个NetBIOS域名的FQDN?翻译NetBIOS域名为FQDN(完全合格域名)

详细信息: 假设我在域A中,并且具有与域A具有信任关系的域B(我可以对凭证进行身份验证)的域B的用户凭证。 当我拥有的是来自该域的某些经过身份验证的用户(包括netbios域名)的凭据时,如何获取域B的FQDN?

我编码在C#中,但一个COM/WMI/Win32的解决方案将受到欢迎,以及。

回答

2

这可能不是最优的,但它看起来像你可以做一个NetBIOS名称查询,以获得一个IP地址,然后做一个反向DNS查找,以从得到一个FQDN ...

http://www.protocolbase.net/protocols/protocol_NBNS.php

(反向DNS步骤很容易查找)

+0

WINS与DNS完全相同,但是使用NetBIOS名称而不是域名。所以,你必须从一个名字翻译成另一个。他们分享的唯一信息是知识产权,所以这也是我所知道的唯一一个很好的过程。 – 2009-01-28 02:15:37

1

您对其他域有什么样的访问?您认证的其他域中的哪个服务器/服务?

你有没有在其他域的IP访问域服务器?如果是这样,那么你可以做这样的呼吁:

DirectoryEntry rootDSE = new DirectoryEntry("LDAP://10.11.12.13/rootDSE", @"DOMAIN\Username", "Password"); 
Console.WriteLine(rootDSE.Properties["defaultNamingContext"].Value); 

(更换10.11.12.13与域名服务器地址)。

您将获得形式答复“DC =公司,DC =组织”表示FQDN使用WinNT提供者(通过移除DC部分只是重建它,并插入点)

0

绑定到域并筛选所有用户帐户。开始枚举用户帐户。

如果用户帐户sAMAccount名不包含字符串从环“复制”,然后退出,并使用NameTranslate对象查找账户的LDAP名称。在LDAP名

部分是域FQDN。

嘿,这是一个忽悠,但它就像一个魅力。