虚拟机虚拟网卡作用
在使用
VMware Workstation
创建虚拟机时,可以根据需要选择使用哪种虚拟网卡,哪种连接方式。默认有
3
种:
VMnet0
(桥接网络)、
VMnet1
(仅主机网络)和
VMnet8
(
NAT
网络),当然可以根据需要添加
VMnet2
到
VMnet7
、
VMnet9
等
7
个虚拟网卡
。
虚拟机网络连接属性的意义:
1
、
Use bridged networking
(桥接网络):使用(连接)
VMnet0
虚拟交换机。此时虚拟机相当与网络上的一台独立计算机,与主机一样,拥有一个独立的
IP
地址(如图一)
。
2
、
Use network address translation
(使用
NAT
网络):使用(连接)
VMnet8
虚拟交换机。此时虚拟机可以通过主机单向访问网络上的其他工作站(包括
Internet
网络),其他工作站不能访问虚拟机(如图二)
。
3
、
Use Host-Only networking
(使用主机网络):使用(连接)
VMnet1
虚拟交换机。此时虚拟机只能与虚拟机、主机互连,与网络上的其他工作站不能访问(如图三)
。
4
、
Do not a network connection
:虚拟机中没有网卡,相当于单机
如图一中,虚拟机
A1
、
A2
是主机
A
中的虚拟机,虚拟机
B1
是主机
B
中的虚拟机。在图中,
A1
、
A2
与
B1
采用“桥接模式”,则
A1
、
A2
、
B1
与
A
、
B
、
C
任意两台或多台之间都可以互访(需设置为同一网段)。此时,
A1
、
A2
、
B1
与
A
、
B
、
C
处于相同的地位,你要把他们都当作一台真实的电脑去设置、使用。
图一:桥接方式网络
如图二中,虚拟机
A1
、
A2
是主机
A
中的虚拟机,虚拟机
B1
是主机
B
中的虚拟机。其中的“
NAT
路由器”是只启用了
NAT
功能的路由器,用来把
VMnet8
交换机上连接的计算机通过
NAT
功能连接到
VMnet0
虚拟交换机。
A1
、
A2
、
B1
设置为
NAT
方式,此时
A1
、
A2
可以单向访问主机
B
、
C
,而
B
、
C
不能访问
A1
、
A2
;
B1
可以单向访问主机
A
、
C
,而
A
、
C
不能访问
B1
;
A1
、
A2
与
A
,
B1
与
B
可以互访。
图二:NAT方式网络
如图三中,虚拟机
A1
、
A2
是主机
A
中的虚拟机,虚拟机
B1
是主机
B
中的虚拟机。若
A1
、
A2
、
B1
设置成
host
方式,则
A1
、
A2
只能与
A
互访,
A1
、
A2
不能访问主机
B
、
C
,也不能被这些主机访问;
B1
只能与主机
B
互访,
B1
不能与主机
A
、
C
互访。
图三:host方式网络
在使用虚拟机进行联网的过程中,可以随时更改与虚拟机相连接的“虚拟机交换机”。在更改了虚拟机的联网方式后,还应该修改虚拟机中的
IP
地址以适应联网方式的改变。如,假设主机的
VMnet1
使用网段地址
192.168.10.0
,
VMnet8
使用网段地址为
192.168.80.0
,网关地址为
192.168.80.254
(相当于
NAT
路由器的内网地址),主机网卡使用地址为
192.168.1.1
。假设虚拟机
A1
开始被设置为桥接方式,虚拟机
A1
的
IP
地址被设置为
192.168.1.5
,如果虚拟机
A1
想使用
host
方式,则修改虚拟机的网卡属性为(
Host-Only
),然后在虚拟机中修改
IP
地址为
192.168.10.6
即可(也可以设置其他地址,只要网段与
host
所用网段在同一个子网即可,下同);如果虚拟机
A1
想改用
NAT
方式,则修改虚拟机的网卡属性为(
NAT
),然后在虚拟机中修改
IP
地址为
192.168.80.6
,设置网关地址为
192.168.80.254
即可
。
相关概念,这儿只是简要的介绍桥接和
NAT
。
1
、桥接:桥接工作在
OSI
网络参考模型的第二层数据链路层,是一种以
MAC
地址来作为判断依据来将网络划分成两个不同物理段的技术。我们都知道,以太网是一种共享网络传输介质的技术
,
在这种技术下,如果一台计算机发送数据的时候,在同一物理网络介质上的计算机都需要接收,在接收后分析目的
MAC
地址,如果是属于目的
MAC
地址和自己的
MAC
地址相同便进行封装提供给网络层,如果目的
MAC
地址不是自己的
MAC
地址,那么就丢弃数据包。
桥接的工作机制是将物理网络段(也就是常说的冲突域)进行分隔,根据
MAC
地址来判断连接两个物理网段的计算机的数据包发送。在下图中的网络结构中,有两台集线器分别连接多台计算机,我们分别将
A
集线器和
B
集线器定为
A
冲突域和
B
冲突域。在这样的网络环境中,如果计算机
A
向计算机
C
发送数据包时,集线器
A
会将数据包在整个网络中的全部计算机(包括集线器
B
)发送一遍,而不管这些数据包是不是需要发送到另一台区域
B
。
我们再将集线器
A
和集线器
B
分别连接到网桥的两个端口上,如果计算机
A
再向计算机
C
发送数据包时会遇到什么样的情况呢?这时集线器
A
也是同样会将数据包在全网发送,当到达网桥后,网桥会进行数据包目的
MAC
地址的分析,然后对比自己学习到的
MAC
地址表,如果这个表中没有此
MAC
地址,网桥便会在两个网段上的发送数据包,同时会将计算机
A
的
MAC
地址记录在自己的表当中。经过多次这样的记录,网桥会将所有的
MAC
地址记录,并划分为两个段。这时计算机
A
再次发送数据包给
B
的时候,因为这两台计算机同处在一个物理段位上,数据包到达网桥时,网桥会将目的
MAC
地址和自己的表进行对比,并且判断计算机
A
和计算机
B
在同一个段位上,便不会转发到区域
B
当中,而如果不在同一个物理段当中,网桥便会允许数据包通过网桥。通过以上的例子我们了解到,网桥实际上是一种控制冲突域流量的设备。网桥现在基本上已经很少用到了,除了隔离冲突域以外,网桥还可以实现不同类型网络的连接(令牌环网和以太网之间的连接)和网络的扩展(
IEEE
的
5.4.3
连接规则)等等功能
2
、
NAT
:
NAT
英文全称是“
Network Address Translation
”,中文意思是“网络地址转换”,它是一个
IETF(Internet Engineering Task Force, Internet
工程任务组
)
标准,允许一个整体机构以一个公用
IP
(
Internet Protocol
)地址出现在
Internet
上。顾名思义,它是一种把内部私有网络地址(
IP
地址)翻译成合法网络
IP
地址的技术。简单的说,
NAT
就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通讯时,就在网关(可以理解为出口,打个比方就像院子的门一样)处,将内部地址替换成公用地址,从而在外部公网(
internet
)上正常使用,
NAT
可以使多台计算机共享
Internet
连接,这一功能很好地解决了公共
IP
地址紧缺的问题。通过这种方法,您可以只申请一个合法
IP
地址,就把整个局域网中的计算机接入
Internet
中。这时,
NAT
屏蔽了内部网络,所有内部网计算机对于公共网络来说是不可见的,而内部网计算机用户通常不会意识到
NAT
的存在。如图
2
所示。这里提到的内部地址,是指在内部网络中分配给节点的私有
IP
地址,这个地址只能在内部网络中使用,不能被路由(一种网络技术,可以实现不同路径转发)。虽然内部地址可以随机挑选,但是通常使用的是下面的地址:
10.0.0
.0~10.255.255.255
,
172.16.0.0~172.16.255.255
,
192.168.0.0~192.168.255.255
。
NAT
将这些无法在互联网上使用的保留
IP
地址翻译成可以在互联网上使用的合法
IP
地址。而全局地址,是指合法的
IP
地址,它是由
NIC
(网络信息中心)或者
ISP(
网络服务提供商
)
分配的地址,对外代表一个或多个内部局部地址,是全球统一的可寻址的地址