
Could not connect to Redis at 192.168.137.132:6379: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
当出现 “Could not connect to Redis at 192.168.137.132:6379: No route to host” 错误,意味着客户端无法找到通往 Redis 服务器(IP 为 192.168.137.132,端口为 6379)的路由,这通常是由网络方面的问题引起的。下面为你详细分析可能的原因及对应的解决办法:
- 原因:虚拟机的网络可能没有正确连接到宿主机所在的网络环境,比如网络适配器配置错误或者网络线缆(虚拟层面)未正确连接。
- 解决办法
- 检查虚拟机的网络设置,确保网络适配器的连接模式(如桥接模式、NAT 模式等)配置正确。以 VMware 虚拟机为例,可在虚拟机设置中查看和修改网络适配器的相关配置。
- 尝试重新启动虚拟机的网络服务。在 Linux 虚拟机中,可以使用以下命令重启网络服务:
sudo systemctl restart NetworkManager
- 原因:在同一网络中,可能存在其他设备使用了相同的 IP 地址(192.168.137.132),导致路由混乱。
- 解决办法
- 在虚拟机中使用
ip addr show
命令确认当前虚拟机的 IP 地址是否为 192.168.137.132。
- 检查网络中的其他设备,确保没有设备使用相同的 IP 地址。可以通过路由器的管理界面查看已连接设备的 IP 分配情况。
- 原因:虚拟机的防火墙可能阻止了外部对 Redis 端口(6379)的访问,或者阻止了网络数据包的正常传输。
- 解决办法
- CentOS 系统(使用 firewalld 防火墙):
# 开放 6379 端口
sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
# 重新加载防火墙规则
sudo firewall-cmd --reload
# 允许 6379 端口的 TCP 连接
sudo ufw allow 6379/tcp
- 原因:宿主机的防火墙可能阻止了与虚拟机的网络通信。
- 解决办法
- 在 Windows 宿主机中,打开防火墙设置,在入站规则中添加允许访问 192.168.137.132 地址和 6379 端口的规则。
- 在 Linux 宿主机中,同样需要检查并开放相应的端口和 IP 访问权限。
- 原因:虚拟机的路由表可能配置错误,导致无法正确路由到目标 IP 地址。
- 解决办法
- 使用
route -n
命令查看虚拟机的路由表,确认默认网关和目标网络的路由配置是否正确。
- 如果路由表存在问题,可以使用
ip route add
或 ip route del
命令来添加或删除路由规则。例如,添加默认网关:
sudo ip route add default via <网关 IP 地址>
- 原因:Redis 服务可能没有正常启动,或者监听的 IP 地址和端口与客户端连接的不一致。
- 解决办法
sudo systemctl status redis
sudo systemctl start redis
- 打开 Redis 配置文件
/etc/redis/redis.conf
,确保 bind
配置项设置为 0.0.0.0
或者正确的监听 IP 地址,并且 port
配置项为 6379。修改完成后,重启 Redis 服务:
sudo systemctl restart redis
也可以使用config get命令查看当前Redis 运行的配置项
config get bind
config get protected-mode

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结