在RHEL7中默认使用NetworkManager守护进程来监控和管理网络设置。NetworkManager包含命令行工具和文本界面工具:
CentOS7之前的网络管理是通过ifcfg文件配置管理接口(device),而现在是通过NetworkManager服务管理连接(connection)。
nmcli会自动把配置写到/etc/sysconfig/network-scripts/目录下面(nmcli和nmtui的网络配置会覆盖配置文件的内容),配置文件的生成与使用状态均由NetworkManager控制。
#nmcli工具由NetworkManager提供
yum provides nmcli
#安装NetworkManager
yum install -y NetworkManager
查看当前网络连接
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 71d82a64-c7ec-4d60-8f15-ff6a3de87d52 ethernet ens33
直接修改当前网卡静态IP地址
nmcli con mod ens33 ipv4.addresses 192.168.94.61/24
重启网络使配置生效
#方法1
nmcli device reapply ens33
#方法2
nmcli con reload && nmcli con up ens33
#方法3
nmcli networking off && nmcli networking on
验证IP地址配置是否正确
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:93:d0:0b brd ff:ff:ff:ff:ff:ff
inet 192.168.93.70/24 brd 192.168.93.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::99f1:d8e7:c005:33b9/64 scope link noprefixroute
valid_lft forever preferred_lft forever
配置信息自动更新到/etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=71d82a64-c7ec-4d60-8f15-ff6a3de87d52
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.93.71
PREFIX=24
GATEWAY=192.168.93.2
DNS1=114.114.114.114
DNS2=8.8.8.8
IPV6_PRIVACY=no
新增网卡后修改静态IP地址,以新增ens37网卡为例,首次新增网卡后默认连接名称为Wired connection 1
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 752fa178-bbb6-4ab3-84ee-aa86a34a16b4 ethernet ens33
Wired connection 1 28eff6e8-6865-37fd-a2d0-94433cae8800 ethernet ens37
该网卡从DHCP动态获取IP地址
[root@localhost ~]# ip a | grep ens
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.93.70/24 brd 192.168.93.255 scope global noprefixroute ens33
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.93.140/24 brd 192.168.93.255 scope global dynamic noprefixroute ens37
并且没有ifcfg-xx配置文件
[root@localhost ~]# ls /etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/ifcfg-ens33
配置ens37为静态IP地址,修改连接名称,配置网关和DNS
nmcli con mod "Wired connection 1" \
con-name ens37 \
ipv4.method manual \
ipv4.addresses 192.168.94.61/24 \
ipv4.gateway 192.168.94.2 \
ipv4.dns "114.114.114.114,8.8.8.8"
重启网络设备生效
[root@localhost ~]# nmcli device reapply ens37
验证配置是否正确
[root@localhost ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 71d82a64-c7ec-4d60-8f15-ff6a3de87d52 ethernet ens33
ens37 f73c9e4c-7b85-39fe-8a04-2e1d69fd01b6 ethernet ens37
[root@localhost ~]# ip a | grep ens
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.93.70/24 brd 192.168.93.255 scope global noprefixroute ens33
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.94.61/24 brd 192.168.94.255 scope global noprefixroute ens37
查看生成的ifcfg-ens37配置文件
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens37
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.94.61
PREFIX=24
GATEWAY=192.168.94.2
DNS1=114.114.114.114
DNS2=8.8.8.8
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
UUID=f73c9e4c-7b85-39fe-8a04-2e1d69fd01b6
DEVICE=ens37
ONBOOT=yes
AUTOCONNECT_PRIORITY=-999
命令行终端输入nmtui回车
nmtui
进入图形化配置界面
选择一个网卡回车进行编辑
配置IP地址信息,选择Manual静态模式,选择Automastically connect自动连接,配置完成后选择OK
选择back
选择ok
验证配置是否自动生效
ip a