Win32,多个NIC计算机,每个NIC不同的DNS,gethostbyname的行为方式如何?

时间:2009-10-01 15:45:20

标签: windows networking

在win32多计算机上,如果所有网络配置了不同的DNS且具有相同的指标,如何通过特定网段上的gethostbyname()强制进行DNS解析?

否则,每次应用程序执行gethostbyname()调用时,如何知道将使用哪个DNS来解析名称?

3 个答案:

答案 0 :(得分:2)

你不能这样做,至少我相当肯定你不能指定一个接口来发出使用gethostbyname()或任何标准套接字实用程序的查询。 (这可能有一个非常深奥的win32选项,但我打赌反对它)

如果您绝对需要此功能,则需要选择第三方DNS库,为您提供此类功能......或者甚至从scatch中编写一个。

库需要为您提供绑定UDP套接字的方法,该套接字将向指定地址发出DNS查询。

也可能有一种配置Windows使用系统设置从界面发出DNS查询的方法,但我强烈怀疑在程序中是否有这样做的方法。

答案 1 :(得分:0)

https://serverfault.com/可能会有更好的回答。这是一个更适合管理机器的网站。 SO最适合编程。

答案 2 :(得分:0)

考虑使用原始套接字并实现自己的DNS查询机制。