简介¶
对于第一次接触 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 ens33
,nmcli 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.x或8.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 或 no | ONBOOT=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 时,默认值为 yes | PEERDNS=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_FATAL | IPV6 配置失败后,是否禁用设备 | IPV6_FAILURE_FATAL=否 |
IPV6_ADDR_GEN_MODE | 生成 IPV6 地址模型,可选值为 stable-privacy 和 eui64 | IPV6_ADDR_GEN_MODE=stable-privacy |
配置文件修改成功后,请记得重启网卡服务 systemctl restart NetworkManager.service
。
IPV4 推荐配置¶
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
IPV6 推荐配置¶
TYPE=Ethernet
ONBOOT=yes
DEVICE=ens33
USERCTL=no
BROWSER_ONLY=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
查看网络信息¶
ip a
或 nmcli device show
作者:田城 李
贡献者:史蒂文·斯宾塞,尼尔·汉隆