根据这个链接,从Windwos开始就不再支持NetBIOS。当然,我不能再从网络属性中看到任何NetBIOS名称。
然而,当我在Windows 7上编写代码时,我仍然会在许多地方遇到NetBIOS名称。例如
我猜微软仍然保持了部分的向后兼容性。我想了解Windows7将如何将NetBIOS名称解析为IP地址。我发现这篇文章解释了NetBIOS名称解析是如何工作的,但恐怕在Windows7中不再是这样了,至少我没有WINS服务器。
我的最后一个问题是如何以编程的方式解析NetBIOS名称,最好是在C#中。我可以使用PInvoke。
UDAPTE
崔德斯是对的。我可以使用System.Net.Dns.GetHostAddresses(“主机名”)解析NetBIOS名称。我用反光镜观察引擎盖下面发生了什么。它正在调用32.dll
这里,它解释了gethostbyname()将执行NetBIOS名称解析。
关于NetBIOS在这个链接中不受支持的神秘之处,我认为它只是意味着不支持API。ServerFault的人认为Windows 7仍然支持NetBIOS。
发布于 2011-01-20 18:19:37
NetBIOS本身作为旧协议可能不受支持,但SMB/CIFS仍然支持,这就是文件共享的主机名仍然有效的原因。
至于如何解析名称,我能够这样做:
System.Net.Dns.GetHostAddresses(“主机名”)
我在一个域上,所以它可能只是附加一个DNS后缀和进行DNS查找,但它对我有效。试试看。:)
https://stackoverflow.com/questions/4750736
复制相似问题