WSL 突然断网,无法 ping 内网或外网

WSL 突然断网,无法 ping 内网或外网

WSL 中网络突然不可用时,内网地址和公网地址都可能 ping 不通,但 Windows 宿主机本身仍然可以正常联网。这类问题有时来自 WSL2 虚拟网络状态异常或 Windows Winsock 配置损坏,可以先关闭 WSL,再重置 Windows 的网络套接字配置。

解决方案

执行前先保存 WSL 中正在运行的工作,并关闭依赖 WSL 网络的服务。下面的命令需要在 Windows 的管理员身份 PowerShell 或命令提示符中执行,不要在 WSL Shell 中执行。

  1. 关闭所有 WSL 实例:

    powershell 复制代码
    wsl --shutdown
  2. 重置 Windows Winsock 网络套接字目录:

    powershell 复制代码
    netsh winsock reset

    wsl --shutdown 用于停止 WSL2 虚拟机环境,真正重置 Windows Socket 配置的是 netsh winsock reset。

  3. 如果命令提示需要重启计算机,请先重启 Windows。若没有要求重启,可以重新打开 WSL:

    powershell 复制代码
    wsl
  4. 重新进入 WSL 后,分别测试内网地址和公网地址,确认网络是否恢复:

    bash 复制代码
    ping -c 4 <内网地址>
    ping -c 4 8.8.8.8

重置完成后,WSL 的虚拟网络通常会恢复,内网和外网连接也可以重新使用。若仍然无法联网,再继续检查 DNS 配置、Windows 防火墙、VPN 或代理软件对 WSL 虚拟网卡的影响。

参考:Microsoft Learn:netsh winsock

相关推荐
律宏阔1 小时前
WSL Docker 端口明明空闲,但就是绑不上端口
linux·windows
律宏阔1 小时前
Windows 禁用联想笔记本所有 Lenovo 后台服务
windows
穷人小水滴1 小时前
用容器编译 VirtualBox 虚拟机软件 (ArchLinux, podman)
linux·容器·virtualbox
乱码三千1 小时前
如何优雅地直连无公网 IP 的远程 GPU 服务器
linux·人工智能·程序员
yunwei371 小时前
使用 eBPF 跟踪 Nginx 请求
linux·后端·性能优化
yunwei371 小时前
使用 eBPF 跟踪 MySQL 查询
linux·后端·性能优化
yunwei371 小时前
eBPF 示例教程:使用 XDP 捕获 TCP 信息
linux·后端·性能优化
GeW1 小时前
制造业高端化,为什么必须重估Linux和数据库?
linux
GeW2 小时前
工业场景中的Linux与数据库选型:高端化转型的技术底座
linux