!!!前言

nmcli是redhat7或者centos7之后的命令该命令可以完成网卡上所有的配置工作,并且可以写入配置文件,永久生效

1、NetworkManager

NetworkManager是管理和监控网络设置的守护进程,设备既就是网络接口,连接是对网络接口的配置,一个网络接口可以有多个连接配置,但同时只有一个连接配置生效。

2、常用命令列表

  1. nmcli connection show 查看所有网络连接
  2. nmcli connection show -active 查看活动的网络连接
  3. nmcli connection show 'DEVICE' 查看指定网卡的详细信息
  4. nmcli device status 显示设备的连接状态
  5. nmcli device show 显示所有设备网络设备详情信息
  6. nmcli device show 'DEVICE' 显示指定网络设备的详细信息
  7. nmcli connection reload 重新加载配置
  8. nmcli connection add help 查看帮助

一、查看网卡信息命令

1、查看所有网络连接

  1. [root@localhost ~]# nmcli connection show
  2. NAME UUID TYPE DEVICE
  3. ens160 cf57c3f1-7eaf-489c-86d4-2ebbc39f6105 ethernet ens160
  4. //ens160就是我的网卡

2、查看活动的网络连接

  1. [root@localhost ~]# nmcli connection show -active
  2. NAME UUID TYPE DEVICE
  3. ens160 cf57c3f1-7eaf-489c-86d4-2ebbc39f6105 ethernet ens160
  4. //我这只有一张网卡,所以只有一个网卡信息

3、查看指定网卡的详细信息

  1. [root@localhost ~]# nmcli connection show ens160
  2. connection.id: ens160
  3. connection.uuid: cf57c3f1-7eaf-489c-86d4-2ebbc39f6105
  4. connection.stable-id: --
  5. connection.type: 802-3-ethernet
  6. connection.interface-name: ens160
  7. connection.autoconnect:
  8. connection.autoconnect-priority: 0
  9. connection.autoconnect-retries: -1 (default)
  10. connection.multi-connect: 0default
  11. connection.auth-retries: -1
  12. connection.timestamp: 1595930397
  13. connection.read-only:
  14. connection.permissions: --
  15. connection.zone: --
  16. connection.master: --
  17. connection.slave-type: --
  18. connection.autoconnect-slaves: -1default
  19. connection.secondaries: --
  20. connection.gateway-ping-timeout: 0
  21. connection.metered: 未知
  22. connection.lldp: default
  23. connection.mdns: -1default
  24. connection.llmnr: -1default
  25. connection.wait-device-timeout: -1
  26. //这里显示的都是网卡详细信息

4、显示设备的连接状态

  1. [root@localhost ~]# nmcli device status
  2. DEVICE TYPE STATE CONNECTION
  3. ens160 ethernet 已连接 ens160
  4. lo loopback 未托管 --
  5. //我这已经连接上了

5、显示所有设备网络设备详情信息

  1. [root@localhost ~]# nmcli device show
  2. GENERAL.DEVICE: ens160
  3. GENERAL.TYPE: ethernet
  4. GENERAL.HWADDR: 00:0C:29:CD:6A:1B
  5. GENERAL.MTU: 1500
  6. GENERAL.STATE: 100(已连接)
  7. GENERAL.CONNECTION: ens160
  8. GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
  9. WIRED-PROPERTIES.CARRIER:
  10. IP4.ADDRESS[1]: 10.0.0.140/24
  11. IP4.GATEWAY: 10.0.0.2
  12. IP4.ROUTE[1]: dst = 10.0.0.0/24, nh = 0.0.0.0, mt = 100
  13. IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 10.0.0.2, mt = 100
  14. IP4.DNS[1]: 8.8.8.8
  15. IP6.ADDRESS[1]: fe80::ca08:fe32:678c:b392/64
  16. IP6.GATEWAY: --
  17. IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 100
  18. IP6.ROUTE[2]: dst = ff00::/8, nh = ::, mt = 256, table=255
  19.  
  20. GENERAL.DEVICE: lo
  21. GENERAL.TYPE: loopback
  22. GENERAL.HWADDR: 00:00:00:00:00:00
  23. GENERAL.MTU: 65536
  24. GENERAL.STATE: 10(未托管)
  25. GENERAL.CONNECTION: --
  26. GENERAL.CON-PATH: --
  27. IP4.ADDRESS[1]: 127.0.0.1/8
  28. IP4.GATEWAY: --
  29. IP6.ADDRESS[1]: ::1/128
  30. IP6.GATEWAY: --
  31. IP6.ROUTE[1]: dst = ::1/128, nh = ::, mt = 256

