VMware 虚拟机无法上网问题排查

VMware 虚拟机无法上网问题排查

VMware 虚拟机无法上网问题排查

一、问题现象:未能正常获取IP地址

bash 复制代码
ifconfig

输出类似:

bash 复制代码
ens33: flags=4099<UP,BROADCAST,MULTICAST>
RX packets 0
TX packets 0

特征:

  • 网卡是 UP 状态
  • 没有 inet xxx.xxx.xxx.xxx
  • 没有数据收发
  • 无法上网

二、使用 NAT 模式

复制代码
虚拟机 → 设置 → 网络适配器 → 选择 NAT

三、发现关键问题:双 IP 冲突

查看 IP:ip addr

发现:

复制代码
192.168.31.9        ← 桥接残留
192.168.211.128     ← NAT DHCP

说明:

Linux 里保留了静态 IP 和静态默认路由

导致路由冲突


四、删除临时冲突 IP 和路由

删除错误 IP:

bash 复制代码
sudo ip addr del 192.168.31.9/24 dev ens33

删除错误默认路由:

bash 复制代码
sudo ip route del default via 192.168.31.106

执行ip route,发现静态IP地址仍然存在


五、根本原因:netplan 静态配置写死

执行ls /etc/netplan,输出01-network-manager-all.yaml

查看yaml配置文件内容:

bash 复制代码
sudo cnmod 777  /etc/netplan/01-network-manager-all.yaml
gedit /etc/netplan/01-network-manager-all.yaml
yaml 复制代码
dhcp4: no
addresses: [192.168.31.9/24]
gateway4: 192.168.31.106

说明:

192.168.31.9 这个旧地址是被 netplan 静态配置写死的

这就是问题根源。


六、永久修复方法

将 netplan 修改为 DHCP 自动获取。

yaml 复制代码
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    ens33:
      dhcp4: true
      optional: true

应用配置:

bash 复制代码
sudo netplan apply

如果未自动获取 IP:

bash 复制代码
sudo systemctl restart NetworkManager
sudo dhclient ens33

七、最终正确状态

IP:ip addr

复制代码
inet 192.168.211.xxx

路由:ip route

复制代码
default via 192.168.211.2 dev ens33

八、核心经验总结

  1. 桥接 WiFi 容易失败,优先使用 NAT
  2. 切换网络模式后必须清理 netplan 静态配置
  3. 出现双 IP 基本是静态配置残留
  4. 路由冲突一定检查 ip route
  5. 永久解决必须修改 /etc/netplan/*.yaml
相关推荐
染予18 小时前
共阵面系统学习
网络·学习
heimeiyingwang18 小时前
【架构实战】服务注册与发现Nacos:微服务时代的“电话总机“
网络·架构
开开心心_Every18 小时前
进程启动瞬间暂停工具,适合调试多开
运维·服务器·gitee·pdf·开源·电脑·excel
进击切图仔18 小时前
linux 终端通过命令使用 cursor
linux·运维·服务器
坚持就完事了18 小时前
$在Linux中的作用
linux·运维·服务器
xixixi7777718 小时前
《从心理诱导突破Claude到AI仿冒直播首张拘留单:AI安全、监管与商用的三重转折点》
大数据·网络·人工智能·安全·ai·大模型·风险
山人在山上18 小时前
arcgis server 暴力迁移
运维·服务器·arcgis
鬼蛟18 小时前
Elasticsearch全文检索服务器
服务器·elasticsearch·全文检索
久绊A19 小时前
Copy Fail Linux内核提权漏洞(CVE-2026-31431)
linux·运维·服务器
源远流长jerry19 小时前
TCP 连接队列解析:从 listen () 到 connect ()
linux·服务器·网络·网络协议·tcp/ip