我用过的Linux命令--虚拟机和宿主机的网络连接方式
VMWare提供了三种工作模式,它们是bridged(bridged模式:对应网卡vment0)、NAT(网络地址转换模式:对应网卡vment8)和host-only(主机模式:对应网卡vment1)。
三个网卡可以理解为三个通道。要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式。
(在Linux下面ifconfig显示eth0第一个网卡IP,(eth就是ethernet以太网,在这里指网络接口),eth0连接到了一个VMware软件网卡上。在windows上,装了VMware会出现vmnet0,vment1,vment8,vment就是VMware Network Adapter(网络适配器或称网卡)的缩写,在Linux下面ifonfig的结果和windows下面装了VMware后ipconfig的结果类似)
linux操作系统是感觉不到自己到底是被安装到了物理机器上还是虚拟机上,它被安装好以后,操作系统软件直接接通到一个网卡中,这个网卡可以是物理网卡也可以是软件虚拟网卡。对于真实的物理机器这个网卡就是物理网卡,对于虚拟机这个网卡就是VMware虚拟出来的一个软件是虚拟网络适配器,通过调整这个网络适配器和vmnet0,vment1,vment8的关系,改变虚拟机和宿主机器的网络连接方式。
虚拟机支持三种类型的网络连接方式:
(1)Bridged(桥接模式)
(2)Host-only(主机模式)
(3)NAT(网络地址转换模式)
(1)Bridged桥接模式
原理:
Bridge桥,就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在桥上运行着程序,这个程序能让局域网A中的所有数据包原封不动的流入局域网B中,反之亦然。这样,局域网A和B就无缝的在链路层连接起来了,在桥接时,VMWare网卡和物理网卡应该处于同一IP网段 当然要保证两个局域网没有冲突的IP.
VMWare 的桥也是同样的道理,只不过,本来作为硬件的一块网卡,现在由VMWare软件虚拟了!当采用桥接时,VMWare会虚拟一块网卡和真正的物理网卡就行桥接,这样,发到物理网卡的所有数据包就到了VMWare虚拟机,而由VMWare发出的数据包也会通过桥从物理网卡的那端发出。
所以,如果物理网卡可以上网,那么桥接的软网卡也没有问题了,这就是桥接上网的原理了。
实现:
在bridged模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。在bridged模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。
使用bridged模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。想让它们相互通讯,你就需要为虚拟系统配置IP地址和子网掩码,否则就无法通信。
如果你想利用VMWare在局域网内新建一个虚拟服务器,为局域网用户提供网络服务,就应该选择bridged模式。
这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡绑定两个不同地址类似,实际上是将网卡设置为混杂模式,从而达到侦听多个IP的能力。
在此种模式下,虚拟机内部的网卡(例如linux下的eth0)直接连到了物理网卡所在的网络上,可以想象为虚拟机和host机处于对等的地位,在网络关系上是平等的,没有谁在谁后面的问题。
使用这种方式很简单,前提是你可以得到1个以上的地址。对于想进行种种网络实验的朋友不太适合,因为你无法对虚拟机的网络进行控制,它直接出去了。
(2)Host-only主机模式
参考文献:
http://www.360doc.com/content/11/0507/15/3508740_115023160.shtml
http://www.360doc.com/content/12/0416/11/8729844_204074891.shtml