Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wcf 如何从hyper-v虚拟机连接到本地主机服务?_Wcf_Virtual Machine_Hyper V - Fatal编程技术网

Wcf 如何从hyper-v虚拟机连接到本地主机服务?

Wcf 如何从hyper-v虚拟机连接到本地主机服务?,wcf,virtual-machine,hyper-v,Wcf,Virtual Machine,Hyper V,我有一个WCF服务正在运行“http://localhost:12345/ServiceName". 我还有一个在Windows8公测版的hyper-v下运行的虚拟机。是否有任何方法可以从VM连接到此服务?我似乎无法在hyper-v管理器中设置桥接网络连接。另一种选择是WCF服务绑定到Win8机器名或IP,但我不知道如何从VM端找到该端点。WCF服务可以根据需要以任何方式更改 任何帮助都将不胜感激 非常感谢,, Jon您可以在Hyper-V(虚拟交换机管理器)中创建虚拟交换机,然后将其连接到虚拟

我有一个WCF服务正在运行“http://localhost:12345/ServiceName". 我还有一个在Windows8公测版的hyper-v下运行的虚拟机。是否有任何方法可以从VM连接到此服务?我似乎无法在hyper-v管理器中设置桥接网络连接。另一种选择是WCF服务绑定到Win8机器名或IP,但我不知道如何从VM端找到该端点。WCF服务可以根据需要以任何方式更改

任何帮助都将不胜感激

非常感谢,,
Jon

您可以在Hyper-V(虚拟交换机管理器)中创建虚拟交换机,然后将其连接到虚拟机(右键单击虚拟机->设置->创建遗留网络适配器->连接虚拟交换机)。之后,您应该在VM中为您的操作系统安装Hyper-V初始化。然后,您可以连接到虚拟机中的虚拟交换机。之后你也可以上网了。你的主机拥有它。在web浏览器中键入主机的IP地址,您可以访问主机中的任何服务


您还需要在主机上以管理员身份运行命令shell
netsh http add urlacl url=http://*:12345/user=Everyone
,其中12345是您服务的端口号。

不确定这是否适用于Windows虚拟机,但我设法从Ubuntu虚拟机内部打开了主机的url:

  • 在主机上禁用防火墙或添加允许连接到相应端口的规则(在您的情况下为12345)
  • 在VM上编辑
    /etc/hosts
    ,将
    127.0.0.1 localhost
    替换为
    IP\u主机localhost

  • 现在应该从虚拟机内部打开。

    我问了一个相关的(我想)评论,但没有回答。你解决过这个问题吗?我在Hyper-V for Win8 Pro中尝试了上述方法,使用IE7 Vista和IE8-WIn7虚拟机,但无法访问本地主机。这可能会帮助其他人:这似乎无法解决问题。我不认为有任何方法可以做到这一点,因为每个VM上都存在环回接口,并且您不想重定向localhost。