在CentOS7中默认使用NetworkManager守护进程来监控和管理网络设置。nmcli是命令行的NetworkManager工具,会自动把配置写到/etc/sysconfig/network-scripts/目录下面。


在CentOS / RHEL 7中网络管理命令行工具,也叫nmcli。经常使用ifconfig的用户应该在CentOS 7中避免使用ifconfig了。nmcli的功能要强大、复杂的多。

地址配置工具:nmcli

 nmcli – command-line tool for controlling NetworkManager

命令语法:

  nmcli [OPTIONS...] {help | general | networking | radio | connection | device | agent | monitor} [COMMAND] [ARGUMENTS...]

 

 OBJECT和COMMAND可以用全称也可以用简称,最少可以只用一个字母,建议用头三个字母。OBJECT里面我们平时用的最多的就是connection和device,这里需要简单区分一下connection和device。

 device叫网络接口,是物理设备

     device -show and manage network interfaces

     nmcli device help

 connection是连接,偏重于逻辑设置

     connection -start, stop, and manage network connections

     nmcli connection help

 多个connection可以应用到同一个device,但同一时间只能启用其中一个connection。这样的好处是针对一个网络接口,我们可以设置多个网络连接,比如静态IP和动态IP,再根据需要up相应connection

centos 如何使用Memtester centos nmcli_nmcli

修改IP地址等属性:

# nmcli connection modify IFACE [+|-]setting.propertyvalue
     setting.property:
         ipv4.addresse        ipv4.gateway
         ipv4.dns1           ipv4.methodmanual | auto

    IFACE等同于eth0

修改配置文件执行生效:systemctl restart network 或 nmcli con reload

nmcli命令生效:nmcli con down eth0 ; nmcli con up eth0

使用nmcli配置网络:

 NeworkManager是管理和监控网络设置的守护进程

  设备即网络接口,连接是对网络接口的配置。一个网络接口可有多个连接配置,但同时只有一个连接配置生效。

  • 显示所有包括不活动连接

 nmcli con show

  • 显示所有活动连接

 nmcli con show –active

  • 显示网络连接配置

 nmcli con show "System eth0“

  • 显示设备状态

 nmcli dev status

  • 显示网络接口属性

 nmcli dev show eno16777736


使用nmcli配置主机名

rhel6之前主机名配置文件:/etc/sysconfig/network

rhel7.0主机名配置文件:/etc/hostname ,默认没有这个文件,通过DNS反向解析获取主机名,主机名默认为:localhost.localdomain

显示主机名信息

    hostname

    hostnamectl status

centos 如何使用Memtester centos nmcli_nmcli_02

创建并修改文件并生效

    hostnamectl set-hostname desktopX.example.com

删除文件,恢复主机名localhost.localdomain

DNS设置,存放在/etc/resolv.conf文件中

PEERDNS=no 表示当IP通过dhcp自动获取时,dns仍是手动设置,不自动获取。等价于下面命令:

    nmclicon mod “system eth0” ipv4.ignore-auto-dns yes


测试网络

在命令行下测试网络的连通性

  显示主机名

    hostname

  测试网络连通性

    ping

    mtr

  显示正确的路由表

    iproute

确定名称服务器使用:

    nslookup

    host

    dig

跟踪路由:

    traceroute

    Tracepath

网络客户端工具

lftp, ftp, lftpget, wget

lftp:

lftp命令是一款优秀的文件客户端程序,它支持ftp、SETP、HTTP和FTPs等多种文件传输协议。lftp支持tab自动补全,记不得命令双击tab键,就可以看到可能的选项了。 

语法:  lftp[-p port] [-u user[,password]] SERVER

子命令:

 get、mget、ls、help

# ftp:

ftp命令用来设置文件系统相关功能。ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相信掌握了这些使用Linux进行ftp操作将会非常容易。

# lftpget

# wget:

  wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。 

语法:wget[option]… [URL]…

    -q: 静默模式

    -c: 断点续传

    -O: 保存位置

    –limit-rates=: 指定传输速率