• 解决CentOS虚拟机无法显示本地IP问题


    1 问题描述

    CentOS虚拟机无法显示本地ip,如图:

    在这里插入图片描述

    2 尝试过的方法

    参考过此处的解决方法,把网卡配置中的ONBOOT修改为YES

    在这里插入图片描述

    但是原来的网卡配置也是YES,所以修改的方法没有用,尝试了一下重启网卡服务:

    systemctl restart network
    

    ip还是无法正常显示。

    3 原因

    查了一下资料,常用的Linux的网络管理服务有两个:

    • network服务
    • NetworkManager服务

    前者是基础服务,通常在服务器中使用,当然在图形界面也有,通常使用命令行配置,而NetworkManager一般在图形界面安装,是为了方便ip的配置,要注意的是两个之中只能有一个生效,因此需要选择一个禁用。在笔者这种情况下应该是两者冲突了,导致不能正常显示本地ip,可以使用

    systemctl status network
    systemctl status NetworkManager
    

    查看两服务状态,如果不是服务冲突的话应该就是配置出错了的原因。

    4 解决方案

    4.1 使用network

    先把NetworkManager禁用:

    systemctl stop NetworkManager
    systemctl status NetworkManager
    

    禁用之后重启network

    systemctl restart network
    

    这样就能显示出本地ip了。

    若还是不能显示请检查网卡配置,在/etc/sysconfig/network-scripts下,笔者的是/etc/sysconfig/network-scripts/ifcfg-ens33

    4.2 使用NetworkManager

    使用NetworkManager的话先把network禁用:

    systemctl stop network
    systemctl status network
    

    再把NetworkManager启动:

    systemctl start NetworkManager
    

    接下来使用nmcli进行操作。

    4.2.1 托管状态

    首先查看托管状态:

    nmcli n
    

    若显示disabled

    在这里插入图片描述

    开启即可:

    nmcli n on
    

    在这里插入图片描述

    4.2.2 设备

    查看设备:

    nmcli d
    

    笔者机器上显示如下:

    在这里插入图片描述

    接下来创建连接,有两种方式创建:动/静态ip

    # 静态ip方式创建connection
    nmcli c add type ethernet con-name connect_name_1 ifname ens33 ipv4.addr 192.168.126.151/24 ipv4.gateway 192.168.126.1 ipv4.method manual
    
    # 动态ip方式创建connection
    nmcli c add type ethernet con-name connect_name_2 ifname ens33 ipv4.method auto
    

    4.2.3 静态ip方式

    nmcli c add type ethernet con-name connect_name_1 ifname ens33 ipv4.addr 192.168.126.151/24 ipv4.gateway 192.168.126.1 ipv4.method manual
    

    参数说明:

    • nmcli c add:创建连接
    • type:连接类型
    • con-name:连接名称
    • ifname:网卡名
    • ipv4.addripv4静态ip,这里是192.168.126.15124表示子网掩码
    • ipv4.gateway:网关,把最后ip最后置1即可,这里是192.168.126.1
    • ipv4.method:后面的参数manual表示配置静态ip,注意一下该参数很重要,因为默认为auto,也就是如果不指定该参数会出现两个ip,一个静态+一个动态

    创建好连接之后应该就能显示ip了:

    在这里插入图片描述

    就是刚才手动指定的静态ip,如果还是不能显示ip可以手动连接设备:

    nmcli d connect ens33
    

    4.2.4 动态ip方式

    nmcli c add type ethernet con-name connect_name_2 ifname ens33 ipv4.method auto
    

    参数与上面的基本一致,区别就是auto,表示动态方式配置ip,这样就配置完成了,可以直接查看ip

    在这里插入图片描述

    如果还是没有ip可以尝试手动连接设备:

    nmcli d connect ens33 
    
  • 相关阅读:
    JS开发框架DevExtreme v20.1.7上线
    Web开发:看如何定义Kendo UI Grid Width
    如何创建自定义DevExpress报表控件,看完你就懂了
    高性能HTML5/JavaScript开发框架DevExtreme全新发布v20.1.7|附下载
    WPF界面开发:如何将不同集合中的项目显示为同一父节点子项
    界面开发包DevExpress v20.1.7上线!即刻体验
    WPF界面开发2020:Scheduler等控件功能升级
    Winform界面开发看过来!一招教你使用属性网格自定义编辑器
    将从数据库查询出来的带有父子结构的list转换成treeList结构
    将JDBC ResultSet结果集转成List
  • 原文地址:https://www.cnblogs.com/6b7b5fc3/p/14101283.html
Copyright © 2020-2023  润新知