Virutalbox 虚拟机和宿主机之间互ping

来源:互联网 发布:mac口红膏体不光滑 编辑:程序博客网 时间:2024/05/22 17:38
VirtualBox下共有四种网络配置方式:NAT,Bridge,Internal,Host-only。
这里我们只用到NAT和Host-only两种方式,具体的四种方式的联系区别可以参考VBox自带的User Manual。
一、主机与虚拟机通信(单向,虚拟机guest到主机host,可以上外网)
一般情况下,当你安装了VBox并装上guest os(debian6.0.7)后,guest os就是NAT直接可以上外网的,并且是通过dhcp获取ip地址的。参考地址中说的很详细,user manual中也有说明。
这里我们可以改成静态ip地址。打开Guest A
设置如下:
vi /etc/network/interfaces

view sourceprint?
01.# The loopback network interface
02.auto lo
03.iface lo inet loopback
04.# The primary network interface
05.auto eth0
06.#allow-hotplug eth0
07.iface eth0 inet static
08.address 10.0.2.10
09.netmask 255.255.255.0
10.gateway 10.0.2.2

同样可以设置Guest B,只是address一行改为10.0.2.20(这里ip地址可以设为10.0.2.4-10.0.2.254之间,2.2为网关,2.3为dns)。
重启网络:/etc/init.d/networking restart。
这里如果直接使用原来的dhcp,发现guest的ip地址都是一样的(一般为10.0.2.15)。不过貌似也没关系,因为主机Host是无法访问虚拟机的。这时两台虚拟机之间也是无法ping通的(即使它们看起来在一个网段,这就与NAT的原理有关了)。一开始我以为能够ping通,才有了配置静态ip这么一段。配置完这一步可以保证虚拟机能够访问外网。
这时,
Guest A:
eth0 10.0.2.10
Guest B:
eth0 10.0.2.20
二、主机与虚拟机以及虚拟机之间互通信
关闭虚拟机(开机状态下无法设置),在设置->网络中,点击网卡2(网卡1被用作NAT),启用网络连接,选择Host-Only方式,在混杂模式中选择全部允许(不知道选择其他可不可以,没有试,当时直接选择的全部允许)。记得点击确定哈。
打开虚拟机,vi /etc/network/interfaces(A和B都要做)
添加两行
auto eth1
iface eth1 inet dhcp
重启网络,/etc/init.d/networking restart
这时A的地址会设置为192.168.56.101,B的地址会设置为192.168.56.102。
一开始我设置成静态地址,但发现上不了外网,不知是何原因。
这时,
Guest A:
eth0 10.0.2.10
eth1 192.168.56.101
Guest B:
eth0 10.0.2.20
eth1 192.168.56.102
主机ping Guest A:ping 192.168.56.101 成功。
主机ping Guest B:ping 192.168.56.102 成功。
Guest A和B ping主机:ping ip(这个ip为主机正在上网的ip地址,通过NAT) 成功。
             或者:ping 192.168.56.1(通过Host-Only) 成功。
Guest A ping Guest B:ping 192.168.56.101 成功。

地址:http://www.it165.net/os/html/201401/7063.html

0 0