使用rinetd端口映射软件访问Aliyun的Redis实例

By | 2018年2月13日

前不久买了个阿里云的redis服务,99元/年,由于使用的是VPC网络,和ECS在同一个网内,只能通过ECS和阿里云自带的数据管理来连接。

默认是不支持外网连接Redis实例的。

但是,我们可以通过端口映射工具,把redis的6379端口通过映射到ECS上的某个端口,比如也是6379,那我们就可以通过连接ECS的ip+6379端口访问Redis实例了。

需要用到的软件是rinetd,官网:https://boutell.com/rinetd/,安装很简单:

wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar -zxvf  rinetd.tar.gz
cd rinetd
#原rinetd.c文件中端口最大写成了65536,这里改成65535
sed -i 's/65536/65535/g' rinetd.c
#放置帮助文档
mkdir /usr/man
make
make install

安装完成后,写配置文件:

vim /etc/rinetd.conf

内容为:

 0.0.0.0 6379 Redis地址 6379
 logfile /var/log/rinetd.log

第一个6379代表ECS中对外提供服务的端口,可以改成其他未使用的端口,最后个是Redis实例的默认端口。

修改Redis地址为自己的Redis地址,格式一般为:

 r-uf6xxxxxxxxx.redis.rds.aliyuncs.com

保存完成后,就可以启动了:

rinetd

最后,通过本地的Redis管理工具测试下。