6、显示指定网络设备的详细信息

  1. [root@localhost ~]# nmcli device show ens160
  2. GENERAL.DEVICE: ens160
  3. GENERAL.TYPE: ethernet
  4. GENERAL.HWADDR: 00:0C:29:CD:6A:1B
  5. GENERAL.MTU: 1500
  6. GENERAL.STATE: 100(已连接)
  7. GENERAL.CONNECTION: ens160
  8. GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
  9. WIRED-PROPERTIES.CARRIER:
  10. IP4.ADDRESS[1]: 10.0.0.140/24
  11. IP4.GATEWAY: 10.0.0.2
  12. IP4.ROUTE[1]: dst = 10.0.0.0/24, nh = 0.0.0.0, mt = 100
  13. IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 10.0.0.2, mt = 100
  14. IP4.DNS[1]: 8.8.8.8
  15. IP6.ADDRESS[1]: fe80::ca08:fe32:678c:b392/64
  16. IP6.GATEWAY: --
  17. IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 100
  18. IP6.ROUTE[2]: dst = ff00::/8, nh = ::, mt = 256, table=255

二、网卡状态修改命令

1、启用网络连接

  1. [root@localhost ~]# nmcli connection up ens160
  2. 连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2

2、停用网络连接(可以被自动激活)

  1. [root@localhost ~]# nmcli connection down ens160
  2. 成功停用连接 "ens160"D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/2

3、删除网络连接的配置文件

  1. [root@localhost ~]# nmcli connection delete ens160

4、重新加载网络配置文件

  1. [root@localhost ~]# nmcli connection reload

三、修改网卡配置

1、设置IP地址获取方式是手动(none)或者 DHCP

  1. [root@localhost ~]# nmcli connection modify ens160 ipv4.method manual ipv4.addresses 10.0.0.140/24
  2. //这是修改为BOOTPROTO=none
  3. //IPADDR=10.0.0.140
  4. //PREFIX=24 这个代表24位掩码
  5. [root@localhost ~]# nmcli connection modify ens160 ipv4.method auto
  6. //周是修改BOOTPROTO=dhcp

2、设置自动启动网卡

  1. [root@localhost ~]# nmcli connection modify ens160 connection.autoconnect yes
  2. //将ONBOOT=on 改成 ONBOOT=yes

3、修改IP地址

  1. [root@localhost ~]# nmcli connection modify ens160 ipv4.addresses 10.0.0.140/24
  2. //这样修改后IPADDR=IP ; NETMASK=掩码 ;然后会多出一个 ipv4的前缀 :PREFIX=掩码位 例如 PREFIX=24 表示24的掩码前缀

4、添加第二个IP地址

  1. [root@localhost ~]# nmcli connection modify ens160 +ipv4.addresses 10.0.0.141/24
  2. //IPADDR1=10.0.0.141
  3. //PREFIX1=24

5、删除第二个IP地址

  1. [root@localhost ~]# nmcli connection modify ens160 -ipv4.addresses 10.0.0.141/24

6、修改网关(Gateway)

  1. [root@localhost ~]# nmcli connection modify ens160 ipv4.gateway 10.0.0.2
  2. //GATEWAY=10.0.0.2

