有没有办法find使用Win2008 R2 Hyper-Vpipe理器或命令行工具的Windows XP Hyper-V guest虚拟机的外部可访问的IP地址?
我希望能够通过远程桌面通过IP地址连接到我的客人(对于名称parsing无法正常工作的情况),但是没有通过DHCP服务器进行梳理,知道哪个IP地址对应于哪个主机是非常具有挑战性的。
有任何想法吗?
为每个客人分配静态IP是可能的,但是我想避免。
看看这个链接,它会做你想做的
为什么不使用Hyper-Vpipe理器打开虚拟机的控制台? 如果您在“防火墙设置”中启用了“远程pipe理”,则它可以远程工作,并且不必在DHCP服务器中执行任何查找。 否则,不,Hyper-V不会跟踪它的虚拟机IP,只是它们的MAC地址。
您可以使用脚本从WMI(从technet )获取信息:
…确定一台电脑的IP地址?
使用Win32_NetworkAdapterConfiguration类并检查IPAddress属性的值。 这是以数组forms返回的,所以使用For-Each循环来获取值。 strComputer =“。”
设置objWMIService = GetObject(_
“winmgmts:\\”&strComputer&“\ root \ cimv2”)
Set IPConfigSet = objWMIService.ExecQuery _
(“从Win32_NetworkAdapterConfiguration中selectIP地址”)
对于IPConfigSet中的每个IPConfig
如果不是IsNull(IPConfig.IPAddress)那么
对于我= LBound(IPConfig.IPAddress)_
到UBound(IPConfig.IPAddress)
WScript.Echo IPConfig.IPAddress(i)
下一个
万一
下一个
不幸的是,这是本地机器的代码,你需要根据这篇文章调整它以连接到远程WMI。
让每台机器启动时将其IP地址写入networking共享上的文本文件可能会更容易。
或者你可以直接查询DHCP服务器的信息(如果是MS, 我可以查询DHCP服务器获取MAC地址映射到IP地址(我有pipe理员权限)?应该工作)