虚拟机网络无法连接

1. 检查虚拟机网络配置

  • 查看网络适配器设置

    • 确保虚拟机已启用网络连接(如NAT模式、桥接模式)。
    • 检查虚拟网络编辑器(如VMware的虚拟网络设置)是否正常配置。
  • 验证IP地址分配

    bash 复制代码
    ifconfig  # Linux/Mac
    ipconfig  # Windows
    • 若未获取到IP(如192.168.x.x),尝试重启网络服务:

      bash 复制代码
      sudo systemctl restart network-manager  # Ubuntu
      sudo service network restart           # CentOS

2. 检查宿主机网络

  • 宿主机网络状态

    • 确保宿主机可正常访问互联网(如ping 8.8.8.8)。
    • 若宿主机无网络,检查物理网卡、路由器或防火墙设置。
  • 虚拟网络服务状态

    • 对于VMware:确认VMware NAT ServiceVMware DHCP Service正在运行(Windows服务管理器)。
    • 对于VirtualBox:检查主机网络管理器中的虚拟网卡是否启用。

3. 排查防火墙与路由

  • 禁用防火墙临时测试

    bash 复制代码
    sudo ufw disable          # Ubuntu
    sudo systemctl stop firewalld  # CentOS
    • 若恢复连接,需配置防火墙规则放行流量。
  • 检查路由表

    bash 复制代码
    route -n
    • 确认默认网关(如0.0.0.0指向宿主机的网关地址)。

4. 重置虚拟网络

  • 重新生成网络配置

    • 在虚拟机软件中:
      1. 禁用再启用虚拟网卡。
      2. 重启虚拟机。
      3. 重置虚拟网络设置(如VMware的"还原默认设置")。
  • 手动分配IP(若DHCP失效):

    bash 复制代码
    sudo ifconfig eth0 192.168.1.10 netmask 255.255.255.0
    sudo route add default gw 192.168.1.1

5. 高级故障排除

  • 检查DNS解析

    bash 复制代码
    nslookup google.com
    • 若失败,编辑/etc/resolv.conf添加DNS服务器(如8.8.8.8)。
  • 抓包分析

    bash 复制代码
    sudo tcpdump -i eth0  # 检查是否有进出流量
    • 若无流量,可能为驱动问题(重装VMware ToolsVirtualBox增强功能)。

第一步(必做):重置 VMware 虚拟网络

关闭虚拟机

VMware 上方 → 编辑 → 虚拟网络编辑器

右下角 还原默认设置

等待完成,再开机虚拟机

第二步:虚拟机里重新获取 IP

开机后执行:

复制代码
sudo dhclient -r
sudo dhclient

然后查看 IP:

复制代码
ip addr

必须有 192.168.x.x 的地址

第三步:查看路由(关键)

复制代码
ip route

必须看到:

复制代码
default via 192.168.xxx.2 dev ...

没有这一行,就一定会报 Network is unreachable

如果还是没有路由,手动加

(把下面的网关改成你 NAT 网段的网关,一般是 192.168.182.2)

复制代码
sudo ip route add default via 192.168.182.2

然后再 ping:8.8.8.8

复制代码
┌───────────────────── 宿主机 (Windows/macOS) ──────────────────────┐
│                                                                   │
│  能上网 ← 物理网卡 (有线/WiFi)                                    │
│        ↑                                                          │
│  VMware NAT 服务 (虚拟路由器)                                      │
│        ↑                                                          │
│  虚拟网卡 VMnet8 (192.168.182.1)                                   │
└───────────────────┬───────────────────────────────────────────────┘
                    ↑
┌───────────────────┼──────────────────┐
│   虚拟机 (Linux)   │                  │
│                    ↓                  │
│  虚拟网卡 eth0/ens33                  │
│  IP: 192.168.182.xxx                 │
│  网关: 192.168.182.2  ←【你现在缺失这个】│
│  DNS: 223.5.5.5                      │
└───────────────────────────────────────┘

总结流程图

plaintext 复制代码
虚拟机IP配置 → 宿主机网络 → 防火墙/路由 → 重置虚拟网络 → DNS/驱动

若仍无法解决,尝试更换网络模式(如桥接改为NAT)或检查虚拟机软件版本兼容性。

相关推荐
码农学院32 分钟前
基于运维监控体系的网络品牌推广方案:从架构设计到技术实现
运维·网络
炸膛坦客7 小时前
单片机/C/C++八股:(二十六)IIC 专题(I²C)---- 上集
c语言·c++·单片机
旖-旎7 小时前
LeetCode 518:零钱兑换||(完全背包)—— 题解
c++·算法·leetcode·动态规划·背包问题
Henry Zhu1238 小时前
C++中的特殊成员函数与智能指针
c++
REDcker8 小时前
显示分辨率标准对照详解
前端·网络·分辨率·显示·屏幕
大模型码小白9 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
麻雀飞吧9 小时前
最新量化学习路径,交易认知和技术实现要并行
人工智能·python
ANSIOT10 小时前
安朔科技蓝牙无感开锁方案,靠近自动解锁
网络·科技·物联网
_wyt00110 小时前
多重背包问题详解
c++·背包dp
晏宁科技YaningAI10 小时前
VoIP系统的工程实现模型:从信令控制到媒体传输的完整架构解析
网络·人工智能·架构·系统架构·信息与通信