公网通过代理访问阿里云vpc redis
前提条件
如果您需要从本地 PC 端访问 Redis 实例进行数据操作,可以通过在 ECS 上配置端口映射或者端口转发实现。但必须符合以下前提条件:
-
若 Redis 实例属于专有网络(VPC),ECS 必须与 Redis 实例属于同一个 VPC。
-
若 Redis 实例属于经典网络,ECS 必须与 Redis 实例属于同一节点(地域)。
-
若 Redis 实例开启了 IP 白名单,必须将 ECS 的内网地址加入白名单列表内。
ECS Linux 篇
目前云数据库 Redis 版需要通过 ECS 进行内网连接访问。如果您本地需要通过公网访问云数据库 Redis,可以在 ECS Linux 云服务器中安装 rinetd 进行转发实现。
-
在云服务器 ECS Linux 中安装 rinetd。
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetd
sed -i 's/65536/65535/g' rinetd.c (修改端口范围)
mkdir /usr/man&&make&&make install
注意:rinetd 安装包下载地址不确保下载可用性,您可以自行搜索安装包进行下载使用。
-
打开配置文件 rinetd.conf。
vi /etc/rinetd.conf
-
在配置文件中输入如下内容:
0.0.0.0 6379 Redis 的链接地址 6379
logfile /var/log/rinetd.log
说明:您可以使用
cat /etc/rinetd.conf
命令来检验配置文件是否修改正确。 -
执行如下命令启动 rinetd。
rinetd
注意
-
您可以通过
echo rinetd >>/etc/rc.local
将 rinetd 设置为自启动。 -
若遇到绑定报错,可以执行
pkill rinetd
结束进程,再执行rinetd
启动进程 rinetd。 -
rinetd 正常启动后, 执行
netstat -anp | grep 6379
确认服务是否正常运行。
-
在本地进行验证测试。
-
您可以在本地通过 redis-cli 连接 ECS Linux 服务器后进行登录验证,比如安装了 rinetd 的服务器的 IP 是 1.1.1.1,即
redis-cli -h 1.1.1.1 -a Redis的实例ID:Redis密码
。或者通过 telent 连接 ECS Linux 服务器后进行操作验证。假设 ECS Linux 服务器的 IP 是 1.1.1.1,即telnet 1.1.1.1 6379
。 -
连接上 ECS Linux 服务器后,输入连接 Redis 的密码:
auth Redis的连接密码
。 -
进行数据写入及查询验证。
-
通过上述步骤即可实现:您本地的 PC 或服务器通过公网连接 ECS Linux 6379 端口,对云数据库 Redis 进行访问。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端