WSL2 固定IP与局域网访问

简介: 该文档介绍了如何在新版WSL2中配置镜像模式网络,以实现WSL2 IP与主机相同的固定设置。然而,启用此模式后,Docker服务在本机上无法访问。作者分享了针对这个问题的解决方案,包括编辑`.wslconfig`文件开启镜像网络和调整Docker设置。具体步骤涉及更新WSL和Docker(docker-ce)的安装,以及修改`daemon.json`文件以允许本机和局域网访问Docker服务。

前言

  • 新版WSL2已经支持镜像模式网络 可以将WSL2的IP固定为与主机相同 镜像模式网络
  • 但是在启用后WSL2中Docker运行的服务本机无法访问 issues 10494
  • 结合上述issues给出自己的使用心得帮助大家避坑

环境

  • Win11 23H2win + r > winver
  • WSL 2.1.5.0win + r > cmd > wsl --version

步骤

  • 编辑wslconfig开启镜像网络 wsl-config
  • win + r 输入 %UserProfile% 新建 .wslconfig 建议内容如下
[wsl2]
memory=8GB #内存最大值
swap=8GB #虚拟内存最大值
processors=4 #cpu核最大值
networkingMode=mirrored # 开启镜像网络
dnsTunneling=true # 开启 DNS Tunneling
firewall=true # 开启 Windows 防火墙
autoProxy=true # 开启自动同步代理
[experimental]
sparseVhd=true # 开启自动释放 WSL2 虚拟硬盘空间
autoMemoryReclaim=gradual # 开启自动回收内存
hostAddressLoopback=true # 允许容器通过分配给主机的 IP 地址连接到主机
  • 开放防火墙 管理员权限打开PowerShell运行
Set-NetFirewallHyperVVMSetting -Name ‘{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}’ -DefaultInboundAction Allow
  • 重启WSL2之后本机和局域网即可通过本机IP访问WSL2中的服务

开启Docker并使其可访问

  • 按照官方步骤安装WSL2 install
  • 安装Docker(docker-ce)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
# 等待20s自动安装Docker
  • 编辑/etc/docker/daemon.json文件添加如下内容
{
  "iptables": false
}
  • 重启WSL2之后WSL2中Docker运行的服务本机和局域网内都可以访问到了
相关文章
|
虚拟化 Windows
解决Enable-WindowsOptionalFeature : 功能名称 Microsoft-Hyper-V 未知。
解决Enable-WindowsOptionalFeature : 功能名称 Microsoft-Hyper-V 未知。
4975 0
解决Enable-WindowsOptionalFeature : 功能名称 Microsoft-Hyper-V 未知。
|
7月前
|
人工智能 数据可视化 测试技术
玩转Ollama:命令行操作、上下文长度调优与模型导入全攻略
Ollama是轻量级本地大模型运行工具,零配置即可快速启动AI模型。本文详解三大核心:高频CLI命令(运行/管理/创建模型)、上下文长度(Context Length)调优技巧、多格式(GGUF/Safetensors)自定义模型导入与量化分享,新手跟做即上手。
|
网络虚拟化 虚拟化 Docker
记一次Windows端口占用问题排查
netstat命令排查不出的Windows端口占用问题的解决方案,附快速排查脚本
1340 0
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
7654 16
|
人工智能 Ubuntu 机器人
【ubuntu】手把手教你解决ubuntu报错openssh-server E: Sub-process /usr/bin/dpkg returned an error code (1)
【ubuntu】手把手教你解决ubuntu报错openssh-server E: Sub-process /usr/bin/dpkg returned an error code (1)
|
Linux 网络安全 开发工具
一个固定 WSL2 ip 的简单方法
本文介绍了如何在Win11 22H2及以上版本中让WSL与Windows共享IP,避免重启后IP变化带来的问题。只需在用户目录下创建`.wslconfig`文件,输入特定配置并重启WSL,即可实现IP一致,简化WSL网络设置。此外,还提供了一种在其他系统版本中通过Windows SSH连接WSL的替代方法。
6251 0
|
编解码 应用服务中间件 nginx
DemuxException: type = CodecUnsupported, info = Flv: Unsupported codec in video frame: 2
DemuxException: type = CodecUnsupported, info = Flv: Unsupported codec in video frame: 2
1672 0
|
JSON Cloud Native Java
解决Jackson解析JSON时出现的Illegal Character错误
解决Jackson解析JSON时出现的Illegal Character错误
2204 0
|
缓存 监控 持续交付