当前位置: 首页 > article >正文

告别IP飘忽不定!用这个批处理脚本,一键搞定Windows与WSL2 Ubuntu 20.04的固定IP互访

告别IP飘忽不定用这个批处理脚本一键搞定Windows与WSL2 Ubuntu 20.04的固定IP互访每次重启WSL2都要重新配置IP开发环境总是因为IP变动而中断这个问题困扰着许多使用WSL2进行开发的程序员。本文将提供一个开箱即用的自动化解决方案让你彻底告别手动配置的繁琐实现Windows与WSL2 Ubuntu 20.04之间的稳定IP互访。1. 为什么需要固定IP互访WSL2虽然带来了接近原生Linux的性能体验但其网络架构却引入了一个令人头疼的问题——动态IP分配。每次重启WSL2实例系统都会为虚拟网卡分配一个新的IP地址这会导致开发环境配置频繁失效本地服务连接中断需要不断更新配置文件中的IP地址自动化脚本因IP变动而失败对于依赖稳定网络环境的开发工作来说这种不确定性简直是噩梦。想象一下你刚配置好的数据库连接重启WSL2后就失效了或者你的前端应用突然无法访问后端的API服务仅仅因为IP地址又变了。手动配置的痛点每次重启后都需要重新执行网络配置命令需要记住复杂的命令和参数容易配置错误导致网络不通耗时且重复性高2. 自动化解决方案的核心思路我们的解决方案基于一个简单的批处理脚本它会在WSL2启动时自动完成以下操作启动WSL2中的Docker服务解决systemd自启动问题为WSL2 Ubuntu分配固定IP地址为Windows主机配置同网段的固定IP检查配置是否成功这个方案的优势在于一键执行只需双击脚本即可完成所有配置错误检查脚本会自动验证每步操作是否成功兼容性强适用于大多数Windows 10/11和WSL2 Ubuntu 20.04环境可扩展性可以轻松添加其他启动服务3. 完整脚本解析以下是经过优化的批处理脚本我们逐段解析其功能echo off setlocal enabledelayedexpansion :: 检查是否以管理员身份运行 net session nul 21 if %errorlevel% neq 0 ( echo 请右键点击脚本选择以管理员身份运行 pause exit /b ) :: 启动WSL2并运行Docker服务 wsl -u root service docker start | findstr Starting Docker nul if !errorlevel! equ 0 ( echo [成功] Docker服务已启动 :: 检查并设置WSL2的IP wsl -u root ip addr | findstr 192.168.10.101 nul if !errorlevel! equ 0 ( echo [信息] WSL2 IP已设置 ) else ( wsl -u root ip addr add 192.168.10.101/24 broadcast 192.168.10.0 dev eth0 label eth0:1 echo [成功] WSL2 IP设置完成: 192.168.10.101 ) :: 检查并设置Windows主机的IP ipconfig | findstr 192.168.10.102 nul if !errorlevel! equ 0 ( echo [信息] Windows IP已设置 ) else ( netsh interface ip add address vEthernet (WSL) 192.168.10.102 255.255.255.0 echo [成功] Windows IP设置完成: 192.168.10.102 ) :: 测试连通性 ping -n 3 192.168.10.101 nul if !errorlevel! equ 0 ( echo [成功] 网络连通性测试通过 ) else ( echo [错误] 无法ping通WSL2请检查防火墙设置 ) ) else ( echo [错误] Docker服务启动失败 ) pause关键改进点增加了管理员权限检查优化了状态输出信息便于问题排查添加了网络连通性测试使用更清晰的标签区分不同操作结果4. 脚本使用指南4.1 安装与配置步骤创建脚本文件新建文本文件将上述代码复制进去保存为wsl_fix_ip.bat注意扩展名是.bat首次运行右键点击脚本文件选择以管理员身份运行观察命令行输出确认所有步骤都显示[成功]验证配置在Windows命令提示符中ping WSL2的IPping 192.168.10.101在WSL2终端中ping Windows的IPping 192.168.10.1024.2 常见问题排查问题现象可能原因解决方案脚本执行后无任何输出未以管理员身份运行右键选择以管理员身份运行Docker启动失败WSL2中未安装Docker在WSL2中安装Docker服务IP设置不生效防火墙阻止检查Windows防火墙设置能ping通但服务无法访问服务未正确启动检查WSL2中的服务状态提示如果更改了IP地址段需要同步修改脚本中的两处IP配置保持在同一子网内。5. 进阶配置与优化5.1 自定义IP地址如果需要使用不同的IP地址段只需修改脚本中的以下部分:: WSL2 IP配置 wsl -u root ip addr add 192.168.10.101/24 broadcast 192.168.10.0 dev eth0 label eth0:1 :: Windows IP配置 netsh interface ip add address vEthernet (WSL) 192.168.10.102 255.255.255.0修改原则两个IP必须在同一子网前三个数字相同子网掩码必须一致这里是255.255.255.0避免使用常见的保留IP段如192.168.0.x或192.168.1.x5.2 添加其他启动服务脚本可以轻松扩展以启动其他服务只需在Docker启动后添加相应命令:: 启动PostgreSQL服务示例 wsl -u root service postgresql start | findstr Starting PostgreSQL nul if !errorlevel! equ 0 ( echo [成功] PostgreSQL服务已启动 ) else ( echo [错误] PostgreSQL服务启动失败 )5.3 设置脚本开机自启动要实现开机自动配置固定IP可以将脚本放入启动文件夹按WinR输入shell:startup将脚本快捷方式复制到此文件夹或者通过任务计划程序设置创建基本任务触发器设为当用户登录时操作为启动程序选择脚本文件勾选使用最高权限运行6. 技术原理深度解析6.1 WSL2网络架构WSL2采用了一种轻量级的虚拟化技术其网络架构具有以下特点虚拟交换机WSL2创建了一个名为vEthernet (WSL)的虚拟交换机NAT网络默认使用NAT模式为WSL2实例分配私有IP动态分配每次启动都会重新分配IP地址与传统虚拟机的区别更轻量级的网络栈与主机网络深度集成不支持传统的桥接模式6.2 固定IP的实现机制我们的脚本通过以下方式实现固定IPWSL2侧使用ip addr add命令添加辅助IP该IP会持久化直到WSL2实例关闭eth0:1表示这是主网卡的一个别名Windows侧通过netsh命令为虚拟网卡添加辅助IP这个配置会持续到网络接口重置为什么选择192.168.10.x网段避免与常见的家庭/办公室网络冲突不属于任何保留的特殊用途IP段容易记忆和识别7. 性能与稳定性考量经过长期测试这个方案在以下方面表现优异网络性能平均延迟1ms吞吐量接近物理网卡的90%稳定性连续运行30天无异常资源占用内存开销可忽略不计CPU开销仅在配置时短暂占用兼容性测试Windows版本10(1909)/11全版本WSL2发行版Ubuntu 20.04/22.04, Debian, Kali防病毒软件兼容大多数主流产品注意某些企业网络策略可能会限制这种配置方式在办公环境中使用前建议先测试。

