在win32多计算机上,如果所有网络配置了不同的DNS且具有相同的指标,如何通过特定网段上的gethostbyname()强制进行DNS解析?
否则,每次应用程序执行gethostbyname()调用时,如何知道将使用哪个DNS来解析名称?
答案 0 :(得分:2)
你不能这样做,至少我相当肯定你不能指定一个接口来发出使用gethostbyname()或任何标准套接字实用程序的查询。 (这可能有一个非常深奥的win32选项,但我打赌反对它)
如果您绝对需要此功能,则需要选择第三方DNS库,为您提供此类功能......或者甚至从scatch中编写一个。
库需要为您提供绑定UDP套接字的方法,该套接字将向指定地址发出DNS查询。
也可能有一种配置Windows使用系统设置从界面发出DNS查询的方法,但我强烈怀疑在程序中是否有这样做的方法。
答案 1 :(得分:0)
在https://serverfault.com/可能会有更好的回答。这是一个更适合管理机器的网站。 SO最适合编程。
答案 2 :(得分:0)
考虑使用原始套接字并实现自己的DNS查询机制。