https://help.aliyun.com/document_detail/43850.html

ECS Windows 篇

目前云数据库 Redis 需要通过 ECS 的内网进行连接访问,如果您本地需要通过公网访问云数据库 Redis,可以在 ECS Windows 云服务器中通过 netsh 进行端口映射实现。

  1. 登录 ECS Windows 服务器,在 CMD 执行:

    1. netsh interface portproxy add v4tov4 listenaddress=ECS服务器的公网IP地址 listenport=6379 connectaddress=云数据库Redis的连接地址 connectport=6379

    其中:

    • netsh interface portproxy delete v4tov4 listenaddress=ECS公网服务器的公网IP地址 listenport=6379 可以删除不需要的映射。
    • netsh interface portproxy show all 可以查看当前服务器中存在的映射。
  2. 设置完成后进行验证测试。

    在本地 redis-cli 连接 ECS Windows 服务器后进行数据写入和查询验证,ECS Windows 服务器的 IP 是 1.1.1.1,即 telnet 1.1.1.1 6379。

通过上述步骤即可实现:您本地 PC 或服务器通过公网连接 ECS Windows 6379端口,对云数据库 Redis 进行访问。

注意:因 portproxy 由微软官方提供,未开源使用,您如果配置使用过程中遇到疑问,可参看 netsh 的 portproxy 使用说明或向微软官方咨询确认。或者您也可以考虑通过其他的方案实现,比如通过 portmap 配置代理映射。

ECS Linux 篇

目前云数据库 Redis 需要通过 ECS 的内网进行连接访问。如果您本地需要通过公网访问云数据库 Redis,可以在 ECS Linux 云服务器中安装 rinetd 进行转发实现。

  1. 在云服务器 ECS Linux 中安装 rinetd。

    1. wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetd
    2. sed -i 's/65536/65535/g' rinetd.c (修改端口范围)
    3. mkdir /usr/man&&make&&make install

    注意:rinetd 安装包下载地址不确保下载可用性,您可以自行搜索安装包进行下载使用。

  2. 创建配置文件。

    1. vi /etc/rinetd.conf
  3. 输入如下内容:

    1. 0.0.0.0 6379 Redis 的链接地址 6379
    2. logfile /var/log/rinetd.log

  4. 执行如下命令启动rinetd。

    1. rinetd

    注意

    • 通过 echo rinetd >>/etc/rc.local 可以设置为自启动。
    • 可以使用 pkill rinetd 结束该进程。
  5. 验证测试。

    在本地通过 redis-cli 连接 ECS Linux 服务器后进行登录验证,比如安装了 rinetd 的服务器的 IP 是 1.1.1.1:

    1. redis-cli -h 1.1.1.1 -a Redis 的实例ID:Redis密码

通过上述步骤即可实现:您本地的 PC 或服务器通过公网连接 ECS Linux 6379 端口,对云数据库 Redis 进行访问。

注意:您可以通过该方案进行测试使用,因 rinetd 为开源软件,如在使用过程中存在疑问,您可以参看其官方文档或与 rinetd 官方进行联系确认。

阿里云Redis公网连接的解决办法的更多相关文章

  1. 阿里云ECS连接阿里云Redis问题

    描述 项目之前的服务器使用Windows,Redis使用阿里云的云数据库Redis版,一切正常. 后来了更换了Linux,也配置好了Redis,但连接阿里云的Redis时却怎么也连接不上 原因 ECS ...

  2. 一份完整的阿里云 Redis 开发规范,值得收藏!

    来源:yq.aliyun.com/articles/531067 作者:付磊-起扬 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明. 键值设计 命令使用 客户端使用 相关工具 通 ...

  3. 阿里云Redis开发规范

    转自: https://yq.aliyun.com/articles/531067 摘要: 本文介绍了在使用阿里云Redis的开发规范,从键值设计.命令使用.客户端使用.相关工具等方面进行说明,通过本 ...

  4. Linux通过端口转发来访问内网服务(端口转发访问阿里云Redis数据库等服务)

    # 安装rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz& ...

  5. 阿里云Redis开发规范[转]

    一.键值设计 1. key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)[建议]:简洁性 ...

  6. 阿里云Windows远程连接出现身份验证错误,要求的函数不正确”的报错。

    最近很多阿里云用户在远程Windows Server的云服务器ECS时出现“身份验证错误,要求的函数不受支持”的报错. 这个问题解决起来非常简单,修改组策略中的一个配置就可以了. 在运行中输入gped ...

  7. 阿里云Redis开发规范(转)

    一.键值设计 1. key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video: (2)[建议]:简洁性 ...

  8. 阿里云Redis使用规范

    一.键值设计 1.key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)[建议]: 简洁性 ...

  9. 完整阿里云Redis开发规范

    完整阿里云Redis开发规范 原文地址 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明. 键值设计 命令使用 客户端使用 相关工具 删除bigkey 通过本文的介绍可以减少使用R ...

随机推荐

  1. ccc如何在一台windows主机上搭建mysql主从复制

    参考:http://www.cnblogs.com/wzjbk/p/6266899.htmlc 进入mysql: 进入到mysql的bin目录下才可以输入 mysql -hlocalhost -uro ...

  2. 两种解决IE6不支持固定定位的方法

    有两种让IE6支持position:fixed1.用CSS执行表达式 *{margin:0;padding:0;} * html,* html body{ background-image:url(a ...

  3. 006-GO VSCode 自动提示功能提示PANIC

    通过vscode开发go,之前一直正常,后来不知什么原因自动提示一直提示:PANIC, 解决方法: (1)重新下载gocode go get -u github.com/nsf/gocode (2)重 ...

  4. JAVA统计中文的个数

    尝试了一下 不错~ /** * 获取字符串的长度,中文占一个字符,英文数字占半个字符 * * @param value 指定的字符串 * @return 字符串的长度 */ public static ...

  5. 架构师速成7.3-devops为什么非常重要

    evops是一个非常高大上的名字,事实上说的简单点就是开发和运维本身就是一个团队的,要干就一起把事情干好.谁出了问题,站点都不行. 作为一个架构师.必需要devops,并且要知道怎样推行devops. ...

  6. MYSQL优化优化再优化!

    1.数据库设计和表创建时就要考虑性能 2.sql的编写需要注意优化 3.分区 4.分表 5.分库 .数据库设计和表创建时就要考虑性能 mysql数据库本身高度灵活,造成性能不足,严重依赖开发人员能力. ...

  7. rotate-list 旋转部分链表

    Given a list, rotate the list to the right by k places, where k is non-negative. For example:Given1- ...

  8. Java DES 加解密("DES/CBC/PKCS5Padding")

    /** * DES加密 * * @param data 加密数据 * @param key 密钥 * @return 返回加密后的数据 */ public static byte[] desEncry ...

  9. 【Linux】函数与参数

    函数的定义 函数的定义包括function命令.函数名.开/闭括号包括以及包含在一对花括号中的函数体. (1) 函数定义 function fname() { Statements; } 或者 fna ...

  10. C++基础学习教程(六)----类编写的前情回想以及项目实战(1)

    在開始类的编写之前我们依旧须要回想整理一下前面所说的内容,(前面尽管是一个自己定义数据类型的实现过程,可是内容有点繁杂). 先看一段代码: /** @file calssStruct.cpp */ / ...