https://help.aliyun.com/document_detail/43850.html
ECS Windows 篇
目前雲數據庫 Redis 需要通過 ECS 的內網進行連接訪問,如果您本地需要通過公網訪問雲數據庫 Redis,可以在 ECS Windows 雲服務器中通過 netsh 進行端口映射實現。
-
登錄 ECS Windows 服務器,在 CMD 執行:
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可以查看當前服務器中存在的映射。
-
設置完成后進行驗證測試。
在本地 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 進行轉發實現。
-
在雲服務器 ECS Linux 中安裝 rinetd。
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetdsed -i 's/65536/65535/g' rinetd.c (修改端口范圍)mkdir /usr/man&&make&&make install
注意:rinetd 安裝包下載地址不確保下載可用性,您可以自行搜索安裝包進行下載使用。
-
創建配置文件。
vi /etc/rinetd.conf
-
輸入如下內容:
0.0.0.0 6379 Redis 的鏈接地址 6379logfile /var/log/rinetd.log

-
執行如下命令啟動rinetd。
rinetd
注意
- 通過
echo rinetd >>/etc/rc.local可以設置為自啟動。 - 可以使用
pkill rinetd結束該進程。
-
驗證測試。
在本地通過 redis-cli 連接 ECS Linux 服務器后進行登錄驗證,比如安裝了 rinetd 的服務器的 IP 是 1.1.1.1:
redis-cli -h 1.1.1.1 -a Redis 的實例ID:Redis密碼

通過上述步驟即可實現:您本地的 PC 或服務器通過公網連接 ECS Linux 6379 端口,對雲數據庫 Redis 進行訪問。
注意:您可以通過該方案進行測試使用,因 rinetd 為開源軟件,如在使用過程中存在疑問,您可以參看其官方文檔或與 rinetd 官方進行聯系確認。
