如何从主机获取Parallels VM使用的IP地址?
Parallels有一个有文档记录的命令行API 尽管如此,即使这样,报告的IP_ADDR也始终为空,即使机器以internet连接的方式运行如何从主机获取Parallels VM使用的IP地址?,parallels,Parallels,Parallels有一个有文档记录的命令行API 尽管如此,即使这样,报告的IP_ADDR也始终为空,即使机器以internet连接的方式运行 如何从来宾处找到机器的IP?我需要一种使用域名或IP连接到来宾的方法。如果您想使用SSH访问机器,有一个内置命令可以帮助您实现这一点 prlctl输入 这将以root用户身份向VM打开提示 如果您出于任何其他原因想要IP,还有另一种方法可以获得它 prlctl exec ifconfig 来自prlctl的exec命令将在linux主机上执行ifconf
如何从来宾处找到机器的IP?我需要一种使用域名或IP连接到来宾的方法。如果您想使用SSH访问机器,有一个内置命令可以帮助您实现这一点
prlctl输入
这将以root用户身份向VM打开提示
如果您出于任何其他原因想要IP,还有另一种方法可以获得它
prlctl exec ifconfig
来自prlctl
的exec
命令将在linux主机上执行ifconfig
命令(如果使用windows doipconfig
而不是ifconfig
)
ifconfig
的所有输出将打印在您的终端上,并且ip将在输出中清晰可见如果是Windows虚拟机,您可以通过以下命令从主机获取ip:
prlctl exec "VM Name" ipconfig | grep "IPv4" | grep -o '\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}'
对于*nix虚拟机:
prlctl exec "VM Name" ifconfig eth1 | grep "inet " | grep -o 'addr:\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}' | grep -o '\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}'
我今天偶然发现了这一点,并发现
list
命令显示的是IP\u ADDR
,而不是IP。我检查了最近的文档中的prlctl
命令及其状态:
-f、 --满的
显示运行虚拟机的实际IP地址
提供此标志将为我显示IP地址
prlctl list-f
对SSH使用“回车”绝对是一个不错的选择。谢谢我已经找了好几天了。非常感谢。这个答案应该以“如果客户机上安装了Parallels工具…”开头,“enter”和“exec”命令仅适用于安装了工具的客户机。另外,“prlctl enter”不是SSH。它似乎直接连接到控制台,甚至通过parallels自己的协议绕过身份验证。这里举个例子:prlctl exec'Windows 10'ipconfig | grep IP
,其中“Windows 10”是我的Windows虚拟机的名称,如prlctl list
所示。这个答案应该从“如果来宾计算机上安装了Parallels工具…”exec“命令只适用于安装了工具的来宾。哇,有了它,我甚至不需要知道远程ssh到VM的ip地址,因为我可以直接运行命令-如果ssh/telnet连接被拒绝,这是一件好事。太好了。现在,为了弄清楚为什么它有一个默认地址,这表明它没有正确使用DHCP…这是我运行脚本时收到的消息:“该命令仅在Parallels Desktop for Mac Pro或Business Edition中可用。”不幸的是,prlctl
现在是一个只支持专业人士的功能…@LarsBilke这意味着有更多的理由放弃VirtualBox的并行功能,即使它显然不那么酷,但对于9/10用户来说显然更合适。
prlctl exec "VM Name" ifconfig eth1 | grep "inet " | grep -o 'addr:\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}' | grep -o '\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}\.\d\{1,3\}'