以前一直使用的是virtualBox的桥接模式,桥接模式的特点:
虚拟机和宿主机处于同等地位,就像是一台真实主机一样存在于局域网中,可以分配到一个网络中独立的IP。
虚拟机和宿主机之间能够互访。
如果网络断开,即便虚拟机和宿主机其实是在一台物理机器上,宿主机也不能够访问虚拟机。
配置方式看:http://www.cnblogs.com/leezhxing/p/3703420.html
现在改为nat+host only的方式主要是公司的安全部门做的太好了,没有授权的主机不能访问网络,因为桥接模式相当于虚拟一台真实的机器,所以NO。
nat方式保证虚拟机能联网,host only保证虚拟机和宿主机能互访。
说一下nat和host only的特点:
NAT模式:
虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。
NAT模式下的虚拟系统的TCP/IP配置信息是由(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。
采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可。
Host-only模式:
VirtualBox在宿主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上的,虚拟机可以通过该网卡IP访问宿主机,同时VirtualBox提供一个DHCP服务,虚拟机可以获得一个内部网IP,宿主机可以通过该IP访问虚拟机。如果单纯使用Host-only模式,则虚拟机不能连接外部公共网络。
下面说一下配置方式:
1.我下载的是centos的网络版镜像[CentOS-6.5-x86_64-netinstall.iso],所以安装系统时需要联网,先配置一个nat网卡保证安装能正常进行。
只要把连接方式改为Nat就行了,其他都不用改,只要主机能上网就OK。
2.装完系统,搭好环境后,一般都在虚拟机上配置了几个域名,需要改物理机的host访问。但nat模式下物理机是不能发现虚拟机的存在的,需要添加一块host only网卡来实现互访。
添加网卡2,修改连接方式和界面名称,一般在virtualBox装完后,会生成一块host only网卡,对应的就是上边的名称。地址一般为:192.168.56.1,这里我们选用默认的即可。想添加或修改在管理-全局设定-网络下。
网卡添加完启动虚拟机,需要为网卡2配置eth1
拷贝eth0 :cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1
编辑eth1 : 只需修改DEVICE,HWADDR[mac地址]即可。HWADDR可以在上图中查看。附上一个我的。
DEVICE="eth1" BOOTPROTO=dhcp" HWADDR=08:00:27:0F:74:C9" IPV6INIT=yes" IPV6_AUTOCONF=" NM_CONTROLLED=" ONBOOT=" TYPE=Ethernet" UUID=aa9bae56-17a6-4eea-9f8b-712d66166cea"
重启网卡即可:service network restart
会给虚拟机分配一个192.168.56网段的IP,通过物理机连接这个IP就ok了。
经过上边两步就能上网和互访了。
总结:
1.在只有nat的情况下,也可以通过设置端口转发规则来实现物理机访问虚拟机。
点击端口转发设置规则:
此时,相当于把虚拟机的22端口映射到本地的12100端口上,本地的Xshell就可以连接主机的12100端口来操作虚拟机了。
2.virtualBox生成的网卡是host only的,无网络访问权限是正常的。