云网牛站
所在位置:首页 > Linux教程 > 在RHEL 8/CentOS 8系统上配置静态IP地址的方法

在RHEL 8/CentOS 8系统上配置静态IP地址的方法

2019-03-08 21:52:15作者:戴均力稿源:云网牛站

本文将向你介绍在RHEL 8和CentOS 8系统上配置静态IP地址的不同方法:手动更改网络接口配置文件及使用nmcli工具。可以手动(静态IP地址)或通过DHCP分配IP地址,DHCP IP寻址分配通常用于台式机,笔记本电脑和工作站,如果IP更改,通过DHCP将IP地址分配给服务器可能会产生严重影响。

在RHEL 8/CentOS 8系统上配置静态IP地址的方法

 

方法1:编辑网络配置文件

我们将考虑的第一种方法是手动更改网络接口配置文件,我的RHEL 8服务器有两个网络接口:

# ip link show

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000

 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: enp1s0:  mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000

 link/ether 52:54:00:8f:8c:86 brd ff:ff:ff:ff:ff:ff

3: enp7s0:  mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000

 link/ether 52:54:00:83:0b:b9 brd ff:ff:ff:ff:ff:ff

这些是enp1s0和enp7s0,我们将配置第二个接口enp7s0静态IP地址,此网络接口配置文件将放在/etc/sysconfig/network-scripts/ifcfg-enp7s0下。

如果该文件不存在,请创建此文件,将enp7s0替换为你的网络接口名称:

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp7s0

编辑以下内容以适合你的网络寻址方案并粘贴到文件中:

DEVICE=enp7s0

TYPE=Ethernet

NM_CONTROLLED=yes

ONBOOT=yes

BOOTPROTO=none

IPADDR=192.168.121.188

NETMASK=255.255.255.0

GATEWAY=192.168.121.1

DNS1=8.8.8.8

DNS2=4.2.2.2

IPV6INIT=no

USERCTL=no

PEERDNS=yes

使用的参数/选项:

ONBOOT=yes:确保接口启动upom系统启动。

NM_CONTROLLED=yes:允许网络管理员管理接口。

BOOTPROTO=none:为接口使用指定的网络信息。

IPV6INIT=no:禁用此网络接口的IPv6初始化。

进行更改后重新启动NetworkManager服务:

sudo systemctl restart NetworkManager

应该可以看到分配给网络接口的新IP地址,如下:

# ip addr show enp7s0

3: enp7s0:  mtu 1500 qdisc fq_codel state UP group default qlen 1000

 link/ether 52:54:00:83:0b:b9 brd ff:ff:ff:ff:ff:ff

 inet 192.168.121.188/24 brd 192.168.121.255 scope global noprefixroute enp7s0

  valid_lft forever preferred_lft forever

 inet6 fe80::5054:ff:fe83:bb9/64 scope link 

  valid_lft forever preferred_lft forever

参考:新的网络管理工具 ip替代ifconfig零压力

 

方法2:使用nmcli在RHEL 8上设置静态IP地址

Nmcli是一个命令行工具,用于控制NetworkManager和报告网络状态,使用此命令行工具,你可以使用命令设置RHEL 8静态IP地址。

检查可用的连接,运行nmcli connection show命令:

在RHEL 8/CentOS 8系统上配置静态IP地址的方法

你可以删除并重新创建连接:

# nmcli connection  down  75faabc3-f62c-9770-bfe5-9996ddb77891

# nmcli connection  delete 75faabc3-f62c-9770-bfe5-9996ddb77891

Connection 'System enp7s0' (75faabc3-f62c-9770-bfe5-9996ddb77891) successfully deleted.

将enp7s0替换为你的接口名称和IP地址信息以及下面代码段中的实际值:

INT="enp7s0"

IP_SUBNET="192.168.121.188/24"

GW="192.168.121.1"

DNS1="8.8.8.8"

DNS2="4.2.2.2"

为接口添加新连接:

nmcli connection add type ethernet autoconnect yes con-name ${INT} ifname ${INT}

注:autoconnect yes等同于ONBOOT=yes。

添加IP地址和网络子网:

nmcli connection modify ${INT} ipv4.addresses ${IP_SUBNET} ipv4.method manual

设置接口的默认网关:

nmcli connection modify ${INT} ipv4.gateway ${GW}

设置两个早先提供的DNS服务器:

nmcli connection modify ${INT} ipv4.dns ${DNS1}

nmcli connection modify ${INT} +ipv4.dns ${DNS2}

检查连接,运行nmcli connection show命令:

在RHEL 8/CentOS 8系统上配置静态IP地址的方法

NetworkManager会将配置文件增添到/etc/sysconfig/network-scripts/目录,我的例子如下所示:

# cat  /etc/sysconfig/network-scripts/ifcfg-enp7s0

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=enp7s0

UUID=9f9dba41-b532-414c-b531-0c7978e0eb6b

DEVICE=enp7s0

ONBOOT=yes

IPADDR=192.168.121.188

PREFIX=24

GATEWAY=192.168.121.1

DNS1=8.8.8.8

DNS2=4.2.2.2

参考:Linux上使用ifconfig、ip、netstat、nmcli命令查找可用的网络接口

注:有一个名为Nmtui的工具,它具有ncurses GUI,但不建议使用它在基于RHEL/CentOS的系统上设置静态IP地址。

 

相关主题

详解Ubuntu 18.04系统下配置静态IP地址,附动态IP地址说明

精选文章
热门文章