目录

  • 一、先从一个示例入手
  • 二、为什么会出现网卡无法正常获取IP地址的情况?这种时候该如何解决呢?
    • 1. 原因
    • 2. 解决方法
      • 2.1. VMware程序出现bug
      • 2.2. VMware的虚拟网络编辑器未正确设置
        • (1) 虚拟机选择VM网卡名称错误
        • (2)VM网卡模式的DHCP IP地址池过期
        • (3) VM网卡模式的DHCP未正常启用
      • 2.3. 虚拟机系统缺少网卡配置文件(推荐解决方法)
      • 2.4. 虚拟机未配置网卡
  • 三、解决该问题的思路
    • 1. 先查看虚拟机网络信息
    • 2. 检查VMware虚拟网络编辑器的功能是否正常
    • 3. 检查虚拟操作系统是否有网卡配置文件
    • 4. 重启
  • 参考资料
  • 四、更新内容
    • 场景
    • 问题点
    • 解决方法

一、先从一个示例入手

相信很多VMware虚拟机初学者会遇到这样一个问题
新建/ 克隆/ 从其他地方复制了一份虚拟机 到本地使用时会发现即使虚拟机网卡设置了NAT或桥接模式,当开机后也无法连接网络,但是使用ifconfig或ip add命令查看IP地址时,有时候会出现如下图所示的情况:

网卡ens32可以正常获取IP地址,但是网卡ens35无法正确获取IP地址。

说明:
这个场景是我特意设计的。在使用VMware虚拟机的时候,往往遇到的是配置了一张网卡,但是开机时无法获取IP,这时候我们一般会在配置一张网卡,网卡模式与第一张网卡不同。上图中ens32是NAT模式,ens35是桥接模式。

二、为什么会出现网卡无法正常获取IP地址的情况?这种时候该如何解决呢?

1. 原因

原因可能有以下几种:

  • VMware程序出现bug
  • VMware的虚拟网络编辑器未正确设置
    • 虚拟机选择VM网卡名称错误
    • VM网卡模式的DHCP IP地址池过期
    • VM网卡模式的DHCP未正常启用
  • 虚拟机系统缺少网卡配置文件
  • 虚拟机未配置网卡

2. 解决方法

2.1. VMware程序出现bug

大多数人使用的VMware虚拟机往往是非正版(破解版或是批量key的版本)。因此往往会出现一些奇奇怪怪的bug问题。有时候我们重启虚拟机就能正确获取IP地址,但是有时候重启了,结果还是无法获取,这种时候就要看下面的解决方法。

2.2. VMware的虚拟网络编辑器未正确设置

(1) 虚拟机选择VM网卡名称错误

下图中,虚拟机的虚拟网卡模式为NAT,选择的自定义网络是VMnet2,但是在虚拟网络编辑器的VMnet中并没有VMnet2。可能是选择定义网络时不小心选错了导致,网卡不能正常从DHCP地址池中获取IP地址。虚拟网卡自定义的虚拟网络名称,必须是虚拟网络编辑器中存在的VMnet名。

(2)VM网卡模式的DHCP IP地址池过期

这种情况一般很少出现,当然也不排除不会出现。
这时候我们需要将下图所示的默认租用时间和最长租用时间改为最大值即可。

(3) VM网卡模式的DHCP未正常启用

在虚拟网络编辑器中,VMnet的DHCP地址池未启用,也会导致虚拟机IP地址无法获取。
这时候,需要选择如下图所示红色的方框即可。

2.3. 虚拟机系统缺少网卡配置文件(推荐解决方法)

当我们启用一张虚拟网卡,在虚拟网卡正常工作后,还获取不到IP地址的话,可能是虚拟机系统缺少网卡配置文件。
虚拟硬件正常工作,但是怎么让虚拟操作系统使用虚拟网卡呢?网卡配置文件就是两者之间的桥梁。网卡配置文件相当于硬件和软件之前的API接口。
博文刚开始的例子,就是虚拟操作系统缺少网络配置文件从而导致不能正常获取IP地址。
我们先查看操作系统的网络信息,如下图所示,网卡ens32可以正常获取IP地址,但是网卡ens35无法正确获取IP地址。

