概述:
为了安全起见,我们没有给所有的应用服务器、DB服务器、REDIS缓存服务器配置公网IP,都是只配置内网IP,这样就存在没有公网IP的服务器无法访问互联网的问题,但是有些应用的请求接口需要访问互联网来取数据,因此必须解决访问互联网的问题。
总体结构如下
1、ECS服务器一台,相当于跳板机(配置公网)
2. 一个Nginx服务器(配置为公网)
3、两台MySQL服务器,主从架构(没有配置公网)。
4.redis缓存服务器一台(无需公网)
5、应用服务器3台(不含公网)。
解决方案:
通过了解上述服务器架构和需求,我想到两种解决方法。
方式一:购买阿里云NAT网关,将所有未配置公网的IP地址都接入网关。
方法二:利用已有的nginx服务器进行上网路由转发
综上所述,为了节省成本,我这里采用的是方法2。
解决方法
1.Nginx服务器,启用数据包转发
sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g' /etc/sysctl.conf
sysctl –p
2.配置 NAT 转发
iptables -t nat -I POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 192.168.2.54
这里我们假设阿里云服务器内网是192.168.2.0/24
3.添加 VPC 路由
4.在没有公网IP地址的服务器上,可以直接ping通外网
最后如果觉得文章对你有用的话,欢迎小伙伴们关注、转发哦!
扫一扫在手机端查看
本文链接:https://by928.com/5419.html 转载请注明出处和本文链接!请遵守
《网站协议》
!
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。