wsl2 无法上网解决方法

基本情况:

wsl2子系统,无法上网。子系统网络信息:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.99.213 netmask 255.255.240.0 broadcast 192.168.111.255

inet6 fe80::215:5dff:fe84:cd22 prefixlen 64 scopeid 0x20<link>

ether 00:15:5d:84:cd:22 txqueuelen 1000 (Ethernet)

RX packets 215 bytes 33333 (33.3 KB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 47 bytes 3480 (3.4 KB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

windows wsl网卡信息:

以太网适配器 vEthernet (WSL):

连接特定的 DNS 后缀 . . . . . . . :

描述. . . . . . . . . . . . . . . : Hyper-V Virtual Ethernet Adapter #6

物理地址. . . . . . . . . . . . . : 00-15-5D-24-F5-79

DHCP 已启用 . . . . . . . . . . . : 否

自动配置已启用. . . . . . . . . . : 是

本地链接 IPv6 地址. . . . . . . . : fe80::ed96:bc12:16b8:67ba%274(首选)

IPv4 地址 . . . . . . . . . . . . : 192.168.96.1(首选)

子网掩码 . . . . . . . . . . . . : 255.255.240.0

默认网关. . . . . . . . . . . . . :

DHCPv6 IAID . . . . . . . . . . . : 301995357

DHCPv6 客户端 DUID . . . . . . . : 00-01-00-01-25-2F-0F-EB-80-FA-5B-72-5C-8E

DNS 服务器 . . . . . . . . . . . : fec0:0:0:ffff::1%1

fec0:0:0:ffff::2%1

fec0:0:0:ffff::3%1

TCPIP 上的 NetBIOS . . . . . . . : 已启用

192.168.99.213与192.168.96.1相互能访问,但是wsl2子系统就是上不了网。

宿主机能上网。

Get-NetNat 是 PowerShell 中的一个命令,用于获取有关网络地址转换(NAT)配置的信息。这个命令是 NetNat 模块的一部分,用于管理 Windows 上的 NAT 规则和设置。以下是 Get-NetNat 命令的一些主要用途:

主要用途

  1. 查看现有的 NAT 配置

    • 你可以使用 Get-NetNat 命令查看系统上配置的所有 NAT 规则。它会列出 NAT 名称、外部和内部 IP 地址前缀、超时设置等信息。
  2. 诊断网络问题

    • 如果你的网络配置出现问题,Get-NetNat 可以帮助你确认是否有相关的 NAT 规则配置,或者是否需要更新 NAT 规则。
  3. 管理 NAT 规则

    • 了解当前的 NAT 配置是管理和修改 NAT 规则的第一步。通过查看现有的 NAT 配置,你可以决定是否需要添加、删除或修改 NAT 规则。

PS C:\Users\deng_2020> Get-NetNat

Name : WSLNat

ExternalIPInterfaceAddressPrefix :

InternalIPInterfaceAddressPrefix : 192.168.0.0/24

IcmpQueryTimeout : 30

TcpEstablishedConnectionTimeout : 1800

TcpTransientConnectionTimeout : 120

TcpFilteringBehavior : AddressDependentFiltering

UdpFilteringBehavior : AddressDependentFiltering

UdpIdleSessionTimeout : 120

UdpInboundRefresh : False

Store : Local

Active : True

"InternalIPInterfaceAddressPrefix : 192.168.0.0/24"这地方不对。

执行下面的命令:

Remove-NetNat -Name "WSL"

New-NetNat -Name "WSLNetworkNat" -InternalIPInterfaceAddressPrefix "192.168.96.0/20"

Restart-Service -Name "lanmanworkstation" -Force

故障解除。

相关推荐
码割机18 小时前
Linux服务器安装jdk和maven详解
java·linux·maven
冴羽18 小时前
JavaScript 异步循环踩坑指南
前端·javascript·node.js
jump68018 小时前
commonjs 和 ES Module
前端
亚林瓜子19 小时前
在amazon linux 2023上面源码手动安装tesseract5.5.1
linux·运维·服务器·ocr·aws·ec2
FreeBuf_19 小时前
研究人员披露 Windows SMB 服务器权限提升漏洞(CVE-2025-58726)
运维·服务器·windows
旧曲重听119 小时前
前端需要掌握多少Node.js?
前端·node.js
Mr.Jessy19 小时前
Web APIs 学习第四天:DOM事件进阶
开发语言·前端·javascript·学习·ecmascript
云枫晖19 小时前
前端工程化实战:手把手教你构建项目脚手架
前端·前端工程化
醉方休19 小时前
开发一个完整的Electron应用程序
前端·javascript·electron
故作春风19 小时前
手把手实现一个前端 AI 编程助手:从 MCP 思想到 VS Code 插件实战
前端·人工智能