云数据库如何通过外网连接

喜欢而已 提交于 2020-01-25 15:59:29

linux系统

1.准备环境

云服务器 193.112.1.43(公)172.16.0.23(内)
规格选择:官方文档

云数据库pgsql 内网 172.16.32.98:5432
同一私有网络,默认内网互通

在这里插入图片描述
2.云服务器上做如下转发

iptables -t nat -A PREROUTING -d 172.16.0.23 -p tcp --dport 5432 -j DNAT --to-destination 172.16.32.98:5432 #目的地址转换

iptables -t nat -A POSTROUTING -d 172.16.32.98 -p tcp --dport 5432 -j SNAT --to-source 172.16.0.23 #源地址转换

echo 1 > /proc/sys/net/ipv4/ip_forward #开启转发(临时生效)

需修改sysctl.conf:net.ipv4.ip_forward = 1 执行sysctl -p马上生效 (永久生效)

3.测试通过云服务器的外网IP加端口可以正常访问。
在这里插入图片描述
windwos系统

1.准备环境

云服务器 193.112.224.83(公)172.16.32.87(内)

云数据库pgsql 内网 172.16.32.98:5432 同一私有网络,默认内网互通

2.云服务器上做如下转发

netsh interface portproxy add v4tov4listenport=5432 connectaddress=172.16.32.98 connectport=5432
在这里插入图片描述
相关参数说明:

listenport 必需。指定要监听的端口
listenaddress 需要监听的计算机ip,未指定则默认值为本机
connectport 需要转发的端口,未指定则默认值为本地计算机上的listenport
connectaddress 需要转发的计算机ip,未指定则默认值为本机
protocol 指定的协议,暂仅支持TCP
查看规则是否存在

netsh interface portproxy show all

删除规则

netsh interface portproxy delete v4tov4 listenport=5432

3.测试通过云服务器的外网IP加端口可以正常访问。

在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!