公网连接实例
ECS Windows篇
目前云数据库 Memcache 版是需要通过 ECS 的内网进行连接访问,如果您本地需要通过公网访问云数据库 Memcache 版,可以在 ECS Windows 云服务器中通过 netsh 进行端口映射实现。
登录 ECS Windows 服务器中,在 CMD 执行以下命令。
netsh interface portproxy add v4tov4 listenaddress=ECS服务器的公网IP地址 listenport=11211 connectaddress=云数据库Memcache的连接地址 connectport=11211
如下图:
如果需要查看当前服务器存在的映射,可用
netsh interface portproxy show all
命令。设置完成后进行验证测试。
在本地通过 telnet 连接 ECS Windows 服务器后进行数据写入和查询验证,如果 ECS Windows 服务器的 IP 是1.1.1.1,即
telnet 1.1.1.1 11211
。通过上述步骤即可实现:您本地的 PC 或服务器通过公网连接 ECS Windows 11211端口,进而访问云数据库 Memcache 版。
注意: 因 portproxy 由微软官方提供,未开源使用,您如果配置使用过程中遇到疑问,可参看 netsh 的 portproxy 使用说明或向微软官方咨询确认。或者您也可以考虑通过其他的方案实现,比如通过 portmap 配置代理映射。
- 完成相关操作后,如需删除公网转发,可用
netsh interface portproxy delete v4tov4 listenaddress=ECS服务器的公网IP地址 listenport=11211
删除不需要的映射。
ECS Linux 篇
目前云数据库 Memcache 版是需要通过 ECS 的内网进行连接访问,如果您本地需要通过公网访问云数据库 Memcache,可以在 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 安装包下载地址不确保下载可用性,您可以自行搜索安装包进行下载使用。
创建配置文件。
vi /etc/rinetd.conf
输入如下内容。
0.0.0.0 11211 Memcache的链接地址 11211
logfile /var/log/rinetd.log
执行
rinetd
命令启动 rinetd。注意:通过
echo rinetd >>/etc/rc.local
可以设置为自启动。可以使用pkill rinetd
结束该进程。验证测试。
在本地通过 telnet 连接 ECS Linux 服务器后进行数据写入和查询验证,比如安装了 rinetd 的服务器的 IP 是 1.1.1.1,即
telnet 1.1.1.1 11211
。通过上述步骤即可实现:您本地的 PC 或服务器通过公网连接 ECS Linux 11211 端口,进而访问云数据库 Memcache 版。
注意:因 rinetd 为开源软件,如在使用过程中存在疑问,您可以参看其官方文档或与 rinetd 官方进行联系确认。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论