7、添加DNS

  1. [root@localhost ~]# nmcli connection modify ens160 ipv4.dns 8.8.8.8
  2. //DNS1=8.8.8.8

8、添加第二个DNS

  1. [root@localhost ~]# nmcli connection modify ens160 +ipv4.dns 114.114.114.114
  2. //DNS2=114.114.114.114

9、删除第二个DNS

  1. [root@localhost ~]# nmcli connection modify ens160 -ipv4.dns 114.114.114.114

10.查看刚刚修改的IP信息

  1. [root@localhost ~]# ifconfig
  2. ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
  3. inet 10.0.0.140 netmask 255.255.255.0 broadcast 10.0.0.255
  4. inet6 fe80::ca08:fe32:678c:b392 prefixlen 64 scopeid 0x20<link>
  5. ether 00:0c:29:cd:6a:1b txqueuelen 1000 (Ethernet)
  6. RX packets 2859 bytes 234214 (228.7 KiB)
  7. RX errors 0 dropped 0 overruns 0 frame 0
  8. TX packets 1987 bytes 197799 (193.1 KiB)
  9. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
  10.  
  11. lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
  12. inet 127.0.0.1 netmask 255.0.0.0
  13. inet6 ::1 prefixlen 128 scopeid 0x10<host>
  14. loop txqueuelen 1000 (Local Loopback)
  15. RX packets 124 bytes 10508 (10.2 KiB)
  16. RX errors 0 dropped 0 overruns 0 frame 0
  17. TX packets 124 bytes 10508 (10.2 KiB)
  18. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

11、查看网关(Gateway)

  1. [root@localhost ~]# netstat -rn
  2. Kernel IP routing table
  3. Destination Gateway Genmask Flags MSS Window irtt Iface
  4. 0.0.0.0 10.0.0.2 0.0.0.0 UG 0 0 0 ens160
  5. 10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160
  6. 或者
  7. [root@localhost ~]# route -n
  8. Kernel IP routing table
  9. Destination Gateway Genmask Flags Metric Ref Use Iface
  10. 0.0.0.0 10.0.0.2 0.0.0.0 UG 100 0 0 ens160
  11. 10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 ens160

12、查看DNS 

  1. [root@localhost ~]# cat /etc/resolv.conf
  2. # Generated by NetworkManager
  3. nameserver 8.8.8.8

13、IP是否能ping通外网

  1. [root@localhost ~]# ping -c 3 www.baidu.com
  2. PING www.a.shifen.com (112.80.248.76) 56(84) bytes of data.
  3. 64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=1 ttl=128 time=20.3 ms
  4. 64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=2 ttl=128 time=25.8 ms
  5. 64 bytes from 112.80.248.76 (112.80.248.76): icmp_seq=3 ttl=128 time=14.9 ms
  6.  
  7. --- www.a.shifen.com ping statistics ---
  8. 3 packets transmitted, 3 received, 0% packet loss, time 14ms
  9. rtt min/avg/max/mdev = 14.946/20.353/25.766/4.417 ms

