2008-11-04 64 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。

嘿,這是一個忽悠,但它就像一個魅力。