问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

WSL网络配置:让局域网中的其他主机访问WSL服务

创作时间:
作者:
@小白创作中心

WSL网络配置:让局域网中的其他主机访问WSL服务

引用
CSDN
1.
https://blog.csdn.net/m0_56442163/article/details/138601116

本文将详细介绍如何配置WSL(Windows Subsystem for Linux)网络,使得局域网中的其他主机能够访问WSL中的服务。文章将从查看WSL IP地址、配置端口转发规则、设置防火墙规则等方面进行讲解,并提供具体的命令示例。

查看WSL的IP地址

在WSL中打开终端,使用ifconfig命令查看WSL的IP地址。这个IP地址是WSL虚拟机在Linux网络中的地址,通常类似于172.28.128.1

在Windows主机上配置端口转发规则

为了使局域网中的其他主机能够访问WSL中的服务,需要在Windows主机上配置端口转发规则。以下是具体步骤:

  1. 以管理员身份运行PowerShell

  2. 添加端口转发规则:

    netsh interface portproxy add v4tov4 listenport=4000 listenaddress=0.0.0.0 connectport=8001 connectaddress=192.168.226.105
    

    这条命令的作用是将Windows主机的4000端口转发到WSL的8001端口。其中listenaddress设置为0.0.0.0表示监听所有网络接口,connectaddress是WSL的IP地址。

  3. 删除端口转发规则:

    netsh interface portproxy delete v4tov4 listenport=4000 listenaddress=0.0.0.0
    

配置防火墙规则

为了确保端口转发规则能够生效,需要配置Windows防火墙规则:

  1. 最简单暴力的方式:直接关闭Windows防火墙。但是这种方式安全性较低,不推荐使用。

  2. 推荐方式:配置防火墙的入站规则,允许特定端口通过防火墙。具体步骤如下:

  • 打开Windows防火墙高级设置
  • 创建新的入站规则,允许4000端口(或其他你配置的端口)通过防火墙

验证端口转发规则是否生效

  1. 打开PowerShell,输入以下命令查看已配置的端口转发规则:

    netsh interface portproxy show all
    
  2. 使用netstat命令检查端口监听状态:

    netstat -a -n -p tcp
    

    确认4000端口(或其他配置的端口)正在监听。

注意事项

如果端口转发规则没有生效,可能需要重启以下服务:

  1. 打开运行窗口(Win+R),输入services.msc打开服务管理器
  2. 重启以下两个服务:
  • Remote Procedure Call (RPC)

  • Remote Procedure Call (RPC) Locator

通过以上步骤,你应该能够成功配置WSL网络,使得局域网中的其他主机能够访问WSL中的服务。如果遇到问题,建议检查每一步的配置是否正确,特别是IP地址和端口号是否匹配。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号