zoukankan      html  css  js  c++  java
  • nmcli使用方法

    nmcli使用方法非常类似linux ip命令、cisco交换机命令,并且支持tab补全,也可在命令最后通过-h、--help、help查看帮助。在nmcli中有2个命令最为常用:

    nmcli connection

    译作连接可理解为配置文件,相当于ifcfg-eth0。可以简写为nmcli c

    nmcli device

    译作设备可理解为实际存在的网卡(包括物理网卡和虚拟网卡)。可以简写为nmcli d

    在NM里,有2个维度:连接(connection)设备(device),这是多对一的关系。想给某个网卡配ip,首先NM要能纳管这个网卡。设备里存在的网卡(即 nmcli d可以看到的),就是NM纳管的。接着,可以为一个设备配置多个连接(即 nmcli c可以看到的),每个连接可以理解为一个ifcfg配置文件。同一时刻,一个设备只能有一个连接活跃。可以通过 nmcli c up切换连接。

    connection有2种状态

    ▷ 活跃(带颜色字体):表示当前该connection生效 ▷ 非活跃(正常字体):表示当前该connection不生效

    device有4种常见状态

    ▷ connected:已被NM纳管,并且当前有活跃的connection ▷ disconnected:已被NM纳管,但是当前没有活跃的connection ▷ unmanaged:未被NM纳管 ▷ unavailable:不可用,NM无法纳管,通常出现于网卡link为down的时候(比如ip link set ethX down)

    配置动态ip(等同于配置ifcfg,其中BOOTPROTO=dhcp,并ifup启动)

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

    type ethernet:创建连接时候必须指定类型,类型有很多,可以通过nmcli c add type -h看到,这里指定为ethernet。

    con-name eth0 ifname ens33第一个eth0表示连接(connection)的名字,这个名字可以任意定义,无需和网卡名相同第二个ens33表示网卡名,这个ens33必须是在nmcli d里能看到的。

    配置静态ip(等同于配置ifcfg,其中BOOTPROTO=none,并ifup启动)

    nmcli c add type ethernet con-name eth0 ifname ens33 ipv4.addr 192.168.1.100/24 ipv4.gateway 192.168.1.254 ipv4.dns '8.8.8.8,4.4.4.4' ipv4.method manual

    ipv4.method对应ifcfg文件内容的BOOTPROTO,ipv4.method默认为auto,对应为BOOTPROTO=dhcp这种时候如果指定ip,就可能导致网卡同时有dhcp分配的ip和静态ip。设置为manual表示BOOTPROTO=none,即只有静态ip。

    # 查看ip(类似于ifconfig、ip addr)

    nmcli

    # 启用指定网卡配置文件(相当于ifup)

    nmcli c up ethX

    # 停止指定网卡配置文件(相当于ifdown)

    nmcli c down ethX

    # 删除指定网卡配置文件(类似于ifdown并删除ifcfg)

    nmcli c delete ethX

    # 查看connection列表

    nmcli c show

    # 查看connection详细信息

    nmcli c show ethX

    # 重载所有网卡配置文件(不会立即生效)

    nmcli c reload

    # 重载指定ifcfg或route到connection(不会立即生效)

    nmcli c load /etc/sysconfig/network-scripts/ifcfg-ethX

    nmcli c load /etc/sysconfig/network-scripts/route-ethX

    # 立即使网卡配置文件生效,有3种方法

    nmcli c up eth0                # 启用指定网卡配置文件

    nmcli d reapply eth0        #刷新网卡配置文件,前提是网卡的device处于connected状态,否则会报错。

    nmcli d connect eth0       #激活网卡

    # 查看网卡列表

    nmcli d

    # 查看所有网卡的详细信息

    nmcli d show

    # 查看指定网卡的详细信息

    nmcli d show eth0

    # 激活网卡(就算之前nmcli c delete eth0删除网卡配置文件,也可以使用此命令激活重新生成配置文件

    由NM对指定网卡进行管理,同时刷新该网卡对应的活跃connection(如果之前有修改过connection配置);如果有connection但是都处于非活跃状态,则自动选择一个connection并将其活跃;如果没有connection,则自动生成一个并将其活跃。

    nmcli d connect eth0

    nmcli d disconnect eth0

    让NM暂时不管理指定网卡,此操作不会变更实际网卡的link状态,只会使对应的connection变成非活跃。若重启系统则又会自动connect。另外,如果手工将该网卡的connection全部删掉,该网卡状态也会自动变为disconnected。

    # 关闭无线网络(NM默认启用无线网络)

    nmcli r all off

    # 查看NM启动状态

    nmcli n

    # 开启NM纳管

    nmcli n on

    # 关闭NM纳管(谨慎执行)

    nmcli n off

    # 监听事件

    nmcli m

    # 查看NM本身状态

    nmcli

    # 检测NM是否在线可用

    nm-online

  • 相关阅读:
    問題集リンク(DEV I)
    認定Platformデベロッパー 試験範囲
    React 学习资源
    IIS
    小学校
    リストに項番をつける
    七、JavaScript函数
    六、JavaScript数组
    五、JavaScript流程控制
    四、JavaScript操作符
  • 原文地址:https://www.cnblogs.com/sheng-se/p/15160640.html
Copyright © 2011-2022 走看看