云数据库Memcache需要通过ECS的内网进行连接访问,如果本地需要通过公网访问,您可以在ECS中通过端口转发实现。
Windows操作系统
登录ECS服务器,执行下述格式的命令:
netsh interface portproxy add v4tov4 listenaddress=ECS服务器的公网IP地址 listenport=11211 connectaddress=云数据库Memcache的连接地址 connectport=11211
说明如果需要查看当前服务器存在的映射,可执行
netsh interface portproxy show all
命令。在本地设备上,通过telnet命令连接并进行数据写入和查询验证。
例如ECS的IP地址是1.1.*.*,即
telnet 1.1.*.* 11211
。说明由于portproxy由微软官方提供,未开源使用,您如果配置使用过程中遇到疑问,可查看portproxy的使用说明或向微软官方咨询确认。您也可以通过其他的方案实现,例如portmap。
可选:如需删除端口转发,可执行下述格式的命令。
netsh interface portproxy delete v4tov4 listenaddress=ECS服务器的公网IP地址 listenport=11211
Linux操作系统
- 登录ECS,下载并安装rinetd。安装方法,请参见rinetd介绍。警告
由于rinetd.com网站为伪造的rinetd官网,如果您的rinetd从该网站下载,可能存在后门类安全风险,建议您及时更换并排查风险(例如查杀病毒)。
修改配置文件,本文以0.73版本为例介绍配置方法。
cd rinetd-0.73 vi rinetd.conf
在配置文件中,输入下述格式的内容并保存:
0.0.0.0 11211 Memcache的内网连接地址 11211 allow *.*.*.*
示例如下:
执行rinetd -c rinetd.conf命令,启动rinetd。
说明您也可以执行
echo rinetd -c rinetd.conf >>/etc/rc.local
命令将其设置为自启动。如需结束端口转发,可执行pkill rinetd
命令。在本地设备上,通过telnet命令连接并进行数据写入和查询验证。
例如ECS的IP地址是1.1.*.*,即
telnet 1.1.*.* 11211
。