在 CentOS 8|CentOS 7 上配置静态 IP 地址
欢迎阅读有关如何在 CentOS 8|CentOS 7 Linux 上配置静态 IP 地址的教程。您是否一直在尝试寻找一种简单的方法来设置静态IP地址
在服务器上工作时,静态 IP 地址配置是必须做的事情,无论您管理的服务器类型如何。
要在CentOS上配置静态IP地址,可以使用以下任意一种方法:
- 直接编辑/etc/sysconfig/network-scripts/目录下的网络配置文件。
- 使用 nmcli 网络配置命令行工具
- 使用nmtui网络配置工具
- 使用ip和ifconfig命令进行静态IP地址配置。
我们将在本指南的下一部分中介绍所有这些方法。请注意,ip和ifconfig方法在重新启动后不会持续存在。这是唯一在您需要测试设置然后将其提交到文件时使用的情况。
方法一:通过编辑网络配置文件配置静态IP地址
假设您有一台网络接口名为 eth0 的服务器,并且想要为其设置静态网络配置,则要创建的文件将为 /etc/sysconfig/network-scripts/ifcfg-eth0, 其基本内容类似如下:
DEVICE=eth0
NAME=eth0
Type=Ethernet
IPADDR=192.168.1.20
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.4.4
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
PEERDNS=yes
最常见的配置参数及其解释是:
BOOTPROTO=
none — 不应使用启动时协议。
bootp — 应使用 BOOTP 协议。
dhcp — 应使用 DHCP 协议。
IPADDR=,其中
是 IP 地址。DEVICE=
DNS{1,2}=,其中 是要放置在 /etc/resolv.conf 中的名称服务器地址
GATEWAY= 其中 是网络路由器的 IP 地址
MACADDR=
NETMASK=
ONBOOT=
yes — 此设备应在启动时激活。
no — 此设备不应在启动时激活-time.
PEERDNS=
yes – 修改 /etc/resolv.conf(如果 DNS)指令已设置。如果使用 DHCP,则默认为 yes。
no – 不要修改 /etc/resolv.conf。
USERCTL=
是 – 允许非 root 用户控制此设备。
否 – 不允许非 root 用户控制此设备控制该设备。
如果您正在运行 NetworkManager 服务,则需要指示网络服务网络管理器不管理此接口 (eth0)。这是通过添加行来完成的;
NM_CONTROLLED=no
然后就可以停止NetworkManager服务了。对于 CentOS 7/8,可以使用以下命令完成:
sudo systemctl stop NetworkManager
保存更改后,关闭界面并将其恢复:
sudo ifdown eth0 && sudo ifup eth0
使用 ip 命令检查当前配置:
$ ip addr show
如果您想使用 ifconfig 命令但尚未安装,请使用以下命令安装它:
sudo yum -y install net-tools
然后使用ifconfig命令检查您的IP地址信息。
$ ifconfig -a
方法 2:使用 nmcli 配置静态 IP
NetworkManager 是一个守护进程,位于 libudev 和其他 Linux 内核接口之上,并为网络接口的配置提供高级接口。
另一方面,nmcli 是一个命令行工具,用于控制 NetworkManager 和报告网络状态。它可以用作 nm-applet 或其他图形客户端的替代品。 nmcli 可以创建、显示、编辑、删除、激活和停用网络连接,以及控制和显示网络设备状态。
nmcli 可以做很多网络配置,我们这里只考虑基本的。在尝试使用 nmcli 工具配置网络之前,请确保 NetworkManager 服务正在运行。
systemctl status NetworkManager
如果该服务未运行,则启动它:
sudo systemctl start NetworkManager
要使用 nmcli 控制网络接口的状态,请在 NIC 名称之前传递 down|up。这将关闭接口或打开已关闭的接口。
sudo nmcli connection down eth0
sudo nmcli connection up eth0
使用 nmcli 创建网络并配置静态 IP 地址
此示例将向您展示如何创建一个名为 eth0 的新网络,并使用 nmcli 配置 IPv4 地址。
显示当前连接:
$ nmcli con show
重新创建之前删除同名的连接。使用上一个命令中显示的网络名称或网络 UUID:
$ nmcli con delete eth0
创建名为 eth0 的网络
$ nmcli con add type ethernet ifname eth0 con-name eth0 \
autoconnect yes ip4 192.168.1.10 gw4 192.168.1.1
Connection 'eth0' (804ce9b1-c5e1-42ff-b1a9-7a92e08e44a7) successfully added.
配置 DNS 并使该网络接口的网络配置始终为手动。
nmcli con mod eth0 ipv4.method manual
nmcli con mod eth0 ipv4.dns "8.8.8.8 8.8.4.4"
重新启动网络:
sudo nmcli con down eth0 && sudo nmcli con up eth0
使用 nmcli 的 show 命令查看网络配置:
$ nmcli con show eth0
要删除连接,请使用:
$ nmcli con del eth0
Connection 'eth0' (804ce9b1-c5e1-42ff-b1a9-7a92e08e44a7) successfully deleted.
方法 3:使用 ip 和 ifconfig 命令进行静态 IP 地址配置。
有一个关于如何使用 ip 和 ifconfig 命令配置静态 IP 地址的现有指南:
- 使用 ip 和 ifconfig 配置 Linux 网络。
包起来。
我们已经介绍了如何使用手动修改网络配置文件和使用 nmcli 命令行工具在 CentOS 上配置静态 IP 地址的完整步骤。其他工具也可用,例如 nmtui,但已弃用且不推荐。希望本文能提供有用的信息,并感谢您的观看。
如果您新安装了 CentOS 服务器,我建议您阅读:全新安装 CentOS 7 mini 后要做的主要事情