V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zxCoder
V2EX  ›  Windows

windows11 有没有对 wsl2 做改进啊

  •  
  •   zxCoder · 2021-07-07 09:49:53 +08:00 · 4698 次点击
    这是一个创建于 1246 天前的主题,其中的信息可能已经有所发展或是发生改变。

    还是真就只换了个 UI ?

    现在 wsl2 至少我遇到的问题就是 localhost 访问时灵时不灵,有时得用 ip 才能访问,不知道是啥问题

    12 条回复    2023-03-14 19:41:51 +08:00
    hwdef
        1
    hwdef  
       2021-07-07 10:18:03 +08:00   ❤️ 5
    wslg 算是个重大改进吧
    mainjzb
        2
    mainjzb  
       2021-07-07 10:22:05 +08:00
    同 localhost 访问时灵时不灵。。。以及在 IEDA 里的 SSH 连 localhost 都用不了
    liuhan907
        3
    liuhan907  
       2021-07-07 12:08:35 +08:00
    一般 localhost 访问不灵的原因都是因为本机的这个端口已经被用掉了。
    runay
        4
    runay  
       2021-07-07 14:16:51 +08:00
    localhost 访问要确保 2 个点:
    1 host 上端口不要不占用;
    2 wsl 里,通过 netstat 看一下,确保“listen”的端口一定要在 tcp 上,不能只在 tcp6 上。比如 `docker run -p 8080:80` 时用 ip ( v4 )可访问,但在 host 上用 localhost 访问不了。 `docker run -p 127.0.0.1:8080:80` 用 localhost 就可以。
    nulIptr
        5
    nulIptr  
       2021-07-07 18:11:35 +08:00
    我倒是遇到一个问题,dbeaver 自己直接把 localhost 映射成 127.0.0.1 了,导致连不上 wsl2 内部的 mysql 。提了 issue 也没人搭理。。。
    interim
        6
    interim  
       2021-07-07 22:09:20 +08:00
    @runay 反对你的说法,WSL2 下 `docker run -p 8080:80`完全可以用 localhost 访问到(windows 10 1909 及以上)
    zxCoder
        7
    zxCoder  
    OP
       2021-07-07 22:13:27 +08:00
    @runay 我倒是觉得是有 bug 。。。有的时候就是莫名其妙就用不了 localhost 或者 127.0.0.1,本机一般不会开什么服务会用到这几个常用端口的,有时候重启个电脑,端口就用不了了
    yanyanlongxia
        8
    yanyanlongxia  
       2021-07-07 22:38:17 +08:00
    原本我也是 localhost 莫名奇妙地突然不灵,但是升了 Win11 后就突然好了,不知道是不是我个人的情况。
    感觉微软应该是改进了的。
    yanyanlongxia
        9
    yanyanlongxia  
       2021-07-07 22:39:04 +08:00
    毕竟想引进安卓不能不优化 wsl
    encro
        10
    encro  
       2021-07-07 22:49:10 +08:00
    @mainjzb
    @zxCoder
    @yanyanlongxia

    我以前也经常发生,需要手动 wsl --shutdown,后来升级 20h2 后看来好了。
    ikas
        11
    ikas  
       2021-07-08 15:54:08 +08:00
    win11 wsl2 升级到最新内核,然后安装最新本 n 卡驱动,已经直接支持 linux 直接调用显卡.gui 提升巨大..
    runay
        12
    runay  
       2023-03-14 19:41:51 +08:00
    @interim 不是说用`docker run -p 8080:80`完全不行,而是很多时候不知道出于什么原因,docker run -p xxxx:80 时,wsl 里*只*在 tcp6 上 listen 了 xxxx 。这种情况在 host 上是没法通过 localhost 访问的。 估计很多人说的时灵时不灵都是这个问题导致的。

    如果用 `docker run -p 127.0.0.1:xxxx:80` 一定能确保在 listen 在 ipv6 上。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5548 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 08:06 · PVG 16:06 · LAX 00:06 · JFK 03:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.