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
相关推荐
虾..3 小时前
Linux 软硬链接和动静态库
linux·运维·服务器
Evan芙4 小时前
Linux常见的日志服务管理的常见日志服务
linux·运维·服务器
hkhkhkhkh1235 小时前
Linux设备节点基础知识
linux·服务器·驱动开发
HZero.chen7 小时前
Linux字符串处理
linux·string
张童瑶7 小时前
Linux SSH隧道代理转发及多层转发
linux·运维·ssh
汪汪队立大功1237 小时前
什么是SELinux
linux
石小千7 小时前
Linux安装OpenProject
linux·运维
柏木乃一7 小时前
进程(2)进程概念与基本操作
linux·服务器·开发语言·性能优化·shell·进程
Lime-30907 小时前
制作Ubuntu 24.04-GPU服务器测试系统盘
linux·运维·ubuntu
百年渔翁_肯肯7 小时前
Linux 与 Unix 的核心区别(清晰对比版)
linux·运维·unix