如何从来宾计算机访问主机?[关闭]


124

我刚刚使用VMware Fusion在Mac上创建了一个新的Windows XP VM。VM正在使用NAT共享主机的Internet连接。

如何访问在Mac上使用可以访问的Rails应用程序http://localhost:3000

Answers:


134

在XP计算机上,通过转到命令提示符并键入来找到您的IP地址ipconfig。尝试用1或2替换最后一个数字。例如,如果您的IP地址是192.168.78.128,请使用http://192.168.78.1:3000


3
节省了我数小时的忙碌时间-先生,请yourself一下自己!
iancrowther 2011年

我将Lion用作主机,将Win7用作Guest,但是我无法使用此功能在Mac上访问我的rails应用程序。为什么?
larryzhao 2011年

1
如果您的本地IP地址是:192.168.1.122,则应该使用192.168.1.122:3000,并且应该可以使用
dbslone 2012年

6
重要说明:如果使用VPN连接,这些解决方案将无法正常工作。
Harshay Buradkar

80

您可以使用主机Mac(或网络上的任何其他Mac)“本地”名称:

http://macname.local:3000 /

其中macname是主机(或其他所需的)Mac的网络名称。


1
高超。我不知道.local位。谢谢!
2009年

仅在该Mac上配置了VM时才可用吗?我从其他地方移植了另一个VM,computername.local对我
不起作用

7
“ .local”是仅用于mac的东西。当您打开“系统偏好设置/共享”时,它实际上会显示您的计算机名称,并在其下方指出,要在本地网络上访问它,您应该使用computername.local-适用于连接文件共享,网络共享等
Johnus

1
这似乎要求将VMWare网络配置为NATed(或大概桥接)。“仅主机”配置会导致网络连接超时。我不清楚为什么会这样,但是……
诺曼·格雷

我曾经使用这种方法,效果很好!但是最近它停止工作了,我不确定为什么。也许它停止了对Snow Leopard的更新,或者停止了对Fusion的更新。现在,我的machostname.local解析为Internet上的公共地址。
杰森

14

对于未来的访问者:确定IP地址后,可以将条目添加到Windows主机文件中,该文件位于C:\ Windows \ system32 \ drivers \ etc \ hosts中,以将IP地址映射到(虚拟)服务器名称。添加这样的一行:

192.168.78.1   myrubyapp

现在,您可以在IE中访问该网站,其地址为http:// myrubyapp:3000

如果您在Apache下使用虚拟主机,则需要使用它来提供正确的服务器名称。


IP是否应该在NAT的各个会话之间保持固定?我不信。
Lothar'8

10

由于这个问题已经很久了,并且是针对XP的,因此这里是新操作系统的替代方案。


如果您使用的是VistaWindows 7用作Guest OS,并且通过Apache在主机中设置了虚拟主机,则以下设置方法:

在主机操作系统中,您需要确保网络连接是通过NAT完成的;

  1. 右键单击VM窗口中的网络图标(右下)
  2. 选择“ NAT”
  3. 选择“连接”
  4. 等待来宾操作系统重新连接到网络

然后,在来宾操作系统中;

  1. 单击开始>网络>网络和共享中心
  2. 点击网络连接旁边的“查看状态”
  3. 点击“详细信息”
  4. 查找“ IPv4默认网关”
  5. 打开写字板
  6. 编辑C:\ Windows \ System32 \ drivers \ etc \ hosts
  7. 在文件中添加一行,例如:

    [default-gateway-IP] www.example.com
    [default-gateway-IP] example.com
    
  8. 保存

  9. 尝试打开http://www.example.comhttp://example.com在IE中


这很奇怪,但是我必须从网关ip中减去1。实际上,通过对主机执行ping命令来找出它是有用的:ping <my-mac-host>.local并将该ip放入主机文件中
Cristian 2012年

1
代替来宾操作系统中的步骤1-4,您还可以打开“运行对话”,键入cmd+ <enter>,然后键入:ipconfig /all+ <enter>,然后在此处找到“默认网关”。
杰西·特尔福德

谢谢杰西!ipconfig /all速度也更快
Emerson Rocha

9
  1. 在XP计算机上,开始->连接到->显示所有连接。
  2. 双击本地连接。
  3. 单击支持选项卡。
  4. 采取默认网关IP <gateway-ip>,然后<gateway-ip在浏览器中点击http:// >:3000。

陷阱:地址中必须带有http://,否则IE会给您“无法显示该网页”。


6

对于Django,执行以下操作很重要:

./manage.py运行服务器[默认网关IP]:8000

因为

https://docs.djangoproject.com/en/dev/ref/django-admin/

请注意,无法从网络上的其他计算机访问默认IP地址127.0.0.1。为了使您的开发服务器对网络上的其他计算机可见,请使用其自己的IP地址(例如192.168.2.1)或0.0.0.0或::(启用IPv6)。


5

我只是花了一个小时试图按照SO上的步骤进行操作,但是我的结果却有所不同。

VMWare设置

1.)将VMWare连接设置为NAT
2.)运行> cmd> ipconfig>复制默认网关值
3.)编辑主机文件(c:/ Windows / System32 / drivers / etc / hosts)

  • 将此添加到您的主机文件:

<gateway-ip> yourserver.local

OS X设置

1.)编辑Apache配置(例如sudo vim /etc/apache2/httpd.conf)

  • 将此虚拟主机条目添加到您的httpd.conf文件中:
名称VirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
    DocumentRoot“ /路径/到/您的/项目”
    ServerName yourserver.local

    <目录“ /路径/到/您的/项目”>
        允许全部覆盖
        选项全部
    </目录>
</ VirtualHost>
  • 保存并退出(:wq)

2.)编辑您的主机文件(sudo vim / etc / hosts)

  • 将此行添加到您的主机文件

127.0.0.1 yourserver.local

3.)重新启动Apache(重新启动sudo apachectl)

我发现我必须在VMWare上切换连接设置才能重新启动连接,然后这些设置才对我有用。我希望这有帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.