win10 wsl2网络配置解决方案(mirrored 镜像网络)

曾经尝试过升级win11,但是我这台r5-5600g的机器,经常卡死,所以就退回win10了。本来就是因为新出的镜像网络功能二打算升级的。

因为之前的wsl的ip每次都会变动,用起来感觉很难受。所以我一直没有用wsl开发。

最近在win10上体验了镜像网络,发现以前的问题大部分都可以解决了。

需要先把wsl升级到最新2.x版本才能使用

css 复制代码
wsl --update --preview

下面是现在wsl的配置 这个文件在%ALLUSERSPROFILE%目录下,也就是你的用户目录下创建.wslcon fig,就可以对wsl进行配置,配置完了执行wsl --shutdown,关闭wsl,然后重新启动,启动时就会读取到配置

ini 复制代码
[wsl2]
memory=20GB                   #限制最大内存
processors=8                  #限制线程数
localhostforwarding=true
nestedVirtualization=true
guiApplications=true


[experimental]
autoMemoryReclaim=gradual  # gradual  | dropcache | disabled
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true
# 使用稀疏vhd减少空间占用
sparseVhd=true

# [boot]
# command="service redis-server start"

[network]
# 取消自动生成dns文件,
# 默认生成的dns server是本地ip,那样实测走不了clash
# 这里关掉,然后在/ect/resolv.conf设置google dns 8.8.8.8
generateResolvConf = false

这样设置以后,windows上可以通过localhost访问到wsl内开启的应用。

DNS设置

默认的DNS是指向本机的,但是因为各种原因,导致你的代理配置失效 所以,所以要修改这个配置 sudo vi resolv.conf

复制代码
nameserver 8.8.8.8

wsl访问windows的问题

就是wsl下无法通过localhost访问到windows上的服务,比如你在windows上开了一个postgresql,然后wsl里面访问不到。

这个暂时不知道怎么解决,用局域网地址之类的都试了,发现也不能连接到,访问外部网址倒是没问题,比如curl www.baidu.com

不过我最后发现是虚惊一场, 虽然无法通过localhost来访问,但是通过局域网ip来访问还是可以的。 因为我的postgresql没有配置局域网访问才产生了这个问题。

修改一下配置文件就可以了。也不需要重启pgsql就能生效。 C:\Program Files\PostgreSQL\16\data\pg_hba.conf

css 复制代码
host all all 0.0.0.0/0 scram-sha-256

这样我们可以通过修改hosts文件,把localhost转发到局域网的ip地址,就能正常启动这个项目了。

bash 复制代码
sudo gedit /etc/hosts

把localhost的映射替换掉。。。

复制代码
你的局域网IP   localhost
相关推荐
实心儿儿28 分钟前
Linux —— 传输层协议TCP
linux·服务器·tcp/ip
祖力5540 分钟前
Linux应用软件编程:目录IO与framebuffer
linux·运维·算法·framebuffer·目录io
词却1 小时前
Linux基础:常用基本命令与软件包管理
linux
2401_890603402 小时前
Linux 进程控制
linux·运维·服务器
啦啦啦啦啦zzzz3 小时前
时间轮定时器
linux·服务器·网络·c++·定时器
神威难绷泪3 小时前
Linux应用软件编程:目录IO framebuffer
linux
byte轻骑兵3 小时前
【BlueZ 】BLE 与经典蓝牙的差异:BlueZ 中双模式的源码区分设计
linux·bluez·电脑蓝牙·嵌入式蓝牙
小雪崩4 小时前
嵌入式学习 day30:minilog
linux·c语言·学习
嵌入式小能手4 小时前
飞凌嵌入式ElfBoard-Shell脚本编写基础-传参-$0
linux
丰锋ff4 小时前
初识Linux操作系统
linux·运维·服务器