查看网络卡配置文件

ls /etc/sysconfig/network-scripts/  #这是cnetos操作系统的网卡文件目录

可以发现只有ens32的网卡配置文件,并没有ens35的网卡配置文件。所以问题点找到了,缺少网卡配置文件。

为了简单快速操作以及确保网卡文件的正确性,我们先复制ens32的网卡,并重命名为ens35,并编辑。如下所示

nmcli con show #查看网卡的UID
cp /etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens35
vim /etc/sysconfig/network-scripts/ifcfg-ens35
#ens35网卡配置文件内容
TYPE=Ethernet
BOOTPROTO="dhcp"
NAME=ens35
DEVICE=ens35
ONBOOT=yes
UUID="xxxxxxxxxxxxxxxxxxxxxxxxxxxx"

保存文件,然后启动该网卡

ifup ens35

此时再次查看IP地址,发现网卡又可以重新获取IP地址了。

2.4. 虚拟机未配置网卡

给虚拟机配置一张网卡即可。

三、解决该问题的思路

在碰到虚拟机网卡不能正常获取IP地址时,可以通下述思路逐层排错。

1. 先查看虚拟机网络信息

首先进入虚拟操作系统后,使用命令ip add(不能使用ifconfig,该命令不会显示未正常获取IP的网卡)查看虚拟网卡是否正常运行。
(1)如果输出没有显示网卡名称,说明虚拟机的虚拟网卡未能正常工作,需要删除该虚拟硬件,重新创建新的虚拟硬件网卡。
(2)如果虚拟网卡正常运行,输出会显示网卡名称。说明虚拟机的虚拟网卡正常工作,不是虚拟硬件问题。这时候需要跟着下面的思路走。

2. 检查VMware虚拟网络编辑器的功能是否正常

检查顺序和解决方法2.2小节中的顺序一致。
如果VMware虚拟网络编辑器的设定正常,那么问题点应该就是操作系统缺少网卡配置文件了。

3. 检查虚拟操作系统是否有网卡配置文件

如果没有网卡配置文件,补上即可。

4. 重启

遇到网卡问题,也可以先重启虚拟机,说不定问题就解决了。

参考资料

1: How to Configure a Private Network on CentOS.

四、更新内容

场景

想以桥接模式连接网络,但是怎么设置都无法使用dhcp自动获取IP和DNS等信息,即使手动设置后,也无法正常访问网络。

问题点

当物理机中存在多个网卡(包含虚拟网卡)时,需要在VMWare中指定桥接模式的连接网卡,否则VMWare虚拟机在寻找桥接网卡时,可能会无法自动识别

解决方法

在VMWare中打开【编辑】——>【虚拟网络编辑器】——>【更改设置】
选择VMnet0(桥接模式),在下方VMnet信息框中,指定连接网卡即可

将自动变为指定网卡