使用nmcli命令配置网络的更多相关文章

  1. RedHat/CentOS 7通过nmcli命令管理网络教程

    Red Hat Enterprise Linux 7 和CentOS 7 的网络管理实际上是对NetworkManager的管理,可通过nmcli命令进行控制,下面小编就给大家介绍下RedHat/Ce ...

  2. centOS7 通过nmtui和nmcli图形配置网络服务

    一.通过nmtui配置网络参数 Linux系统配置网络参数的方式有很多种,其中最简单最直接的方式就是直接修改网卡配置文件,但这种方式也很容易出错,比如说IPADDR.NETMASK.GATEWAY等参 ...

  3. 在 RedHat/CentOS 7.x 中使用 nmcli 命令管理网络

    在 RedHat/CentOS 7.x 中使用 nmcli 命令管理网络 学习了:https://linux.cn/article-5410-1.html#3_3613 http://www.linu ...

  4. 在 Linux 中用 nmcli 命令绑定多块网卡

    今天,我们来学习一下在 CentOS 7.x 中如何用 nmcli(Network Manager Command Line Interface:网络管理命令行接口)进行网卡绑定. 网卡(接口)绑定是 ...

  5. Linux常用命令之网络命令

    write命令 write命令用于向指定登录用户终端上发送信息.通过write命令可传递信息给另一位登入系统的用户,当输入完毕后,键入EOF表示信息结束,write命令就会将信息传给对方.如果接收信息 ...

  6. (转)linux中nmcli命令的使用及网络配置

    原文:https://blog.51cto.com/groot/1847482 http://www.178linux.com/44076----CentOS7中nmcli网络管理及使用详解 http ...

  7. 网络管理和nmcli命令的使用——网络接口配置-bonding实验步骤

    (实验)网络接口配置-bonding  Bonding 将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡.直接给两块网卡设置同\一IP地址是不可以的.通过bonding,虚拟一块网 ...

  8. linux中nmcli命令使用及网络配置

    nmcli命令与配置文件对应关系  主机名: 如果说你没有设置主机名的话,默认是localhost.localdomain 修改配置文件的主机名 # hostnamectl  set-hostname ...

  9. Debian 命令行方式配置网络

    一.对于有线网络,如果默认没有安装图形界面,进入了 multi-user.target中时,是没有使用NetworkManager管理网络的,此时需要手动配置才能上网 首先得到网卡名称:ip addr ...

随机推荐

  1. 浅谈 Fresco 框架结构

    在前面的文章 Fresco 源码分析 -- 图片加载流程 里面详细说明了图片加载的整个流程,但是除了理解源码之外,对于源码的框架层面的设计也是需要去了解的,不能只是简单的读源码,好的源码的框架设计也是 ...

  2. [源码分析] 分布式任务队列 Celery 之 发送Task & AMQP

    [源码分析] 分布式任务队列 Celery 之 发送Task & AMQP 目录 [源码分析] 分布式任务队列 Celery 之 发送Task & AMQP 0x00 摘要 0x01 ...

  3. ASP微信服务号H5客户登陆,且获取客户授权的用户基本信息

    ASP微信服务号H5客户登陆,且获取客户授权的用户基本信息是需要客户授权,下面讲解详细步骤: 第一步:客户点击登录页,自动跳转到微信服务器端获取code 第二步:用第一步获取的code去获取客户的ac ...

  4. 1.6.3- HTML有序列表 ol元素

    代码如下: 浏览器打开: 总结:

  5. video播放视频以及相关事件

    <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Conten ...

  6. 路由器逆向分析------sasquatch和squashfs-tools工具的安装和使用

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/68942660 一.sasquatch工具的安装和使用 sasquatch工具支持对 ...

  7. Msfvenonm生成一个后门木马

    在前一篇文章中我讲了什么是Meterpreter,并且讲解了Meterpreter的用法.传送门-->Metasploit之Meterpreter 今天我要讲的是我们用Msfvenom制作一个木 ...

  8. Windows核心编程笔记之进程

    改变进程基址,获取进程基址 #include <Windows.h> #include <iostream> #include <strsafe.h> #inclu ...

  9. Win64 驱动内核编程-8.内核里的其他常用

    内核里的其他常用 1.遍历链表.内核里有很多数据结构,但它们并不是孤立的,内核使用双向链表把它们像糖 葫芦一样给串了起来.所以遍历双向链表能获得很多重要的内核数据.举个简单的例子,驱 动对象 Driv ...

  10. 预防NSA勒索病毒攻击脚本

    预防445端口勒索病毒修复脚本 直接复制下去,创建一个文件,名字随意后缀是.bat,然后双击就可以了(如果提示拒绝访问,就直接右键管理员,尤其是Win8 Win10). :+添加关键注册表以及停掉并且 ...