WSL2 ubuntu ip 自动同步 、静态ip(解决wsl2 ip 每次开机ip会变化的问题)

本文介绍了一种通过Python脚本解决WSL2IP不固定以及SSH服务自动开启的方法。在Windows端设置开机启动的Python服务器接收WSL2发送的IP,并更新到VSCodeRemoteSSH的配置文件中,同时WSL2的Ubuntu启动时会自动开启SSH服务并发送IP。此外,还涉及设置Windows防火墙、WSL2普通用户sudo免密登录等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

找到了更简单的办法,详情wsl2 ubuntu ip 自动同步到windows端的vscode remote ssh(wsl2 ubuntu 静态ip 固定ip)

如下内容仍然可行,不过比较麻烦。
————————————————————————————————————————————————————————

利用python脚本解决wsl2 ip不固定的问题

环境信息

​ wsl2 中linux版本:ubuntu

​ windows版本: win10/win11

问题描述

最近装了wsl2,使用vscode远程连接wsl2时遇到了如下问题:
1、wsl2的ip无法固定
2、wsl2的ssh服务不能自动开启。

尝试了网上许多方法,都不能解决,于是决定自己写python脚本解决。

如下方案可以自动将wsl2的ip同步到vscode remote ssh的config文件中,同时自动开启wsl2中的ssh服务。

不算很完美的方案,但至少每次开机不用手动开启wsl2中ubuntu的ssh服务,不需要设置vscode中remote ssh的config文件中ip地址了,还算比较方便。

方案概览

在windows端开机启动一个socket服务器,等待接受wsl2端发来ip。接受到ip后,将ip存储到remote ssh的config中。

wsl2在启动bash时默认开启socket客户端,将自己的ip发往windows端。

注意事项

1、remote ssh 的config文件中wsl2远程连接的配置中的ip地址必须在第二行,且HostName前是四个空格。如下图所示

2、每次打开一个wsl2中的ubuntu终端,都会自动同步一次,前提是windows端的脚本得一直运行着,不要关闭了。

需要解决如下几个问题。

1、需要在wsl2中ubuntu设置普通用户sudo时 免密登录。比如 sudo service ssh start 时,不需要输入密码
2、wsl2端ping不通windows,需要关闭windows防火墙或者设置防火墙规则。
3、windows端python脚本需要开机启动。
4、windows端、wsl2中的ubuntu都需要安装python3

好吧,下面正式开始操作!

开机启动windows端服务器脚本

首先需要在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup中增加一个bat脚本(wsl_ip.bat)

c:
cd C:\Users\82383\my_bat
python WSL_IP_windows.py

脚本解释:

  • c: 进入c盘

  • cd C:\Users\82383\my_bat 进入存放python脚本的目录,该目录可以自己选择,最好放在windows家目录中。

  • python WSL_IP_windows.py 运行windows端服务器脚本

注意 : 如下脚本仅仅需要修改config文件路径,详情请看注释!

# WSL_IP_windows.py

import socket               # 导入 socket 模块

# 如下设置为您的config文件路径即可,注意 \\ 转义字符。您只需要修改这里!
config_file = "C:\\Users\\82383\\.ssh\\config"

def get_ubuntu_ip():
    f = open(config_file,"r")
    lines = f.readlines()
    strip_line = lines[1].strip()
    split_list = strip_line.split()
    ubuntu_ip = split_list[1]
    print(ubuntu_ip)
    return ubuntu_ip, lines

def writefile
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值