Redis启动报错

伍陆柒 180 2022-04-10

记录一次Redis启动报错

Cannot assign requested address

今天采用自定义conf启动redis,产生了如上错误,记录问题

由于我在redis.conf中,bind了不止一个IP地址,默认127和服务器公网地址

查看启动日志如下:

提示监听x.x.x.x地址的6379端口错误,无法分配请求地址!

原因:绑定公网IP失败

当我尝试绑定公网IP时候,redis启动报上面的错误

然而绑定内网地址172.26.57.2X之类的却能成功

当我使用命令查看本机网卡地址:ifconfig

并没有查到我的公网IP地址,于是乎想到了一种可能:阿里云服务器的公网IP地址并不是实际的IP地址,可能存在一个公网IP多个主机共享(NAT),主机自己是无法通过ifconfig命令看到的

事实上官方的说明也证实了这一点,普遍使用的是弹性公网IP,类似于路由器通过一个出口IP实现子网内所有设备对网络的访问。

这儿贴一篇文章:阿里云服务器是如何实现每台服务器都是公网I的呢?

总结:

这次错误是由于IP地址问题而引起的,去掉了所谓的公网IP后之后就能成功启动了

跟我之前遇到的本地连不上服务器Mysql数据库,有待继续考证

相关资料:

redis只接受来自bind地址中的连接

默认是127.0.0.1本机回环地址,只接受本地连接,无法通过远程连接,可以避免将redis暴露于网络中

如果bind字段留空的话,表示接受所有可用网络接口的连接(不是客户端IP地址,是服务器的网卡IP地址)

  • 绑定多个IP网口:
#vim myredis.conf

bind 127.0.0.1 121.xxx.xx.xx

通过127.0.01:6539 121.xxx.xx.xx:6539可以连接到redis

  • 配置密码
#vim myredis.conf

requirepass 123456789

# Redis