• VWware设置静态ip地址及不同网络模式讲解


    VMware设置静态ip地址及不同网络模式讲解

    此处的静态IP配置选用的是使用NAT方式连接网络【如果之前配置有错误,可以尝试暴力方法:将虚拟机网络配置重新恢复为默认,然后从头开始配置】

    1 将Linux虚拟机和Windows主机IP配置在一个网段

    1.查看VMware给Linux虚拟机分配的ip所在网段:

    (1)右键点击VMware中的【编辑】菜单栏,打开【虚拟网络编辑器】,然后选中【VMnet8】,并点击【NAT设置】;
    在这里插入图片描述
    (2)查看VMware的虚拟网络配置中默认给虚拟机分配IP的在哪个网段。这里可以看到我的VMware中的NAT设置中的子网IP为192.168.145.0,这里的第三个位置中的十进制数表示网段,所以我的VMware给Linux虚拟机分配的ip在145这个网段;
    在这里插入图片描述

    上面的145网段是VMware默认给虚拟机分配的网段,我们自己也可以修改为自己的网段,如137
    • 1

    2 修改本机Win10的虚拟网卡

    ①Win+R,输入control,打开控制面板,在网络和Internet中找到VM8网卡
    在这里插入图片描述
    ②右击,选择属性
    ③选中Internet协议4,再选择属性
    在这里插入图片描述
    ④设置对应IP地址

    先勾选【使用下面的IP地址】,然后配置IP。因为Linux虚拟机和windows主机需要不经过网关实现互相通信,所以这里配置的IP地址和虚拟机的IP地址要在同一个网段。而上面已经看到我的虚拟机是在145网段,所以这里的ip也要在145网段,也就是这里的IP可以配置为(192.168.145.0 ,192.168.145.255)这个开区间范围中的任意一个IP,我这里配置的是192.168.145.1;然后子网掩码要和虚拟机中的子网掩码保持一致即可;因为配置虚拟机和window主机的IP在同一网段,通信不需要经过网关,所以这里的网关暂时可以先不配置。配置完成之后,点击【确定】;

    在这里插入图片描述

    3 配置虚拟机静态IP

    ①输入命令(以root身份):

    vim /etc/sysconfig/network-scripts/ifcfg-ens33
    
    • 1

    然后编辑配置文件。
    ②添加以下内容
    按下键盘上的i,进行插入模式

    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="static"
    IPADDR="192.168.145.13"
    NETMASK="255.255.255.0"
    GATEWAY="192.168.145.2"
    DNS1="192.168.145.2"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    UUID="f92c386d-e32b-4085-b8ba-2b8d6924eb88"
    DEVICE="ens33"
    ONBOOT="yes"
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    在这里插入图片描述
    然后输入:wq保存退出

    • IPADDR: 表示你配置的静态IP。上面我们已经查看了自己的VMware给虚拟机的IP的所在网段,并且也将windows主机中的虚拟网络ip配置在了这个网段,所以这里给Linux虚拟机配置的静态IP也要在这个网段。例如,我的VMware分配IP的网段是145,所以这里我给Linux虚拟机配置的静态IP也要在145这个网段,而一个网段的IP范围为0~255,所以这里我指定的IP的取值为:192.168.145.0 ~ 192.168.145.255 。
    • GATEWAY: 表示配置的网关。因为虚拟机需要与外围通信,所以需要配置,而这个值就是上面查看VMware的虚拟网络配置中的网关IP。
    • DNS1: DNS的值也与GATEWAY的值配置为一样的即可。
    • ONBOOT: 这个属性的值要改为yes。
    • BOOTPROTO: 这个属性的值要改为static,表示启用静态IP。

    ③重启网卡

    service network restart
    
    • 1

    4 测试

    在centos7中输入命令(不同发行版命令不同):

    ifconfig

    • 查看对应ip地址,发现配置成功

    • ping baidu
      在这里插入图片描述

    • ping win10主机
      在这里插入图片描述

    5 拓展:VMware的虚拟交换机及不同模式

    5.1 VMnet0:用于虚拟机桥接网络下的虚拟交换机

    桥接网络(Bridged Networking)

    • 本地物理网卡和虚拟网卡通过VMnet0虚拟交换机,物理网卡和虚拟网卡在拓扑图上处于同等地位(虚拟网卡既不是Adapter VMnet1也不是Adapter VMnet8)
    • 那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机。所以两个网卡的IP地址也要设置为同一网段。
    • 物理网卡和虚拟网卡的IP地址处于同一个网段,子网掩码、网关、DNS参数等都相同,两个网卡在拓扑结构中是相对独立的。

    物理主机就好像一个交换机,将物理主机和虚拟机连接在一个局域网内。和主机的关系就像局域网汇中一台独立的主机,和主机同等地位。获取外网IP进行上网。

    物理机上有一个自身的网卡,虚拟机有一个虚拟网卡,两者可以直接连接到外网。桥接模式下,虚拟机和主机必须处在同一网段,DNS和网关也必须相同

    "桥接模式":
    	- 虚拟机和物理机连接同一网络。
    	- 虚拟机与物理机地位相当
    	- 类比于你的电脑和你的手机同时连接这个路由器提供的WIFI
    
    • 1
    • 2
    • 3
    • 4

    5.2 VMnet1:用于虚拟机Host-Only网络下的虚拟交换机

    相当于NAT模式除去了NAT设置,虚拟机是一个独立的系统,只能实现虚拟机和主机间的通信,如果虚拟机需要联网的话,需要主机共享网卡。

    "仅主机模式":
    	- 虚拟机只能访问物理机,不能上网
    	- 相当于拿一根网线直接连接虚拟机和物理机
    
    • 1
    • 2
    • 3

    5.3 VMnet8:用于虚拟机NAT网络下

    这种模式的好处就是兼容性强,物理机的网络环境发生变化时,虚拟机的网络不会受到影响。比如:你上班时,把物理机连接在公司的网络环境中,下班后又把物理机连接在你家的路由器上。你公司的网段有可能和你家的网段是不同的。桥接模式下,虚拟机和物理机一样,都要自动获取IP才能上网,而我们做实验的时候,需要把虚拟机设置为静态IP,这样就会导致虚拟机网络不稳定。而设置为NAT模式,虚拟机网络并不需要依赖你家公司的网络或你家的网络环境。

    物理机上有一个自身的网卡,和虚拟NAT设备直连,还有一个虚拟网卡直接连到虚拟交换机上。虚拟NAT设备与虚拟DHCP服务器直接连在虚拟交换机上,虚拟机通过虚拟交换机和NAT设备实现联网,但是和本机的连接是通过物理主机的虚拟网卡VM Adapter8来实现的。

    虚拟机向外部网络发送的请求数据"包裹",都会交由NAT网络适配器加上"特殊标记"并以主机的名义转发出去,外部网络返回的响应数据"包裹",也是先由主机接收,然后交由NAT网络适配器根据"特殊标记"进行识别并转发给对应的虚拟机,因此虚拟机在外部网络不具有自己的IP地址。从外部网络来看,虚拟机和主机共用一个IP地址。

    "NAT模式"(Network Address Translation):
    	- 虚拟机可以上网,可以访问物理机(安装虚拟机的本机)
    	- 不依赖于物理机的网络环境状态
    	- 发送数据包,都要打"特殊标记"
    	- VMware Network Adapter VMnet8只是用于虚拟机与主机通信,并不影响虚拟机联网
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    1. 虚拟出来的网段和NAT模式虚拟网卡的网段是一样的,包括NAT服务器的IP地址也是这个网段。在安装VMware之后同样会生成一个虚拟DHCP服务器,为NAT服务器分配IP地址。
    2. 当主机和虚拟机进行通信的时候,就会调用VMware Network Adapter VMnet8虚拟网卡,因为它们都在同一个网段,所以通信不是问题
    3. 实际上,VMware Network Adapter VMnet8虚拟网卡的作用就是为主机和虚拟机的通信提供一个接口,即使主机的物理网卡被关闭,虚拟机仍然可以连接到Internet,但是主机和虚拟机之间就不能互访了。
    4. VMware Network Adapter VMnet8虚拟网卡的作用仅限于和VMnet8网段进行通信,它不给VMnet8网段提供路由功能,所以虚拟机虚拟一个NAT服务器,使虚拟网卡可以连接到Internet。在这种情况下,我们就可以使用端口映射功能,让访问主机80端口的请求映射到虚拟机的80端口上。
    5. VMware Network Adapter VMnet8虚拟网卡的IP地址是在安装VMware时由系统指定生成的,我们不要修改这个数值,否则会使主机和虚拟机无法通信。
    • VMware Network Adapter VMnet1:Host用于与Host-Only虚拟网络进行通信的虚拟网卡
      在这里插入图片描述
    "仅主机"模式下虚拟机与主机通信的虚拟网卡
    
    • 1
    • VMware Network Adapter VMnet8:Host用于与NAT虚拟网络进行通信的虚拟网卡
    "NAT"模式下虚拟机与主机通信的虚拟网卡
    
    • 1

    5.4 总结

    网卡作用
    VMnet0桥接模式(可上网)
    VMnet1-4仅主机模式
    VMnet8NAT模式(可上网)

    6 网络问题Bug

    6.1 ping命令无法解析域名

    1. 查看配置文件ifcfg-ens33配置文件是否正确【此处我虚拟机的网络模式是NAT】
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="static"
    IPADDR="192.168.145.26"
    NETMASK="255.255.255.0"
    GATEWAY="192.168.145.2"
    #DNS1="192.168.145.2"
    DNS1=8.8.8.8
    DNS2=101.6.6.6
    DNS3=223.6.6.6
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes" 
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no" 
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    UUID="86f677b6-bf9a-4b35-8d02-50188234c2f7" 
    DEVICE="ens33" 
    ONBOOT="yes
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    IP地址和网关需要和虚拟机的NAT配置保持一致【IPADDR、GATEWAY】,同时设置正确的DNS服务器
    在这里插入图片描述
    发现上述都没问题之后,启动网络报错:

    “Job for network.service failed because the control process exite”
    查阅资料后发现,可能是和 NetworkManager 服务有冲突,直接关闭 NetworkManger 服务就好了

    • 停止网络管理
    service NetworkManager stop
    
    • 1
    • 禁止开机启动
    chkconfig NetworkManager off 
    
    • 1
    • 重启网络
    service network restart
    
    • 1

    最后,就可以发现能够ping通了
    在这里插入图片描述

    6.2 NAT模式无法上网(win7)

    ping命令无法使用,找不到主机,但是能ping通其他局域网电脑

    在这里插入图片描述

    注意:win7网络设置需要和你VMware的网络配置相对应

    由于我不知道什么时候将默认网关地址设置为了192.168.145.2,因此导致一致配置不成功
    NAT模式,主机相当于另一台机器

    ①VMware网络配置
    在这里插入图片描述

    我的网关ip之前设置为了192.168.145.2,一般都是为1,但是此处懒得改了

    在这里插入图片描述
    ②虚拟机win7配置
    在这里插入图片描述
    ③虚拟机win7,ip配置

    此处dns配置需要设置为网关地址或者通用的dns服务器地址(114.114.114.114)

    在这里插入图片描述
    ④总结

    以后配置ip一定要看自己的网关地址到底是多少,不能想当然

    参考文章:
    https://blog.csdn.net/weixin_55118477/article/details/121272999
    https://www.cnblogs.com/weizaiyes/p/9905730.html
    https://blog.csdn.net/yishihuakai/article/details/107162914
    Linux网络服务问题

  • 相关阅读:
    揭秘编码器与解码器语言模型
    2013年11月10日 Go生态洞察:Go语言四周年回顾
    【数据结构】内排序小结
    有人说考个PMP证两个星期搞定?
    算法通过村第十四关-堆|黄金笔记|中位数
    word图片无法居中,原因可能是非嵌入式!
    ROS服务(Service)通信:通信模型、Hello World与拓展
    SpringMVC拦截器
    Linux防火墙入门:学会使用firewalld和iptables
    Hive大白话(●三●)
  • 原文地址:https://blog.csdn.net/weixin_45565886/article/details/127134851