我想通过主机访问同一页面。我尝试使用访客的IP地址,但没有任何反应。理想情况下,我希望设置Windows 7(主机)以在客户机上请求
http://guestserver.com
的Apache服务器。我该怎么办?#1 楼
如果您需要物理网络中的其他计算机才能访问虚拟机(或者虚拟机需要Internet访问),请使用桥接网络。否则,请坚持使用仅限主机的网络。停止VM并在VirtualBox(OSE)管理器中打开其设置
转到“网络”选项卡
选择所需的网络模式(桥接网络或仅主机)(在下面的示例中,我使用的是仅限主机)
如果要使用桥接网络,您必须在“名称”处选择正确的网络适配器。对于有线连接,您可以选择类似
eth0
的名称。无线连接通常命名为wlan0
(数字可能有所不同)保存设置
启动Ubuntu VM
启动后,您可以通过运行以下命令收集IP地址:
ifconfig | grep addr
在下面的输出中,
192.168.56.101
是可在Win7主机系统中用于访问VM的IP地址:eth0 Link encap:Ethernet HWaddr 08:00:27:70:27:fe
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe7b:25fe/64 Scope:Link
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
在Windows主机系统中,以管理员身份编辑
C:\Windows\System32\drivers\etc\hosts
并添加以下行:192.168.56.101 guestserver.com
Ubuntu主机系统,使用
/etc/hosts
编辑sudo nano /etc/hosts
Profit!
评论
这对于仅主机的网络非常有效,我现在可以从主机的浏览器访问来宾。但是,通过桥接连接(我想要),我无法从来宾访问Internet。
–urok93
2011年7月7日在11:06
ipconfig不是Linux上的命令,它是ifconfig。你是那个意思吗
–最大
13年6月18日在20:07
在Windows 7/8上,主机文件位于:C:\ Windows \ System32 \ drivers \ etc \ hosts
–达伦
13-10-25在10:01
@begueradj上面的那些步骤适用于桥接网络,但是某些网络不允许/给您多个地址。因此,在我的uni上,我无法使用桥接网络,在那种情况下,我将使用NAT和端口转发。
– Lekensteyn
2014年5月22日14:43
启用两个网络适配器(一个NAT和桥接)使我能够看到并看到蜜蜂。
– stenci
14-10-23在21:56
#2 楼
就我而言,我有一个为我的主机PC分配静态IP的路由器。将网络适配器设置为网桥:
设置>网络>适配器1(启用网络适配器)>附加到:(网桥适配器)>确定
启动虚拟机>登录
将VirtualMachine的IP从动态更改为静态
sudo nano / etc / network / interfaces
在主网络接口下,将dhcp更改为static
,然后输入新的静态IP或注释该行并添加一个新路由器
:
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.10.110
netmask 255.255.255.0
gateway 192.168.10.1
network 192.168.10.0
broadcast 192.168.10.255
注意我的路由器在
xxx.xxx.10.x
工作,您可以位于
xxx.xxx.0.x
或其他位置。
完成之后,您就可以上网了连接主机和来宾计算机,然后在Web浏览器中键入该静态IP来检查您的apache服务器。
评论
我忘记说了,您必须确保/ etc / hostname的配置方式正确:nameserver [your_isp_primary_dns]和nameserver [your_isp_secondary_dns]
– Nuc134rB0t
2012年7月2日,12:58
#3 楼
您可以尝试在防火墙/其他端口下尝试端口转发,而不要将端口设置为tcp和udp连接,而不必尝试将适配器设置为桥接或仅主机网络适配器。评论
到目前为止,这只是Web服务器的最简单选择。将您的来宾网络保留为NAT,并将所需的任何端口转发到主机上。简单。好处是您仍然可以从来宾访问所有网络。桥接时,您只能访问桥接网络。
–SimonAlfie
20 Mar 31 '10:50
#4 楼
接受的答案对我不起作用(我在ubuntu 12.04 LTS内安装了virutalbox,在我的ubuntu 14.04 LTS Server内安装了virtualbox)。我只是交换了Adapter1和Adapter2的网络设置,即将Adapter1设置为“ bridged networing”,将Adapter2设置为“ NAT”,它开始工作。评论
这很有用,但是请切换适配器顺序,以便来宾默认情况下使用NAT并能够连接到Internet。
–MadeOfAir
15年3月30日在17:17
这实际上对我有用。我正在尝试从Mac主机中访问Windows VM。
– benjaminz
16年6月8日在19:26
经过数小时的阅读并尝试了我可以在网上找到的所有其他解决方案,您的这种想法像一个魅力一样发挥了作用。非常感谢您编写它!使用Ubuntu 18.04作为主机和来宾。
–约翰
19年7月18日在16:22
#5 楼
如果仅需要特定的端口(例如,如果您正在运行Jetty或Tomcat之类的Web应用程序,则只需执行以下操作:设置->网络->将其中一个适配器设置为NAT->按'Port转发”->设置相关的主机和来宾端口。
保存后,您可以从本地计算机转到localhost:hostport,它将重定向到虚拟机相关端口,您完成了。
#6 楼
如果无法通过ip进行连接,则在默认的apache安装中使用dns名称不太可能成功。检查虚拟主机的网络设置,我总是将其桥接到它上可以在整个网络中访问。
评论
我将其设置为桥接,但现在访客无法连接到互联网。
–urok93
2011年7月7日在10:58
您在任务OS中获得IP吗?我通常会设置多个NIC来匹配我所有的物理NIC。您能否从任务和主机中转储ifconfig
– PvdL
2011年7月7日在16:48
当我使用无线工作时,但可以使用电缆,但以下屏幕快照显示了我的配置:imageshack.us/photo/my-images/832/guestr.png imageshack.us/photo/my-images/846/virtualbox .png imageshack.us/photo/my-images/9/hostwin7.png
–urok93
2011年7月8日在9:41
请问有什么帮助吗?
–urok93
2011年7月10日在21:58
看来您的计算机已直接连接到Internet,这可能是您的客户端未获得IP(v4)的原因
– PvdL
2011年7月11日在8:36
#7 楼
在桥接模式下,如果主机使用静态IP地址,则应在与主机IP相同的范围内手动配置来宾IP。否则,将不会为来宾自动分配有效的IP地址。 HTH。#8 楼
Lekensteyn的答案是正确的。但是,如果您在公司环境中,则可能必须为访客的IP地址禁用代理服务器。例如,如果您在主机上使用Mozilla Firefox,并且尝试在访客上访问192.168.56.101/,则需要转到Firefox的“工具”->“选项”->“高级”->“网络”->“设置”,然后使用“否代理”或“没有代理-> 192.168.56.101”。#9 楼
如果您需要访问由于使用DHCP而获得不同IP的来宾,我建议通过其主机名进行访问。但是,当主机是Windows时,通过主机名访问可能需要一个额外的工具。多播DNS可以解决此问题。Ubuntu默认是通过Avahi使用的。
Windows主机需要一个Avahi客户端才能发现其他Avahi服务。如果您的主机已经使用了某些Apple软件,则可能已经通过一项名为Bonjour的服务在其中了。但是,如果尚未安装,则可以在此处下载Bonjour的小版本:Bonjour打印服务。安装后,您应该可以通过.local访问您的访客。
注意:默认情况下,mDNS系统似乎使用.local后缀。因此,如果您的主机名是“ dev.myapp.com”,那么实际的主机名将是“ dev.myapp.com.local”。
#10 楼
我经过大量搜索后解决了相同的问题,并以下一种形式阅读了很多消息:1)在Virtual Box 6.1中安装虚拟机,并带有空白版本的Ubuntu Server 16.04、2GB RAM和一个CPU。主机是Windows 7,连接到路由器。我有一个公用IP,并配置了路由器路由器IP转发并为主机的本地IP打开端口80:192.168.xx.xx。
2)然后在Virtual Box中,转到工具->首选项->网络->添加新的NAT网络。然后编辑此新的NAT网络。 ->名称=“ NatNetwork”。然后单击转发端口-> IPv 4->规则1; TCP;主机IP 192.168.xx.x(主机的本地IP);主机端口= 80;来宾IP = 10.0.2.xx(这是我的来宾ubuntu服务器的IP,我从控制台看到的是$ ifconfig);来宾端口=80。然后单击ACEPT。
3)在虚拟机(在我的情况下为Ubuntu)中,转到配置->局域网配置:仅限于:RedNat;名称=“ NatNetwork”(选择2中创建的Nat Netw。)。
4)接下来,我运行我的来宾计算机(Ubuntu Server 16)。
5)在控制台中,我安装了Apache2,请按照https://www.digitalocean.com/community/tutorials/como-instalar-linux-apache-mysql-php-lamp-en-中的步骤进行操作ubuntu-16-04-es
6)安装apache2后,我可以通过$ curl 10.0.2.xx(来宾计算机的本地ip)查看我的Apache服务器,并通过Chrome浏览器查看同一Apache服务器在本地IP 192.168.xx.xx的主机中,以及在公共IP中的同一Apache服务器(因为我已经为IP转发配置了路由器)。
在下一页中,您可以查看图形处理:
https://estudioecabrera.com.ar/apache-ubuntu/
评论
我找到了帮助我解决该问题的网站。以下答案是正确的,但未显示任何有关在VM中创建虚拟适配器的信息。我提到的网站是:christophermaier.name/2010/09/01/…