Redis访问配置问题

bind 问题

  1. 在bind中绑定多个ip地址可以使用空格分隔开
  2. 将bind的值配置为bind 0.0.0.0 或者 直接注释掉bind,则任何ip地址都能连接
  3. bind值 127.0.0.1 只有本地能访问
  4. 关于如下:
bind 127.0.0.1 ::1

实际就相当于空格分隔开,绑定了两个ip地址
一个是 ipv4本机回环,一个是 ipv6本地回环地址。二者都相当与 localhost,只能在本地访问

bind的作用

错误理解: 用来限制Redis服务器用来接收来自哪些服务器(IP地址)的Redis连接请求。即:只有在bind指定

的IP地址的计算机才可以访问这个Redis服务器。

正确理解: bind 绑定本机的ip地址。(本机网卡对应的ip地址,每一个网卡对应一个ip地址),而不是redis允许来自其他计算机的ip地址。

如果指定了bind,则说明只允许来自指定网卡的Redis请求。如果没有指定,就说明可以接受来自任意一个网卡的Redis请求。

例如:

如果redis服务器(本机)上有两个网卡,每一个网卡对应一个IP地址,例如IP1和IP2。(注意这个IP1和IP2都是本机的IP地址)。

我们的配置文件:bind IP1。 只有我们通过IP1来访问redis服务器,才允许连接Redis服务器,如果我们通过IP2来访问Redis服务器,就会连不上Redis。

ifconfig 查看本机网卡

即:bind用于指定本机网卡对应的IP地址。


ip 问题

redis 连接时ip问题,连接拒绝,原因:

(1)服务器上的redis bind只绑定了本地网卡 127.0.0.1,所以只有redis所在的服务器本身可以访问,远程不能访问。

(2)限制了只有指定主机可以连接redis。被限制了,所以无法连接redis。redis本身无法限制,可以通过防火墙或者阿里云安全组。

出现如下错误:

Connection refused: no further information

连接超时,是因为ip填写错误,也就是说并没有这个ip,请求不到这个ip 所以会超时

出现如下错误

connection timed out: /192.168.0.107:6379

密码问题

如果设置了密码

  1. 请求时密码为空会提示如下:
NOAUTH HELLO must be called with the client already authenticated, otherwise the HELLO AUTH <user> <pass> option can be used to authenticate the client and select the RESP protocol version at the same time
  1. 请求时密码错误会提示
WRONGPASS invalid username-password pair or user is disabled.
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