跳至内容

简介

对于第一次接触 GNU/Linux 的新手用户来说,首先要考虑的是如何在安装操作系统后将机器连接到互联网。本文将告诉你如何配置 IP 地址、子网掩码、网关和 DNS。有几种方法可以参考。无论你是新手还是熟悉,我相信你都能快速上手。

nmtui

NetworkManager 是一套标准的 Linux 网络配置工具套件,支持服务器和桌面环境。如今,大多数流行的发行版都支持它。这套网络配置工具适用于 Rocky Linux 8 及更高版本。如果你想以图形方式配置网络信息(即命令行 nmtui),你只需要这样做

shell > dnf -y install NetworkManager NetworkManager-tui
shell > nmtui
NetworkManager TUI
编辑连接
激活连接
设置系统主机名
退出
\<OK>

你可以使用 Tab 键或 Up Down Left Right 键来选择特定的如果你想更改网络信息,请选择 编辑连接,然后按 Enter。选择不同的网卡,选择 Edit.. 进行编辑。

DHCP IPv4

对于 IPv4,如果要使用 DHCP 获取网络信息,你只需要选择 IPv4 配置 <自动>,并在你的终端中运行 systemctl restart NetworkManager.service。这在大多数情况下都有效。在极少数情况下,你需要禁用并启用网卡才能使更改生效。例如:nmcli connection down ens33nmcli connection up ens33

手动修复网络信息

如果你想手动修复所有 IPv4 网络信息,你需要在 IPv4 配置 后选择 <手动> 并逐行添加。例如,我喜欢这样

项目
地址192.168.100.4/24
网关192.168.100.1
DNS 服务器8.8.8.8

然后点击 \< OK >,逐步返回到终端界面,执行 systemctl restart NetworkManager.service。同样,在极少数情况下,需要开启和关闭网卡才能生效。

更改配置文件的方式

所有 RHEL7.x8.x发行版,无论是上游还是下游,配置方式都是一样的。网络信息的配置文件存储在 /etc/sysconfig/network-scripts/ 目录下,一个网卡对应一个配置文件。配置文件包含许多参数,如以下表格所示。注意!参数必须大写。

警告

在 RHEL 9.x 发行版中,存储 NIC 配置文件的目录位置已更改,即 /etc/NetworkManager/system-connections/。有关更多信息,请参阅 此处

shell > ls /etc/sysconfig/network-scripts/
ifcfg-ens33
参数名称含义示例
DEVICE系统逻辑设备名称DEVICE=ens33
ONBOOT网卡是否随系统自动启动,可以选择 yes 或 noONBOOT=yes
TYPE网卡接口类型,通常是以太网TYPE=Ethernet
BOOTPROTO获取 ip 的方式,可以是 DHCP 动态获取,也可以是使用 static 静态手动配置BOOTPROTO=static
IPADDR网卡的 ip 地址,当 BOOTPROTO=static 时,此参数将生效IPADDR=192.168.100.4
HWADDR硬件地址,即 MAC 地址HWADDR=00:0C:29:84:F6:9C
NETMASK十进制子网掩码NETMASK=255.255.255.0
PREFIX子网掩码,用数字表示PREFIX=24
GATEWAY网关,如果有多个网卡,此参数只能出现一次GATEWAY=192.168.100.1
PEERDNS当为 yes 时,此处定义的 DNS 参数将修改 /etc/resolv.conf; 当为 no 时,/etc/resolv.conf 不会被修改。使用 DHCP 时,默认值为 yesPEERDNS=yes
DNS1选择主 DNS,仅在 PEERDNS=no 时生效DNS1=8.8.8.8
DNS2备用 DNS,仅在 PEERDNS=no 时有效DNS2=114.114.114.114
BROWSER_ONLY是否只允许浏览器BROWSER_ONLY=no
USERCTL是否允许普通用户控制网卡设备,yes 表示允许,no 表示不允许USERCTL=no
UUID通用唯一标识码,主要功能是识别硬件,一般来说,不需要填写
PROXY_METHOD代理方法,一般为 none,可以留空
IPV4_FAILURE_FATAL如果为 yes,表示 ipv4 配置失败后设备将被禁用;如果为 no,表示不会被禁用。IPV4_FAILURE_FATAL=否
IPV6INIT是否启用 IPV6,yes 表示启用,no 表示不启用。当 IPV6INIT=yes 时,IPV6ADDR 和 IPV6_DEFAULTGW 这两个参数也可以启用。前者代表 IPV6 地址,后者代表默认网关。IPV6INIT=是
IPV6_AUTOCONF是否使用 IPV6 自动配置,yes 表示使用;no 表示不使用。IPV6_AUTOCONF=是
IPV6_DEFROUTE是否为 IPV6 提供默认路由IPV6_DEFROUTE=是
IPV6_FAILURE_FATALIPV6 配置失败后,是否禁用设备IPV6_FAILURE_FATAL=否
IPV6_ADDR_GEN_MODE生成 IPV6 地址模型,可选值为 stable-privacy 和 eui64IPV6_ADDR_GEN_MODE=stable-privacy

配置文件修改成功后,请记得重启网卡服务 systemctl restart NetworkManager.service

TYPE=Ethernet
ONBOOT=yes
DEVICE=ens33
USERCTL=no
IPV4_FAILURE_FATAL=no
BROWSER_ONLY=no
BOOTPROTO=static
PEERDNS=no
IPADDR=192.168.100.4
PREFIX=24
GATEWAY=192.168.100.1
DNS1=8.8.8.8
DNS2=114.114.114.114
TYPE=Ethernet
ONBOOT=yes
DEVICE=ens33
USERCTL=no
BROWSER_ONLY=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no

查看网络信息

ip anmcli device show

作者:田城 李

贡献者:史蒂文·斯宾塞,尼尔·汉隆