在 CentOS 8 Stream 中,网卡配置已由 NetworkManager 管理,传统的 ifcfg-eth0
文件仍然支持,但推荐使用 nmcli
或 nmtui
工具进行网络配置和管理。以下是网卡配置及重启的详细步骤:
1. 查看当前网卡状态
列出所有网卡
bash
复制
nmcli device
输出示例:
plaintext
复制
DEVICE TYPE STATE CONNECTION enp0s3 ethernet connected Wired_connection_1 lo loopback unmanaged --
- DEVICE:网卡名称(如
enp0s3
)。 - STATE:
connected
:网卡已连接。disconnected
:网卡未连接。
- CONNECTION:当前配置的连接名称。
- DEVICE:网卡名称(如
查看 IP 地址
bash
复制
ip addr
输出示例:
plaintext
复制
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s3valid_lft 86395sec preferred_lft 86395sec
2. 使用 nmcli
配置网卡
2.1 临时配置 IP
设置临时静态 IP 地址
bash
复制
nmcli con mod "Wired_connection_1" ipv4.addresses 192.168.1.100/24 nmcli con mod "Wired_connection_1" ipv4.gateway 192.168.1.1 nmcli con mod "Wired_connection_1" ipv4.dns 8.8.8.8 nmcli con mod "Wired_connection_1" ipv4.method manual
ipv4.addresses
:设置静态 IP 地址及子网掩码。ipv4.gateway
:配置网关。ipv4.dns
:配置 DNS。
激活连接
bash
复制
nmcli con up "Wired_connection_1"
验证
bash
复制
ip addr ping -c 4 8.8.8.8
2.2 持久化配置 IP
编辑连接配置
bash
复制
nmcli con edit "Wired_connection_1"
进入交互式编辑模式后:
- 设置静态 IP 地址:
bash
复制
set ipv4.addresses 192.168.1.100/24 set ipv4.gateway 192.168.1.1 set ipv4.dns 8.8.8.8 set ipv4.method manual save quit
- 设置静态 IP 地址:
重启网卡
bash
复制
nmcli con down "Wired_connection_1" && nmcli con up "Wired_connection_1"
验证配置
- 查看配置文件:
bash
复制
cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
- 验证网络是否正常:
bash
复制
ping -c 4 google.com
- 查看配置文件:
3. 使用 nmtui
配置网卡(图形化工具)
启动
nmtui
工具bash
复制
nmtui
配置网络连接
- 选择 Edit a connection。
- 选择需要修改的连接(如
Wired_connection_1
),按 Enter。 - 修改以下参数:
- IP Address:静态 IP 地址(如
192.168.1.100/24
)。 - Gateway:网关(如
192.168.1.1
)。 - DNS Server:DNS 地址(如
8.8.8.8
)。
- IP Address:静态 IP 地址(如
- 保存并退出。
激活连接
- 在
nmtui
主界面选择 Activate a connection。 - 选择对应的连接,按 Enter 激活。
- 在
验证网络
bash
复制
ping -c 4 google.com
4. 手动修改配置文件
如果需要直接编辑配置文件,可使用以下方法。
4.1 编辑网卡配置文件
- 打开网卡配置文件:
bash
复制
sudo nano /etc/sysconfig/network-scripts/ifcfg-enp0s3
- 添加或修改以下内容(以静态 IP 为例):
plaintext
复制
TYPE=Ethernet BOOTPROTO=none NAME=enp0s3 DEVICE=enp0s3 ONBOOT=yes IPADDR=192.168.1.100 PREFIX=24 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=8.8.4.4
- 保存并退出。
4.2 重启网络服务
重启网卡:
bash
复制
nmcli con down "Wired_connection_1" && nmcli con up "Wired_connection_1"
或直接重启网络服务:
bash
复制
sudo systemctl restart NetworkManager
验证网络状态:
bash
复制
ip addr ping -c 4 google.com
5. 网卡重启
5.1 重启单个网卡
使用
nmcli
:bash
复制
nmcli con down "Wired_connection_1" nmcli con up "Wired_connection_1"
使用
ifdown
和ifup
(传统方法):bash
复制
ifdown enp0s3 && ifup enp0s3
5.2 重启所有网络服务
- 使用
NetworkManager
:bash
复制
sudo systemctl restart NetworkManager
- 验证服务状态:
bash
复制
systemctl status NetworkManager
6. 常见问题及解决方案
6.1 网络未连接(STATE: disconnected)
- 原因:配置文件错误或未激活连接。
- 解决方法:
- 使用
nmcli
激活网卡:bash
复制
nmcli con up "Wired_connection_1"
- 检查配置文件是否正确。
- 使用
6.2 无法 ping 外网
- 原因:网关或 DNS 配置错误。
- 解决方法:
- 确认网关和 DNS 是否正确:
bash
复制
cat /etc/resolv.conf
- 修改 DNS:
bash
复制
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
- 确认网关和 DNS 是否正确:
7. 总结
操作 | 命令/工具 |
---|---|
查看网卡状态 | nmcli device 或 ip addr |
临时配置网卡 | 使用 nmcli 设置 IP、网关和 DNS |
持久化配置网卡 | 修改 /etc/sysconfig/network-scripts/ifcfg-<网卡名> |
图形化工具配置 | 使用 nmtui |
重启网络服务 | systemctl restart NetworkManager 或 nmcli con up/down |
通过这些步骤,您可以方便地在 CentOS 8 Stream 中完成网卡配置和重启操作,同时解决常见的网络问题。