CentOS7中已经取消了ifconfig,用nmcli进行了代替,服务管理也升级为systemd。所以之前在6.x版本上的网络配置操作在7.x上行不通了。
下面介绍一下在CentOS7.x上进行网络配置的方法。
环境准备:新安装的CentOS7.x,最小化安装,没有进行网络配置。
1、查看当前网卡信息
[root@localhost ~]
# nmcli connection show
NAME UUID TYPE DEVICE
enp0s3
5
d58d8cc-
8
caf-
458
b-a672-ed0cdf58292e
802
-
3
-ethernet ---
CentOS7中对网上的命名规则有所变更,具体规则如下:
eno1 :代表由主板 BIOS 內建的网卡ens1 :代表由主板 BIOS 內建的 PCI-E 界面的网卡enp2s0 :代表 PCI-E 界面的独立网卡,可能有多个网卡接口,因此会有 s0, s1... 的编号eth0 :如果上述的名称都不适用,就回到原本的预设网卡编号
由于现在网卡没有启用,也没有建立相关的配置文件,因此在DEVICE 栏位里显示的是”—”。在配置完成,重启网络服务后就会显示相应的设备名,在我的虚拟机上显示的是“enp0s3”
2、使用nmcli命令手工配置网卡
需要配置的网络信息:
IP地址:172.20.31.221/24
网关:172.20.31.240
DNS:202.96.69.38
命令:
[root@localhost ~]
# nmcli connection modify enp0s3 \
> connection
.autoconnect
yes \> ipv4
.method
manual \> ipv4
.address
172.20.31.221
/
24
\> ipv4
.gateway
172.20.31.240
\> ipv4
.dns
202.96.64.68
autoconnect 是设置开机自动连接
ipv4.method 是设置手工配置IPV4地址
重启网络服务
[root
@localhost
~]
# systemctl restart network
3、查看配置后的网卡配置信息
[root@localhost ~]
# nmcli connection show
enp0s3
connection.id: enp0s3connection.uuid:
5
d58d8cc-
8
caf-
458
b-a672-ed0cdf58292e......(中间省略)......ipv4.method: manualipv4.dns:
202.96.69.38
ipv4
.dns
-search:ipv4.addresses:
172.20.31.221
/
24
ipv4.gateway:
172.20.31.240
......(中间省略)......IP4.地址[
1
]:
172.20.31.221
/
24
IP4.网关:
172.20.31.240
IP4
.DNS
[
1
]:
202.96.69.38
......(以下省略)......
因为在CentOS7.x中取消了ifconfig命令, 我们使用ip addr来代替。
[root
@localhost
~]
# ip addr
1
: lo: mtu
65536
qdisc noqueue
state
UNKNOWN
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
: enp0s3: mtu
1500
qdisc pfifo_fast
state
UP qlen
1000
link
/ether 08:
00
:
27
:ef:
69
:
36
brd ff:ff:ff:ff:ff:ff inet
172.20
.
31.221
/
24
brd
172.20
.
31.255
scope global enp0s3 valid_lft forever preferred_lft forever inet6 fe8
0
::a0
0
:
27
ff:feef:
6936
/
64
scope
link
valid_lft forever preferred_lft forever
4、设置双IP
[root
@localhost
~]
# cd /etc/sysconfig/network-scripts/
[root
@localhost
network-scripts]
# cp ifcfg-enp0s3 ifcfg-enp0s3:1
[root
@localhost
network-scripts]
# vi ifcfg-enp0s3:1
将下列二项内容进行修改:
NAME=enp0s3:
1
DEVICE=enp0s3:
1
IPADDR=
172.20
.
31.222
PREFIX=
24
保存退出后,生词网络服务,然后查看配置信息
[root@localhost ~]
# nmcli connection show
enp0s3
connection.id: enp0s3connection.uuid:
5
d58d8cc-
8
caf-
458
b-a672-ed0cdf58292e......(中间省略)......ipv4.method: manualipv4.dns:
202.96.69.38
ipv4
.dns
-search:ipv4.addresses:
172.20.31.221
/
24
,
172.20.31.222
/
24
ipv4.gateway:
172.20.31.240
......(中间省略)......IP4.地址[
1
]:
172.20.31.221
/
24
IP4.地址[
2
]:
172.20.31.222
/
24
IP4.网关:
172.20.31.240
IP4
.DNS
[
1
]:
202.96.69.38
......(以下省略)......
查看全部网络设备信息
[root
@localhost
network-scripts]
# ip addr
1
: lo: mtu
65536
qdisc noqueue
state
UNKNOWN
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
: enp0s3: mtu
1500
qdisc pfifo_fast
state
UP qlen
1000
link
/ether 08:
00
:
27
:ef:
69
:
36
brd ff:ff:ff:ff:ff:ff inet
172.20
.
31.221
/
24
brd
172.20
.
31.255
scope global enp0s3 valid_lft forever preferred_lft forever inet
172.20
.
31.222
/
24
brd
172.20
.
31.255
scope global secondary enp0s3:
1
valid_lft forever preferred_lft forever inet6 fe8
0
::a0
0
:
27
ff:feef:
6936
/
64
scope
link
valid_lft forever preferred_lft forever
在enp0s3中会出现二个”inet”,包含配置过的二个IP的信息。
5、配置hostname
使用hostnamectl来配置主机的hostname
[root
@localhost
network-scripts]
# hostnamectl set-hostname www.cmzsteven.com
[root
@localhost
network-scripts]
# cat /etc/hostname
www.cmzsteven.com
重新登录后生效。
6、自动获取IP地址
如果局域网里有DHCP服务器,那么可以使用自动获取来取得主机的IP等相关信息
[root@localhost ~]
# nmcli connection modify eth0 \
> connection
.autoconnect
yes \> ipv4
.method
auto
然后重启网络服务即可