# 欧拉系统(openEuler)无法访问公网排查与修复笔记
·
刚配置完欧拉系统,结果卡在网络设置环节了,记录一下排错过程
问题现象
在 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 show 无 default 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(国内通用)。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)