一文读懂vmware虚拟机上网设置

如题所述

第1个回答  2024-04-10
安装vmware后,一般都会有虚拟机能连互联网的需求(如虚拟机中Linux想访问百度),vmware为我们提供了几种连接网络的方式,它们分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式)。先搞明白几个概念:
VMnet0表示的是用于Bridged模式下的虚拟交换机。
VMnet1表示的是用于Host-Only模式下的虚拟交换机。
VMnet8表示的是用于NAT模式下的虚拟交换机。
VMware Network Adapter VMnet1:这是Host用于与Host-Only虚拟网络进行通信的虚拟网卡。
VMware Network Adapter VMnet8:这是Host用于与NAT虚拟网络进行通信的虚拟网卡。
安装好VMware后会默认生成两个虚拟网卡,VMware Network Adapter VMnet1和VMware Network Adapter VMnet8,并没有VMware Network Adapter Vmnet0虚拟网卡,这是因为Bridged模式是通过虚拟网桥进行通信和联网的,不需要虚拟网卡来使虚拟机和物理机进行通信。VMnet8和VMnet1提供DHCP服务,VMnet0默认则不提供。
虚拟机:指的是vmware或vmware中安装的操作系统
主机/物理机:指的是自己真实的操作系统
1 桥接模式
1.1 介绍
桥接模式就是将主机网卡与虚拟机的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。

桥接模式下,虚拟机ip地址需要与主机在同一个网段,网关与DNS需要与主机网卡一致
。其网络结构示意图如下图所示:
1.2 设置方式
要点:虚拟机需要与主机在同一网段,并占用单独IP
设置方式为:在虚拟机标签上右击,在弹出的菜单中选择"设置"菜单项,在打开的虚拟机设置对话框中选择桥接模式。
选择桥接模式后查看主机IP、子网掩码、网关、DNS设置,在虚拟机中设置虚拟机的地址,要在一个网段(也可以让其自动获取IP及相关配置),子网掩码、网关、DNS和主机相同。设置完成后互相ping一下,都能ping通则说明无问题。
Linux停启网卡命令为
ifconfig eth0 down 停止网卡,eth0改为ifconfig显示的网卡名
ifconfig eth0 up 启动网卡,eth0改为ifconfig显示的网卡名
1.3 常见问题
在使用桥接时按上面步骤设置完成后,有时还会发现相互ping不通。这时就需要检查vmnet0桥接了哪个网卡,是否是当前正在使用的网卡,通过"编辑"|"虚拟网络编辑器"菜单打开虚拟网络编辑器对话框,若对话框中未显示vmnet0,点击右下角的"更改设置"按钮,这时虚拟网络编辑器中就会显示vmnet0,默认"已桥接至"下拉菜单会选择自动,不要选择自动,选择正在使用的物理网卡,如我使用的是无线网卡Intel(R) Wireless-AC 9560 160MHz,选择此网卡后,再次相互ping一下,就会发现主机和虚拟机网络是通的了。
2 NAT模式
2.1 介绍
桥接模式要占用局域网中的一个IP,若局域网中IP管理较严格,无多余的IP地址可用就不能使用桥接模式了。但我们的虚拟机又需要联网,这时就需要NAT(Network Address Translation)模式了。
NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。其网络结构如下图所示:
在NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。
为什么需要虚拟网卡VMware Network Adapter VMnet8呢?主要是为了实现主机与虚拟机之间的通信。
NAT能够实现虚拟机与物理机之间相互通信、虚拟机到外面的网络通信,但是外面的网络不能到虚拟机通信。
2.2 设置方式
要点:设置VMware Network Adapter VMnet8与虚拟机在同一网段,但VMware Network Adapter VMnet8不设置网关。
将网络连接方式设置为NAT模式,在虚拟机标签上右击,在弹出的菜单中选择"设置"菜单项,在打开的虚拟机设置对话框中选择NAT模式。
下面设置NAT的配置,由于NAT的存在,虚拟机所在的网段可以随意设置,不需要和真实主机在同一网段,假设主机环境如下
IPv4 地址 : 172.16.12.232
子网掩码 : 255.255.252.0
默认网关. : 172.16.12.1
DNS 服务器: 211.138.30.66
通过"编辑"|"虚拟网络编辑器"菜单打开虚拟网络编辑器对话框,设置虚拟机所属网络为192.168.1.0,子网掩码255.255.255.0,网关地址为192.168.1.1(所有虚拟机中自动获取或手动设置IP时网关即为这个地址)。
然后设置
192.168.1.128~192.168.1.254的地址分配给虚拟机,一般虚拟机中使用自动分配IP时会取得第1个地址,即192.168.1.128。至此设置完成,此时可以ping主机或ping百度地址即可ping通。
主机访问虚拟机是通过VMware Network Adapter VMnet8来进行的,所以要对vmnet8进行配置,VMware Network Adapter VMnet8与虚拟机在一个网段即可(
网关不要设置
)。
说明:
(1)VMware Network Adapter VMnet8停用虚拟机依然可以ping通主机,但主机无法ping通虚拟机。VMware Network Adapter VMnet8是主机用来和虚拟机通讯用。
(2)若虚拟机ping 百度www.baidu.com不通,说明DNS有问题,ping 114.114.114.114或ping 8.8.8.8,若能ping通这2个地址,则将虚拟机的DNS设置为114.114.114.114或8.8.8.8即可(此时DNS与主机不同,设置DNS后确保设置成功,否则ping外网域名还是不通)。
(3)若VMware Network Adapter VMnet8启用后,主机仍无法ping通虚拟机,可尝试重启下VMware Network Adapter VMnet8
(4)在公司网络发现配置完全一样主机仍未能ping通虚拟机,目前未找到原因
3 仅主机模式
3.1 介绍
Host-Only模式是出于安全考虑,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。
如果要想让虚拟机联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的(如果这样的话建议使用NAT模式)。
3.2 设置方式
将网络连接方式设置为仅主机模式,在虚拟机标签上右击,在弹出的菜单中选择"设置"菜单项,在打开的虚拟机设置对话框中选择仅主机模式。
通过"编辑"|"虚拟网络编辑器"菜单打开虚拟网络编辑器对话框,设置VMware Network Adapter VMnet1的DHCP配置(与NAT配置类似,此网段可以和主机不在一个网段)
注:实验时主机可以ping通虚拟机,虚拟机无法ping通主机
4 LAN区段
4.1 介绍
LAN区段相当于说模拟出一个交换机或者集线器出来,把不同虚拟机连接起来,与物理机不进行数据交流,与外网也不进行数据交流,构建一个独立的网络。没有DHCP功能,需要手工配置IP或者单独配置DHCP服务器。
4.2 设置方式
将网络连接方式设置为仅主机模式,在要组网虚拟机标签上右击,在弹出的菜单中选择"设置"菜单项,在打开的虚拟机设置对话框中选择LAN区段并选择LAN区段的名(若没有可用的LAN区段名则点击下方的LAN区段按钮添加一个名称再选择)。
设置要点:要组成的LAN的多台虚拟机必须选择同一个LAN区段,IP在同一子网。
5 参考文档
1. 51CTO博客《VMware虚拟机三种网络模式详解--Bridged(桥接模式)》
《VMware虚拟机三种网络模式详解--NAT(地址转换模式)》
《VMware虚拟机三种网络模式详解--Host-Only(仅主机模式)》
2. 简书《关于Vmware Workstation桥接模式无法上网》
3. 系统运维《Vmware虚拟机教程之wmware nat host-only等几种网络连接详解》
相似回答