如何在RHEL 8/CentOS 8上配置静态IP地址
问题:如何在RHEL 8/CentOS 8上配置静态IP地址?
本教程将向我们显示不同方式,可以在RHEL 8和CentOS 8上配置静态IP地址。
IP地址是用于在IP网络上唯一标识设备的地址。
对于两个计算机来彼此通信并共享数据,他们需要将IP地址设置为其网络接口。
可以手动分配IP地址(静态IP地址)或者通过DHCP分配。
DHCP IP寻址分配通常用于桌面,笔记本电脑和工作站。
如果IP更改,通过DHCP将IP地址通过DHCP分配给服务器可能会导致剧烈效果。
方法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系统Startnm_Controlled = YES:允许接口由Network ManagerBootPoto = None管理:使用指定的InterniftIPV6Init = 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
方法2:使用NMCLI设置RHEL 8上的静态IP地址
NMCLI是用于控制NetworkManager和报告网络状态的命令行工具。
使用此命令行工具,我们可以使用少量命令设置RHEL 8静态IP地址。
检查可用连接。
# nmcli connection show NAME UUID TYPE DEVICE enp1s0 498869bb-0d88-4a4c-a83a-c491d1040b0b ethernet enp1s0 System enp7s0 75faabc3-f62c-9770-bfe5-9996ddb77891 ethernet enp7s0
我们可以删除和重新创建连接。
# 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 NAME UUID TYPE DEVICE enp1s0 498869bb-0d88-4a4c-a83a-c491d1040b0b ethernet enp1s0 enp7s0 9f9dba41-b532-414c-b531-0c7978e0eb6b ethernet enp7s0
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
有一个叫做的工具 Nmtui
其中有ncurses GUI,但它不是在RHEL/CONTOS的系统上设置静态IP地址的推荐方式。