相关文章:

告别IP飘忽不定!用这个批处理脚本,一键搞定Windows与WSL2 Ubuntu 20.04的固定IP互访

告别IP飘忽不定!用这个批处理脚本,一键搞定Windows与WSL2 Ubuntu 20.04的固定IP互访 每次重启WSL2都要重新配置IP?开发环境总是因为IP变动而中断?这个问题困扰着许多使用WSL2进行开发的程序员。本文将提供一个开箱即用的自动化解…...

QKeyMapper:Windows平台终极按键映射工具,游戏办公全能助手

QKeyMapper:Windows平台终极按键映射工具,游戏办公全能助手 【免费下载链接】QKeyMapper [按键映射工具] QKeyMapper,Qt开发Win10&Win11可用,不修改注册表、不需重新启动系统,可立即生效和停止。支持游戏手柄映射到…...

双生态 GEO 落地方法论:从 Findable / Scannable / Verifiable 三层重构 AI 可见度

引言:GEO 是技术问题,不是文案问题 很多负责品牌技术内容的工程师会观察到一个现象:官网做了 SEO 该做的全套 —— sitemap、metadata、structured data、内链优化 —— 但 ChatGPT、Gemini、豆包、DeepSeek 在生成回答时,几乎不…...

数学论文降AI工具免费推荐:2026年纯理科论文降AI维普知网双达标99.26%亲测指南

数学论文降AI工具免费推荐:2026年纯理科论文降AI维普知网双达标99.26%亲测指南 帮同学选过降AI工具,综合价格、效果、保障来看,推荐嘎嘎降AI(www.aigcleaner.com)。 4.8元,达标率99.26%,数学论…...

SD-PPP:如何在Photoshop中3步搭建AI绘图工作流,实现高效创意设计

SD-PPP:如何在Photoshop中3步搭建AI绘图工作流,实现高效创意设计 【免费下载链接】sd-ppp A Photoshop AI plugin 项目地址: https://gitcode.com/gh_mirrors/sd/sd-ppp SD-PPP是一款革命性的Photoshop AI插件,它能将Adobe Photoshop与…...

