You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从远程客户端连接Windows 10 WSL中的Redis服务?

WSL Ubuntu Redis 远程连接超时排查方案

1. 修正Redis绑定地址

你的Redis配置里bind设置的172.22.23.51 172.22.23.55既不是Windows主机IP(172.22.23.112),也不是WSL的IP(172.22.160.1),Redis只会监听配置中指定的IP,导致远程请求无法触达服务。

  • 修改redis.conf的bind字段:要么设为bind 0.0.0.0(允许监听所有网卡),要么明确绑定WSL和Windows主机的IP:bind 127.0.0.1 172.22.160.1 172.22.23.112
  • 重启Redis服务:sudo systemctl restart redis-server

2. 配置Windows到WSL的端口转发

WSL2采用NAT网络模式,默认不会将WSL内的端口暴露到Windows主机的公网网卡,需要手动添加端口转发规则:

  • 以管理员身份打开Windows命令提示符(CMD),执行:
    netsh interface portproxy add v4tov4 listenaddress=172.22.23.112 listenport=6379 connectaddress=172.22.160.1 connectport=6379
    
  • 验证转发规则是否生效:
    netsh interface portproxy show v4tov4
    
  • 注意:WSL重启后IP可能变动,若出现IP变化,需先删除旧规则再添加新规则:
    netsh interface portproxy delete v4tov4 listenaddress=旧WindowsIP listenport=6379
    

3. 验证Redis监听状态

在WSL Ubuntu中执行以下命令,确认Redis确实在监听6379端口,且监听地址包含0.0.0.0或你配置的正确IP:

ss -tulpn | grep 6379

正常输出应包含类似LISTEN 0 511 0.0.0.0:6379或指定绑定IP的监听记录。

4. 逐步测试连通性

  • 先在Windows主机上用Redis客户端连接WSL的IP:redis-cli -h 172.22.160.1 -p 6379,确认本地连通正常
  • 再在Windows主机上连接自身IP:redis-cli -h 172.22.23.112 -p 6379,验证端口转发生效
  • 最后用远程客户端连接Windows主机IP(172.22.23.112:6379),测试远程连通性

5. 额外注意事项

  • WSL2的IP地址每次重启可能变更,若不想手动重复配置转发规则,可以编写脚本自动获取WSL IP并更新端口转发
  • 确认你的网络环境中没有其他设备(如路由器)的防火墙/端口过滤规则限制6379端口的访问

内容的提问来源于stack exchange,提问作者Andreas Zeiner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 02:01:29