1987WEB视界-分享互联网热门产品和行业

您现在的位置是:首页 > 服务器 > 正文

服务器

阿里云服务器无公网如何上网?

1987web2023-06-24服务器181
概述:为了安全起见,我们对所有应用服务器,DB服务器,REDIS缓存服务器不配置公网IP,只配内网IP。这样有一个问题就是没有公网IP的服务器无法上网。而某些应用的请求接口需要上网抓取数据。所以必须要

概述:

为了安全起见,我们对所有应用服务器,DB服务器,REDIS缓存服务器不配置公网IP,只配内网IP。这样有一个问题就是没有公网IP的服务器无法上网。而某些应用的请求接口需要上网抓取数据。所以必须要解决上网的问题。

大概架构如下

1、一台ECS服务器,相当于跳板机(配置公网)

2、一台Nginx服务器(配置公网)

3、二台mysql服务器,主从架构(不配置公网)。

4、一台redis缓存服务器(不配置公网)

5、三台应用服务器(不含公网)。

解决思路:

通过对上述服务器架构和需求的了解。想到了有2种方法可以进行解决。

方法一、购买阿里云NAT网关,把没有配置公网的IP地址都接入到网关。

  • 优点: 快速方便
  • 缺点:额外花钱购买NAT,哈哈~~

方法二、使用自己已有的nginx服务器,进行路由转发上网

  • 优点:不用花钱购买NAT
  • 缺点: 需要人为配置,路由转发

总结,为了节省成本,我这里采用的是方法二。

解决方法

1、Nginx服务器,开启数据包转发

sed-is/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g/etc/sysctl.conf
sysctl –p

2、配置NAT转发Iptables

iptables-tnat-IPOSTROUTING-s192.168.2.0/24-jSNAT--to-source192.168.2.54

此处假设阿里云服务器内网,网是192.168.2.0/24

3、添加VPC路由

4、在没有公网的IP地址服务器,可以直接ping通外网

最后,如果感觉文章对你有用,欢迎朋友关注+转发哦!