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

故障解除。

相关推荐
MacroZheng2 分钟前
横空出世!MyBatis-Plus 同款 ES ORM 框架,用起来够优雅!
java·后端·elasticsearch
Asort15 分钟前
JavaScript 从零开始(六):控制流语句详解——让代码拥有决策与重复能力
前端·javascript
无双_Joney33 分钟前
[更新迭代 - 1] Nestjs 在24年底更新了啥?(功能篇)
前端·后端·nestjs
在云端易逍遥35 分钟前
前端必学的 CSS Grid 布局体系
前端·css
ccnocare36 分钟前
选择文件夹路径
前端
艾小码37 分钟前
还在被超长列表卡到崩溃?3招搞定虚拟滚动,性能直接起飞!
前端·javascript·react.js
闰五月37 分钟前
JavaScript作用域与作用域链详解
前端·面试
泉城老铁41 分钟前
idea 优化卡顿
前端·后端·敏捷开发
前端康师傅41 分钟前
JavaScript 作用域常见问题及解决方案
前端·javascript