2011-07-14 32 views
1

我想从主机B做一些主机A的v4网络配置。因为使用WMI over v4会是一个catch-22,我想使用本地链接v6来建立连接。如何使用WMI/COM连接到链接本地IPv6?

COM至少在2003年以后支持IPv6。似乎链路本地被遗忘了。

的令人困惑的事情是这样的:如果主机A已工作的IPv4(是的,4),这个工程(在Python):

>>> c = wmi.WMI('fe80::c0af:e3e1:8383:ddc7%17', user='Administrator', password='blabla') 
>>> 

然而,当我从一个界面中删除V4地址,或更换它带有主机B无法连接的地址,上述调用失败,报告“未找到指定的对象导出器”。有趣的是,主机A上的netstat确实显示连接尝试。

附加信息:

  • 的Windows TELNET.EXE接受FE80地址,有和没有17%,并连接到端口135就好了。
  • Python的socket.socket.connect也一样。

任何提示?

已解决:看起来WMI做了某种回调连接,在这种情况下无法应付本地链接v6。升级为MS支持。

+1

您可以将您的解决方案作为下面的答案发布,并将其标记为已接受的答案吗? – brandizzi

+0

嘿。我实际上是在寻找“答案”按钮,但完全掩盖了它。将解决。 – Habbie

+0

必须等到明天才能接受它。叹。 – Habbie

回答

1

事实证明,无论什么奇怪的回调机制WMI做双向通信去,不能应付链路本地寻址。我正在升级到微软的支持。

更新:我已经讨论过MS支持的问题。事实证明,Windows防火墙块链接本地名称解析和WMI的默认设置需要工作名称解析。

在要连接的计算机上启用“网络发现(LLMNR-UDP-In)”的允许规则,使所有内容正常工作。显然这个问题不是一些连接回来,但WMI坚持连接到一个指定的端点。或者其他的东西。