如何设置virtualbox虚拟机网络?Virtualbox是一款免费开源的虚拟机,很多朋友经常用它做虚拟实验。下面小编就教大家如何在virtualbox中设置网络,什么情况下适合什么模式。
让我们来看看边肖的virtualbox网络设置教程。我希望你会喜欢它。
虚拟机virtualbox设置网络方法:
virtualbox中有四种不同的模式:
1. NAT network address translation mode (NAT)
2. Bridging Adapter Bridging Mode
3.内部网络模式
4. Host mode of host-specific adapter
第一介质中的NAT模式
NAT模式是虚拟机访问互联网的最简单方式。你可以理解为vhost访问网络的所有数据都是由主机提供的,Vhost并不真正存在于网络中,所以无论是主机还是网络中的任何机器都无法查看和访问Vhost的存在。
虚拟机和主机的关系:
只能单向访问,虚拟机可以通过网络访问主机,主机不能通过网络访问虚拟机。
虚拟机与网络中其他主机之间的关系:
只能单向访问,虚拟机可以访问网络中的其他主机,其他主机不能通过网络访问虚拟机。
虚拟机之间的关系:
不能互相访问,虚拟机和虚拟机是完全独立的,不能通过网络互相访问。
IP:10.0.2.15
网关:10.0.2.2
Domain name system: 10.0.2.3
一个虚拟机的多个网卡可以设置为使用NAT,第一个网卡连接私网10.0.2.0,第二个网卡连接私网10.0.3.0,以此类推。
默认情况下,客户端ip(IP地址)为10.0.2.15,网关为10.0.2.2,域名服务器(DNS)为10.0.2.3,可以手动修改。
NAT方案的优点和缺点:
笔记本电脑插上网线,虚拟机就可以接入主机,虚拟机就可以接入互联网。在端口映射(最后解释)之后,主机可以访问虚拟机上的服务(比如数据库)。
笔记本电脑没有插网线时:如果主机的“本地连接”有一个红叉,虚拟机可以访问主机,但是虚拟机不能访问互联网。端口映射后,主机可以访问虚拟机上的服务(如数据库)。
第二种桥接适配器模式
解释:
桥接模式是我最喜欢的模式,同时模拟也相当完美。你可以这样理解。它通过主机网卡建立网桥,直接连接到网络。因此,它支持将虚拟机分配到网络中的独立IP。
所有网络功能与网络中的真实机器完全相同。
虚拟机和主机的关系:
可以互相访问,因为虚拟机在真实网段中有独立的IP,主机和虚拟机在同一个网段,可以通过各自的IP互相访问。
虚拟机与网络中其他主机之间的关系:
他们可以互相访问。同样,因为虚拟机在真实网段中有独立的IP,所以虚拟机和网络中所有其他主机都在同一个网段中,可以通过各自的IP互相访问。
虚拟机之间的关系:
你们可以因为同样的原因去拜访对方。
IP:一般由DHCP分配,与主机“本地连接”的IP在同一个网段。虚拟机可以与主机通信。
笔记本电脑插网线时:(如果网络中有DHCP服务器)主机和虚拟机通过DHCP分别获得一个IP,两个IP在同一个网段。主机和虚拟机可以ping通,虚拟机可以访问互联网。
当笔记本电脑未接通电源时:主机和虚拟机无法通信。如果主机的“本地连接”有一个红叉,则您不能手动指定IP。虚拟机无法通过DHCP获取IP地址,手动指定IP后,由于主机没有IP,无法与主机通信。
此时,主机的VirtualBox主机专用网卡的ip为192.168.56.1。即使虚拟机手动指定IP 192.168.56。*,它无法ping通主机。
第三种内部模式
解释:
Intranet模式,顾名思义,就是内部网络模式。虚拟机与外网完全断开,只实现虚拟机之间的内网模式。
虚拟机和主机的关系:
不能互相访问,不属于同一个网络,不能互相访问。
虚拟机与网络中其他主机之间的关系:
我们不能因为同样的原因去拜访对方。
虚拟机之间的关系:
只要两台虚拟机在设置网络时设置了相同的网络名称,它们就可以相互访问。如上图配置图所示,名称为intnet。
IP: VirtualBox的DHCP服务器会给它分配一个IP,一般会得到192.168.56.101,因为是从101分出来的,你也可以指定192.168.56。*手动。
当便携式计算机插入网络电缆时,虚拟机可以与主机的VirtualBox主机专用网卡通信。
此方案不受主机本地连接(网卡)是否有红叉的影响。
The fourth host adapter only mode
解释:
主机模式,这是一种比较复杂的模式,需要有比较扎实的网络基础知识才能玩转。可以说前面几种模式所实现的功能,在这种模式下,通过虚拟机及网卡的设置都可以被实现。
我们可以理解为Vbox在主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上的,我们可以通过设置这张网卡来实现上网及其他很多功能,比如(网卡共享、网卡桥接等)。
虚拟机与主机关系
默认不能相互访问,双方不属于同一IP段,host-only网卡默认IP段为192.168.56.X 子网掩码为255.255.255.0,后面的虚拟机被分配到的也都是这个网段。
通过网卡共享、网卡桥接等,可以实现虚拟机于主机相互访问。
虚拟机与网络主机关系
默认不能相互访问,原因同上,通过设置,可以实现相互访问。
虚拟机与虚拟机关系
默认可以相互访问,都是同处于一个网段。
虚拟机访问主机用的是主机的VirtualBox Host-Only Network网卡的IP:192.168.56.1 ,不管主机“本地连接”有无红叉,永远通。
主机访问虚拟机,用是的虚拟机的网卡3的IP: 192.168.56.101 ,不管主机“本地连接”有无红叉,永远通。
虚拟机访问互联网,用的是自己的网卡2, 这时主机要能通过“本地连接”有线上网,(无线网卡不行)
通过对以上几种网络模式的了解,我们就可以灵活运用,模拟组建出我们所想要的任何一种网络环境了。
比如我想模拟出来一个一台主机,监控一个局域网上网情况的网络环境。
首先我开启了两台虚拟机vhost1与vhost2,当然如果硬件允许,我同样可以再增加vhost3、vhost4…
所有的vhost我都设置成internat内网模式,网络名称为intnal,网关为192.168.56.100,意思就是通过192.168.56.100网卡上网。
其中有一台vhost1我设置为双网卡,一张为内网模式(192.168.56.100),一张为网桥模式(192.168.1.101)。两张网卡设置双网卡共享上网
虚拟机之间为局域网,其中有一台虚拟机vhost1通过与外网相连,所有局域网中的虚拟机又通过vhost1来实现上外网。这样vhost1就可以监控整个虚拟机局域网上网情况了。
NAT 设置端口映射
http://huzhangsheng.blog.163.com/blog/static/34787784200802801435931/
你可以设置一个虚拟机的服务(比如WEB 服务),通过使用命令行工具VboxManage 代理。你需要知道虚拟机的服务使用哪个端口,
然后决定在主机上使用哪个端口(通常但不总是想要使虚拟机和主机使用同一个端口)。在主机上提供一个服务需要使用一个端口,你能使用在主机上没有准备用来提供服务的任何端口。一个怎样设置新的NAT 例子,
在虚拟机上连接到一个ssh 服务器,需要下面的三个命令:
VBoxManage setextradata 'Linux Guest'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol' TCP
VBoxManage setextradata 'Linux Guest'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort' 22
VBoxManage setextradata 'Linux Guest'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort' 2222
说明:VboxManage 是一个命令行程序,请查询你的VirtualBox 安装目录,'Linux Guest' 是虚拟主机名。guestssh 是一个自定义的名称,你可以任意设置,
通过上面的三个命令,把虚拟机的22 端口转发到主机的2222 端口。
又比如,我在虚拟机debian 上安装了apache2 服务器,使用80 端口,映射到主机的80 端口。使用下面的命令。
'C:Program Filesinnotek VirtualBoxVBoxManage.exe' setextradata 'debian'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/Protocol' TCP
'C:Program Filesinnotek VirtualBoxVBoxManage.exe' setextradata 'debian'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/GuestPort' 80
'C:Program Filesinnotek VirtualBoxVBoxManage.exe' setextradata 'debian'
'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/HostPort' 80
注意:要使设置生效,请关掉VirtualBox 再运行虚拟机,把VirtualBox 安装在winxp 上,在虚拟机中安装debian 4.02r ,虚拟机名是debian ,
并安装了apache2 php5 mysql-server ,在主机上用IE浏览http://localhost,成功转发到虚拟机debian 的apache2 web 服务器上