【更新】关于VMware虚拟机无法正常获取IP地址问题的解决方法及思路相关推荐

  1. VMware虚拟机运行虚拟系统时显示“内部错误”的解决方法

    VMware虚拟机运行虚拟系统时显示"内部错误"的解决方法 参考文章: (1)VMware虚拟机运行虚拟系统时显示"内部错误"的解决方法 (2)https:// ...

  2. java ip地址查询接口_java获取ip地址与网络接口的方法示例

    java获取ip地址与网络接口的方法示例 发布时间:2020-09-20 23:57:52 来源:脚本之家 阅读:66 作者:骏马金龙 java.net包 大家应该都知道,网络相关对象在java.ne ...

  3. Android手机获取IP地址的两种方法

    Android手机获取IP地址的两种方法 本文章讲解了WIFI和GPRS两种情况下获取手机IP地址的方法 1.使用WIFI 1,首先设置用户权限 AndroidManifest.xml添加: < ...

  4. Linux安装RPM包、查看本机ip和端口、手动配置ip、中标麒麟无法显示ip地址的详细解决方法

    文章目录 安装rmp Linux安装RPM包.DEB包后,软件在哪 RPM包安装去向(例:包名=>redis) 查看本机ip 查看所有端口 手动配置ip 中标麒麟无法显示ip地址的详细解决方法 ...

  5. Vmware虚拟机Linux配置固定IP地址(详细版)

    前言:今天按照网上的一些文章去设置虚拟机静态IP,踩了很多坑,花费了很多时间.所以此片文章完善详细操作步骤,解决遇到的一些问题,避免大家踩坑.不会配的请全部按照文中IP进行配置 1.点击编辑-虚拟网络 ...

  6. 戴尔服务器虚拟机配置ip地址,虚拟机下CentOS配置IP地址的三种方法

    1.自动获取IP地址 虚拟机使用桥接模式,相当于连接到物理机的网络里,物理机网络有DHCP服务器自动分配IP地址. #dhclient 自动获取ip地址命令 #ifconfig 查询系统里网卡信息,i ...

  7. Python获取IP地址的三种方法

    在python中获取IP地址的方法很简单,我们只和gethostbyname和gethostbyname_ex两个函数可以实现了,当然也可以利用公网api来实现. 使用拨号上网的话,一般都有一个本地i ...

  8. 电脑显示IP地址错误怎么办|电脑无法上网提示IP地址错误的解决方法

    电脑无法上网,经过诊断后显示是IP地址错误的原因,如果我们遇到了这样的错误应该怎么办?所以,在下面的内容中,小编要和大家介绍在电脑提示IP地址错误无法上网的具体解决方法. 1.首先确定是否禁用了本地连 ...

  9. Linux虚拟机设置自动获取IP地址

    前言 如下图所示: 对于刚刚创建的Linux虚拟机是没有ip地址的,下面我们可以修改配置使其自动获取IP 设置自动获取IP 1.这里看上图我的网卡是ens33,所以之后应找到对应的配置文件 #执行命令 ...

最新文章

  1. 深度学习框架:GPU
  2. 什么是Python?主要运用哪些方面?
  3. Exchange 2010 OAB下载问题排错error 0x80200049
  4. 在UpdatePanel中弹出对话框
  5. 定点c程序之五:定点数的字长效应
  6. 通过一个例子学习Kubernetes里的PersistentVolumeClaim的用法
  7. 用python快速开发一个实用的socket服务器
  8. Leetcode 5182.删除一次得到子数组最大和
  9. python时间序列预测不连续怎么办_用Python处理非平稳时间序列攻略
  10. 下载腾讯视频(mp4 格式)
  11. arcmap 坡降工具_ArcHydro_Toolbar_In_Arcmap Arcgis水文分析工具具体的操作 - 下载 - 搜珍网...
  12. 在delphi中调用chm帮助文件_delphi教程
  13. 基于MATLAB的GUI界面设计流程
  14. MCP3421高精度ADC转换器
  15. 美股市场:暴风雨前的宁静
  16. 计算机磁盘坏道怎么隔离,小科普 | 硬盘坏道就凉凉?把它隔离出去吧!(DLC)...
  17. java effective
  18. Git学习-本地版本库的创建与简单操作
  19. ABAP术语-BOR (Business Object Repository )
  20. 自动添加控件,一次提交多条记录。

热门文章

  1. 怎么一次性删除PPT中所有动画效果?
  2. 【C语言从青铜到王者】第零篇·与C语言来个约会
  3. 前端基础第一天:HTML常用标签知识点
  4. 道德引擎——灾难来临,你够资格登上诺亚方舟?墨尔本大学《java面向对象》结辩作业
  5. python开发工程师岗位简介_python开发工程师是什么
  6. 计算机研究生要发论文,电子科大毕业计算机研究生需要发表论文吗
  7. laravel5.6 提示The page has expired due to inactivity. Please refresh and try again.的解决方法
  8. 每天半小时,一周带你手速大幅提升——几大打字练习网站测评
  9. Jquery 实现表格单行获取数据
  10. 网站服务器 64位,如何将win7系统从32位升级到64位_网站服务器运行维护,win7,32位,64位...