刚配置完欧拉系统,结果卡在网络设置环节了,记录一下排错过程

问题现象

在 VMware 虚拟机中新安装 openEuler 22.03 LTS SP2 后:

# yum 安装软件时报错
[root@localhost ~]# yum install -y ntp ntpdate
OS: Curl error (6): Couldn't resolve host name for ...
# ping 公网 IP 失败
[root@localhost ~]# ping 8.8.8.8
ping: connect: Network is unreachable
# ping 百度失败
[root@localhost ~]# ping www.baidu.com
ping: www.baidu.com: Name or service not known

排查步骤(按顺序执行)

第一步:查看网卡 IP 地址
ip addr

正常结果示例:

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> ... state UP
    inet 192.168.1.11/24 brd 192.168.1.255 scope global noprefixroute ens33

state UP 表示网卡已启用,inet 后有 IP 地址说明已获取到 IP。

第二步:查看路由表——检查是否配置了默认网关(关键)
ip route show

** 问题结果(没有网关):**

192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.11 metric 100

缺少 default via ... 一行,说明没有配置默认网关。

** 正常结果:**

default via 192.168.1.254 dev ens33
192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.11 metric 100

所以我们先配置网关

第三步:测试网关连通性(配置网关后执行)
ping -c 4 192.168.1.254

VMware NAT 模式下默认网关通常是 .1.254,根据你的虚拟网络设置决定。

第四步:测试公网 IP 连通性
ping -c 4 8.8.8.8
结果 结论
网络层正常,问题在 DNS
不通(Network is unreachable) 网关配置缺失或错误
第五步:测试 DNS 解析(选做)
nslookup repo.openeuler.org

解决方案(按顺序执行)

一,添加默认网关(解决 Network is unreachable
# 通过 nmcli 永久配置网关
nmcli con mod ens33 ipv4.gateway 192.168.1.254
nmcli con mod ens33 ipv4.method manual

# 重启网卡使配置生效
nmcli con down ens33 && nmcli con up ens33

# 验证网关已生效
ip route show
# 现在应该能看到 default via 192.168.1.254 dev ens33

如果 nmcli 不可用,用 ip 命令临时添加网关(测试用,重启失效):

ip route add default via 192.168.1.254
二,配置DNS(解决 Could not resolve host
# 通过 nmcli 配置 DNS(持久生效)
nmcli con mod ens33 ipv4.dns "8.8.8.8 114.114.114.114"
nmcli con down ens33 && nmcli con up ens33

# 验证 DNS 配置
cat /etc/resolv.conf
# 应该能看到 nameserver 8.8.8.8 或 nameserver 114.114.114.114

如果 nmcli 配置后 resolv.conf 仍未更新,手动写入:

echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 114.114.114.114" >> /etc/resolv.conf

🧪 最终验证

按顺序执行以下命令,全部通即为正常:

# 1. 测试网关
ping -c 4 192.168.1.254

# 2. 测试外网 IP
ping -c 4 8.8.8.8

# 3. 测试域名解析
ping -c 4 www.baidu.com

# 4. 测试 yum 源
yum makecache

排错结论速查表

测试结果 问题诊断 解决方案
ip addr 无 IP 网卡未启动或 DHCP 失败 nmcli con up ens33 或检查 VMware DHCP 服务
ip route showdefault via 网关未配置 执行方案一添加网关
ping 网关 不通 网络配置或 VMware NAT 服务问题 检查 VMware NAT Service
ping 8.8.8.8 通,ping www.baidu.com 不通 DNS 未配置 执行方案二配置 DNS
yum 报错 Could not resolve host DNS 未配置 执行方案二配置 DNS

说明

为什么要配网关?

  • 虚拟机要访问外网,必须知道“出口”在哪里。
  • 网关就是虚拟网络的“大门”,所有去外网的数据包都要通过网关转发。
  • VMware NAT 模式下,网关通常是 .1.254,由虚拟网络编辑器中的 NAT 设置决定。

为什么要配 DNS?

  • ping 8.8.8.8 通但 ping www.baidu.com 不通,说明网络通了但域名无法解析成 IP。
  • DNS 服务器的作用就是把域名(如 www.baidu.com)翻译成 IP 地址(如 183.232.231.172)。
  • 常用的公共 DNS:8.8.8.8(Google)、114.114.114.114(国内通用)。
Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