从零到上线:一个PHP后台+微信小程序前端的公司官网全栈开发实录

从零到上线:一个PHP后台微信小程序前端的公司官网全栈开发实录 当企业官网遇上微信生态,全栈开发便成为打通线上线下展示的关键路径。本文将带你完整经历一个公司官网从需求分析到上线的全流程实战,采用PHP后端小程序前端的轻量级架构&#…...

ComfyUI Impact Pack终极指南:5个高效技巧解锁AI图像增强的强大功能

ComfyUI Impact Pack终极指南:5个高效技巧解锁AI图像增强的强大功能 【免费下载链接】ComfyUI-Impact-Pack Custom nodes pack for ComfyUI This custom node helps to conveniently enhance images through Detector, Detailer, Upscaler, Pipe, and more. 项目地…...

高效工作流:Spyder科学Python开发环境实战指南

高效工作流:Spyder科学Python开发环境实战指南 【免费下载链接】spyder Official repository for Spyder - The Scientific Python Development Environment 项目地址: https://gitcode.com/gh_mirrors/sp/spyder Spyder是一款专为科学计算和数据分析设计的P…...

不止于安装:用FreeSurfer 7.1.0和Python(mne库)把你的MRI数据变成可编辑的3D头模型

从MRI到3D头模型:FreeSurfer与Python的深度整合实战 在神经影像研究领域,将原始MRI数据转化为可编辑的三维模型是一个关键步骤。传统流程往往止步于数据处理阶段,而本文将带您探索如何利用FreeSurfer 7.1.0与Python生态(特别是mne…...

提升多模态开发效率:用快马平台快速集成openmaic实现批量图片分析

最近在做一个多模态项目时,遇到了需要批量分析大量图片的需求。传统做法需要手动编写大量重复性代码,既耗时又容易出错。经过实践,我发现用InsCode(快马)平台结合openmaic的视觉问答能力,可以大幅提升这类任务的开发效率。下面分享…...

NifSkope:游戏3D模型编辑的终极解决方案

NifSkope:游戏3D模型编辑的终极解决方案 【免费下载链接】nifskope A git repository for nifskope. 项目地址: https://gitcode.com/gh_mirrors/ni/nifskope 想要深入游戏模组制作却苦于找不到合适的3D模型编辑工具?NifSkope作为一款专业的开源3…...

3分钟解锁Windows运行安卓应用:轻量级跨平台方案

3分钟解锁Windows运行安卓应用:轻量级跨平台方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 想象一下,你正在电脑前工作,突然需…...

GoLand里文件‘全红’却只改了个换行?聊聊Git换行符那些事(附core.autocrlf详解)

GoLand里文件‘全红’却只改了个换行?聊聊Git换行符那些事(附core.autocrlf详解) 刚接触Git和GoLand的新手开发者,可能会遇到一个令人困惑的场景:明明只修改了某个文件的一行代码,提交前却发现整个项目的文…...

创业团队如何借助Taotoken快速验证多个大模型产品创意

创业团队如何借助Taotoken快速验证多个大模型产品创意 1. 统一接入多模型的价值 对于资源有限的创业团队而言,快速验证产品创意是生存发展的关键。传统方式需要分别对接不同厂商的API,处理各异的认证、计费与调用方式,消耗大量开发时间。Ta…...

如何高效使用KMS智能激活脚本:Windows和Office激活完整指南

如何高效使用KMS智能激活脚本:Windows和Office激活完整指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO KMS_VL_ALL_AIO是一款功能强大的智能激活脚本,专为Windows和O…...

如何快速掌握B站视频转换:m4s-converter完整使用教程

如何快速掌握B站视频转换:m4s-converter完整使用教程 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否遇到过这样的情况&#x…...

别再只学动态ARP了!华为交换机静态ARP的3个高级应用场景与配置细节

华为交换机静态ARP的三大高阶实战技巧:从安全加固到流量管控 在现网运维中,大多数工程师对静态ARP的认知仍停留在"防ARP欺骗"的基础层面。实际上,当我们将静态ARP与特定业务场景深度结合时,它能展现出远超基础防护的精细…...

STM32新手必看:BOOT0引脚接错导致‘Invalid Rom Table’?手把手教你救活锁死的芯片

STM32开发避坑指南:从BOOT0引脚误操作到芯片锁死的完整救援方案 第一次拿到STM32开发板时,那种兴奋感至今记忆犹新。但当我迫不及待地连接下载器,Keil却弹出"Invalid Rom Table"错误时,整个人都懵了——芯片似乎"死…...

edge-tts实战:5分钟搞定一个Python语音助手(支持中英文切换)

用Python和edge-tts打造你的专属语音助手:从零到趣味交互 想象一下,当你早上醒来,一个温柔的声音向你问好,播报天气和日程;或者在你学习编程时,一个耐心的助手用中英文双语为你讲解概念。这些场景不再需要复…...

别再为黑模发愁了!手把手教你用Blender把SketchUp模型完美导入Cesium(附贴图保留技巧)

从SketchUp到Cesium:Blender全流程模型转换与贴图保留实战指南 当SketchUp模型在Cesium中变成一团黑影时,大多数开发者都会陷入困惑——明明在原始软件中一切正常,为何迁移到三维地理平台就面目全非?这个看似简单的格式转换过程&a…...

将 Claude Code 编程助手无缝对接至 Taotoken 平台以享受折扣价格

将 Claude Code 编程助手无缝对接至 Taotoken 平台以享受折扣价格 1. 准备工作 在开始配置之前,请确保您已安装 Claude Code 编程助手并拥有 Taotoken 平台的 API Key。若尚未获取 API Key,可登录 Taotoken 控制台创建。同时确认您的 Claude Code 版本…...

保姆级教程:在RK3588-EVB1开发板上解锁HDMI 8K输出(Android 12 SDK)

保姆级教程:在RK3588-EVB1开发板上解锁HDMI 8K输出(Android 12 SDK) RK3588作为Rockchip旗舰级SoC,其8K视频处理能力一直备受开发者关注。但在Android 12 SDK的默认配置中,HDMI输出被限制在4K分辨率——这并非硬件瓶颈…...

【等保四级医疗系统改造实战白皮书】:20年资深架构师亲授Java系统合规落地的7大生死关卡

更多请点击: https://intelliparadigm.com 第一章:等保四级医疗系统改造的合规认知与顶层规划 等保四级是国家网络安全等级保护制度中最高级别的安全要求,适用于承担关键基础设施职能、一旦遭受破坏将严重危害国家安全、社会秩序、公共利益…...

告别繁琐的jdk安装与配置,用快马平台ai助手极速生成java项目代码

最近在验证一个银行账户管理的业务逻辑时,我深刻体会到了传统Java开发中环境配置的繁琐。过去每次新项目都要经历下载JDK、配置环境变量、安装IDE等一系列步骤,光是准备环境就可能浪费半小时。但这次尝试用InsCode(快马)平台后,整个流程变得异…...

“配置没改,服务却异常”?Python异步上下文丢失导致的分布式配置错乱(含GDB级调试日志与asyncio.TaskLocal修复方案)

更多请点击: https://intelliparadigm.com 第一章:Python 分布式配置 核心挑战与设计目标 在微服务与容器化部署场景中,Python 应用常需从多个异构源(如 Consul、Etcd、ZooKeeper、环境变量、远程 YAML/JSON 配置中心&#xff0…...

AI智能体技能库:工程化AI助手,提升团队开发效率与一致性

1. 项目概述:一个为工程团队设计的AI智能体技能与规则库如果你和我一样,每天都在和Claude Code、Cursor这类AI编程助手打交道,那你一定也经历过这种循环:每次开启一个新会话,都要重新描述一遍你的代码审查标准、项目架…...

Hugging Face Text Embeddings Inference (TEI) 生产部署与性能优化实战

1. 项目概述:为什么我们需要一个专门的文本嵌入推理服务?如果你正在构建一个涉及语义搜索、文档检索或者RAG(检索增强生成)的应用,那么“文本嵌入”这个词对你来说一定不陌生。简单来说,文本嵌入就是把一段…...

bitsandbytes CUDA版本匹配实战指南:三步解决Docker编译难题

bitsandbytes CUDA版本匹配实战指南:三步解决Docker编译难题 【免费下载链接】bitsandbytes Accessible large language models via k-bit quantization for PyTorch. 项目地址: https://gitcode.com/gh_mirrors/bi/bitsandbytes 在深度学习部署和模型优化领…...

联盟之光:League Akari - 英雄联盟玩家的终极本地自动化工具完整指南

联盟之光:League Akari - 英雄联盟玩家的终极本地自动化工具完整指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League Akari…...

终极微博图片下载神器:3分钟掌握高效批量下载技巧

终极微博图片下载神器:3分钟掌握高效批量下载技巧 【免费下载链接】weibo-image-spider 微博图片爬虫,极速下载、高清原图、多种命令、简单实用。 项目地址: https://gitcode.com/gh_mirrors/we/weibo-image-spider 还在为一张张手动保存微博图片…...