参考:

https://zhuanlan.zhihu.com/p/586283483

https://www.cnblogs.com/lidabo/p/16855975.html

==========================================

根据https://zhuanlan.zhihu.com/p/586283483中的表述有:

本文主要给出windows主机的端口转发、开启windows防火墙端口规则。

-------------------------------------------------------------------------

windows主机的端口转发(创建)

使用Windows自带网络工具‘netsh’,以管理员权限启动PowerShell,输入以下命令:

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=2222 connectaddress=172.28.201.129 connectport=22

windows宿主机暴露给局域网的端口为2222,并将发送给2222端口的信息转发给WSL Ubuntu(172.20.201.129)的22端口。

 
 
 
 
windows主机的端口转发(删除
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=2222
 
 

查看windows宿主机端口转发情况:

netsh interface portproxy show all

开启windows防火墙端口规则

管理员权限运行PowerShell,输入命令:(防火墙开放宿主机windows的2222端口)

netsh advfirewall firewall add rule name=WSL2 dir=in action=allow protocol=TCP localport=2222

============================================

成功解决端口转发,实现局域网对WSL Ubuntu的访问:

------------------------------------------------------

================================================

为了是宿主机上WSL中的Ubuntu可以被局域网中其他主机通过ssh访问,我们也可以在宿主机上使用ssh端口映射的方式将WSL主机暴露给局域网。在WSL启动后,宿主机上对127.0.0.1地址下端口进行访问,如果此时宿主机上没有监听该端口那么对该端口的访问会转发(net转换方式)给WSL下的ubuntu,因此在宿主机上可以通过ssh devil@127.0.0.1 -p 22的方式直接访问WSL下的Ubuntu(ubuntu需要安装openssh-server)。我们在宿主机上使用ssh端口映射的方式可以把对0.0.0.0的IP地址下某端口的访问映射给127.0.0.1下某个端口,要注意局域网主机可以通过宿主机IP(宿主机监听IP为0.0.0.0)来对宿主机进行通信,但是不能通过127.0.0.1来访问局域网下的宿主机(127.0.0.1只能在本机上进行访问)。

给出ssh端口映射命令:

ssh -N -L   0.0.0.0:8888:127.0.0.1:22   devil@127.0.0.1 -p 22

该命令在宿主机上执行,该命令执行后进入阻塞状态,因此执行该命令的窗口不能关闭。

-------------------------------------------------

0.0.0.0:8888

代表将监听宿主机的对外IP地址下的8888号端口,如果宿主机有多个网卡和IP,这里可以将0.0.0.0替换为某个网卡上的具体IP大致;

127.0.0.1:22

代表要把信息映射给的IP及端口;

ssh -N -L   0.0.0.0:8888:127.0.0.1:22

代表着把对本机8888号端口的访问信息转发给127.0.0.1地址的22端口(将0.0.0.0:8888映射为127.0.0.1:22);

ssh -N -L   0.0.0.0:8888:192.168.11.242:80

代表把对本地8888号端口访问的信息转发给192.168.11.242下的80端口(将0.0.0.0:8888映射为192.168.11.242:80),该种映射一般用于把本地的web服务(只监听本地127.0.0.1下端口的web服务映射为局域网可以访问的IP地址下的端口);

devil@127.0.0.1 -p 22

代表端口映射的目标主机的ssh登录的配置,这里wsl下ubuntu的ssh端口为22;

效果:

ssh端口映射:

端口映射成功后局域网内主机可以成功访问WSL下的Ubuntu:

==================================================

使用SSH连接局域网内的WSL Ubuntu的更多相关文章

  1. 使用apt-mirror建立局域网内的Debian/Ubuntu源镜像

    转:http://forum.ubuntu.org.cn/viewtopic.php?t=41791 第一次翻译,翻译得不好还请大家见谅,多多指出错误~!:) 原文可以见如下的贴子:http://fo ...

  2. 如何使用 SSH 连接 VMWare 虚拟机中的 Ubuntu

    环境:VMWare Player 5.0.2,Ubuntu 13.10  VMWare共有3种网络连接模式,分别是: 1. bridged(桥接模式):虚拟机将直接连接到物理局域网,使自身独立于宿主机 ...

  3. 2018.2.10 使用SSH连接远程滴滴云服务器Ubuntu (Windows下) 及 putty工具永久设置字体、颜色

    一开始会有人问云服务器是什么? 云服务器是一种类似VPS服务器的虚拟化技术, VPS是采用虚拟软件,VZ或VM在一台服务器上虚拟出多个类似独立服务器的部分,每个部分都可以做单独的操作系统,管理方法同服 ...

  4. Windows远程连接局域网内或同一个网段或同一个路由器的某台机器

    http://bbs.shendu.com/thread-1443245-1-1.html     亲自试验,具体操作如下:    我现在有三台机器和对应的ip地址(ip地址自己手动填写,不会网上搜) ...

  5. c++ 远程连接局域网内 数据库,并进行操作

    首先尝试利用Windows自带的dos命令窗口操作数据库:参考见https://jingyan.baidu.com/article/3aed632e19b5e8701080918f.html 1.搜索 ...

  6. ssh 连接很慢的解决办法

    http://blog.csdn.net/ablo_zhou/article/details/5074887 ============= 现象: 在局域网内,能ping通目标机器,并且时延是微秒级. ...

  7. win7 64 位操作系统,进程System,PID为4,扫描连接局域网ip地址的139和445端口

    偶然发现电脑的System进程不间断扫描连接局域网内的其它IP对应的445和139端口,这是个问题. 上网搜索,立即关闭139端口的监听. 方法如下: 本地连接属性-TCP/IP属性-高级-WINS选 ...

  8. 局域网内使用ssh连接两台计算机总结

    因为家里有两台电脑,一个centos7 系统,一个Mac,都是笔记本,感觉两个拿来拿去的用太麻烦了,所以就想用ssh连接cenots7 的电脑,这样就没那么麻烦了.欢迎大家指正 配置静态ip cent ...

  9. 一次在局域网中ssh连接的尝试

    最近到手一台二手HP笔记本.卖我本子的是以为很漂亮的服装设计师,她因为有了一台新的Mac本所以HP本就闲置了,于是就卖给了我.本子性能跟我自己的三星本差不多,除了电池不太给力,每次开机都会提示601. ...

  10. 局域网如何通过SSH连接虚拟机装的centOS系统

    首先,在一个局域网内的一台机器上装了虚拟机,虚拟机上装了centos系统: 但是,只有本机能连接centos,其他电脑都连不上: ping了一下发现不通,然后排查原因. 我发现局域网内的机器IP都是: ...

随机推荐

  1. CloseableHttpClient设置超时时间demo 未设置默认是2分钟

    # CloseableHttpClient设置超时时间demo 未设置默认是2分钟 import org.apache.http.HttpHeaders; import org.apache.http ...

  2. 有点儿神奇,原来vue3的setup语法糖中组件无需注册因为这个

    前言 众所周知,在vue2的时候使用一个vue组件要么全局注册,要么局部注册.但是在setup语法糖中直接将组件import导入无需注册就可以使用,你知道这是为什么呢?注:本文中使用的vue版本为3. ...

  3. python重拾第五天-常用模块学习

    本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...

  4. Linux内核中的static-key机制

    # Linux内核中的static-key机制 背景 在移植某个TP时,发现频繁操作屏幕会导致i2c总线死掉.在跟踪代码的时候,我发现了这个static-key. 因此,学习一下这块的知识. refe ...

  5. 嵌入式工程师进阶,基于AM64x开发板的IPC多核开发案例分享

    前 言 本文档主要说明AM64x基于IPC的多核开发方法.默认使用AM6442进行测试演示,AM6412测试步骤与之类似. 适用开发环境如下: Windows开发环境:Windows 7 64bit. ...

  6. 【ClickHouse】0:clickhouse学习1之数据引擎(数据库引擎,表引擎)

    ClickHouse提供了大量的数据引擎,分为数据库引擎.表引擎,根据数据特点及使用场景选择合适的引擎至关重要,这里根据资料做一些总结. 数据库引擎官方文档: https://clickhouse.t ...

  7. Quarkus初体验:动态加载和原生部署

    在前面的文章<尝试官方的第一个SpringNative 0.11程序>中提到过Quarkus这门技术.这里就简单演示一下它的两个主要功能:Live Coding和Native Build. ...

  8. 实现ASP.Net Core3.1运行在DockeDesktop下并用Nginx实现负载均衡

    一.首先去https://docs.docker.com/get-docker/下载Windows版本的Docker Desktop并安装(需要win10专业版以上操作系统,并启用CPU虚拟化和安装H ...

  9. 洛谷P1176

    #include<iostream> #include<utility> using namespace std; typedef long long ll; #define ...

  10. Django导出EXCEL并确保表头左右两列显示

    以下是导出EXCEL确保表头左右两列显示正确值的代码示例: from openpyxl import Workbook from openpyxl.styles import Alignment # ...