新玩法,ROS帮你一键搭建NatGateway让VPC与Internet的互访

本文涉及的产品
资源编排,不限时长
公网NAT网关,每月750个小时 15CU
简介: ROS创建NAT Gateway资源使VPC中的ECS可以与Internet互访

在前面的文章中,总结了ROS搭建SNAT网关使专有网络访问Internet,它的主要思路是在VPC网络里面创建一个ECS做NAT网关的角色以便实现VPC网络访问internet的功能。坦白的说,这个方法是比较复杂的。今天介绍一个ROS的新资源NAT Gateway,通过它能非常方便的实现这个功能,在专有网络中的机器与Internet互访不是梦。

Nat Gateway介绍

NAT网关(NAT Gateway)是一款企业级的VPC公网网关,提供NAT代理(SNAT、DNAT)、10Gbps级别的转发能力、Region级别的高可用性(跨可用区的容灾能力)。

共享带宽包(Bandwidth Package)是对NAT网关上的公网IP与公网带宽的封装;一个共享带宽包由一份公网带宽和一组公网IP组成,这些公网IP共享带宽。

NAT网关与共享带宽包需要配合使用,组合成为高性能、配置灵活的企业级网关。

NAT Gateway在VPC中的拓扑如下图所示:

_1_NAT_

关键特性:

DNAT:目的网络地址转换(入方向代理),用于VPC内的ECS面向互联网提供服务;支持端口映射、IP映射;
SNAT:源网络地址转换(出方向代理),用于VPC内的ECS访问互联网内容;
多IP共享带宽:NAT网关上购买公网IP和公网带宽时以“共享带宽包”形式购买,一个带宽包内的所有IP共享带宽;
高性能:NAT网关可以支撑单实例10Gbps级别的转发能力;
高可用:NAT网关基于SDN技术,采用跨可用区分布式架构,每个实例均具备应对可用区级别故障;
按需购买:所有费用均为先使用后结算,实例规格、带宽大小、公网IP个数均可随时调整、即时生效;

ROS Nat Gateway相关资源介绍

ALIYUN::ECS::NatGateway

这个资源是申明要在那个VPC中创建一个NAT Gateway。在创建NAT Gateway的时候必须指定VPC的ID,VSWITCH的ID,以及至少一个带宽包。NAT Gateway

资源创建成功后会自动在VPC的路有表中添加一条指向NAT Gateway的路由表项。通过ROS可以输出NAT Gateway的ID, 所有带宽包的ID,所有带宽包中申明的所有公网IP,Forward 表ID,SNAT表ID。

"NatGateway": {
      "DependsOn": "VSwitch",
      "Properties": {
        "BandwidthPackage": [
          {
            "Bandwidth": 5,
            "IpCount": 1,
            "ZoneId": "cn-hangzhou-b"
          },
          {
            "Bandwidth": 5,
            "IpCount": 1,
            "ZoneId": "cn-hangzhou-b"
          }
        ],
        "Description": "hhhhh",
        "NatGatewayName": "nat_gateway_1",
        "Spec": "Middle",
        "VSwitchId": {
          "Fn::GetAtt": [
            "VSwitch",
            "VSwitchId"
          ]
        },
        "VpcId": {
          "Fn::GetAtt": [
            "Vpc",
            "VpcId"
          ]
        }
      },
      "Type": "ALIYUN::ECS::NatGateway"
    }

ALIYUN::ECS::BandwidthPackage

带宽包也可以单独作为一个资源创建,然后关联到一个具体的NAT Gateway。创建带宽包必须要指定NAT Gateway的ID,带宽大小,以及所需要的公网IP数量。

资源创建完成后,通过ROS可以输出带宽包ID和带宽包中所申请的所有IP

 BandwidthPackage": {
      "Type": "ALIYUN::ECS::BandwidthPackage",
      "Properties": {
        "BandwidthPackageName": "pkg_2",
        "Description": "new bandwidth package",
        "NatGatewayId": "ngw-h1xoxepyf",
        "IpCount": 2,
        "Bandwidth": 5,
        "ZoneId": "cn-beijing-c"
      }
    }

ALIYUN::ECS::ForwardEntry

本资源是给NAT Gateway的目的网络转换表添加访问规则,通过这条规则可以让外网主动访问VPC网络中的机器。创建一条规则必须传入Forward表的ID,网络协议,VPC内部机器的IP,内部机器的端口,暴漏给外网访问的IP和端口。外网的IP,就是带宽包中所申请的IP资源。

资源创建完成,通过ROS可以输出这条规则的ID

下面的例子展示如何配置一个外网通过22端口访问在VPC网络的机器。

"ForwardEntry": {
      "Properties": {
        "ExternalIp": {
          "Fn::Select": [
            "1",
            {
              "Fn::GetAtt": [
                "NatGateway",
                "BandwidthPackageIps"
              ]
            }
          ]
        },
        "ExternalPort": "22",
        "ForwardTableId": {
          "Fn::GetAtt": [
            "NatGateway",
            "ForwardTableId"
          ]
        },
        "InternalIp": "192.168.0.1",
        "InternalPort": "22",
        "IpProtocol": "TCP"
      },
      "Type": "ALIYUN::ECS::ForwardEntry"
    }

ALIYUN::ECS::SNatEntry

本资源给源网络地址转换表配置一条规则,通过这个规则可以让VPC中的机器能主动访问外网。创建一条规则必须传入SNAT表的ID,将要访问外网的VSWITCH ID,以及通过那个外网IP访问外网,这个IP也是带宽包中所申请的IP。如果同时需要主动,被动访问外网的,就必须至少有两个外网IP。也就是SNAT和Forward表的公网IP不能相同。

"SNatEntry": {
      "Properties": {
        "SNatIp": {
          "Fn::Select": [
            "0",
            {
              "Fn::GetAtt": [
                "NatGateway",
                "BandwidthPackageIps"
              ]
            }
          ]
        },
        "SNatTableId": {
          "Fn::GetAtt": [
            "NatGateway",
            "SNatTableId"
          ]
        },
        "SourceVSwitchId": {
          "Fn::GetAtt": [
            "VSwitch",
            "VSwitchId"
          ]
        }
      }

下面是一个完整的模版创建一个VPC网络,然后配置NAT Gateway,让VPC的中的ECS实例能和Internet互访。完整模版下载 ->>

目录
相关文章
|
弹性计算 网络安全 数据安全/隐私保护
同账号VPC间互访|学习笔记
快速学习同账号VPC间互访
同账号VPC间互访|学习笔记
|
弹性计算 JSON 网络安全
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
|
网络安全
aws-vpc-nat网关(私有子网访问Internet)
aws-vpc-nat网关(私有子网访问Internet)
265 0
aws-vpc-nat网关(私有子网访问Internet)
|
弹性计算 网络安全 数据安全/隐私保护
跨账号VPC间互访|学习笔记
快速学习跨账号VPC间互访
跨账号VPC间互访|学习笔记
|
弹性计算 网络协议 网络安全
ROS搭建具有NAT Gateway功能的VPC 网络
本文介绍如何利用资源编排服务,搭建具有公网访问能力的专有网络。
7024 0
|
弹性计算 NoSQL Redis
基于资源编排和 Ansible 在 VPC 下快速交付应用
阿里云资源编排服务(ROS)为我们快速搭建和整合云计算资源环境提供一个低成本、标准化的方案。基于ROS提供的能力,我们所要做的就是将所需的资源以资源模板的形式进行定义,进而实现对所定义云资源的快速生产。除此之外,ROS 将应用交付和资源释放的过程也进行了简化。 用户基于 ROS 交付应用可以有两种
7725 0
|
6月前
|
弹性计算 监控 开发工具
【阿里云弹性计算】阿里云ECS的网络优化实践:VPC配置与网络性能提升
【5月更文挑战第29天】阿里云ECS通过虚拟私有云(VPC)提供高性能、安全的网络环境。VPC允许用户自定义IP地址、路由规则和安全组。配置包括:创建VPC和交换机,设定安全组,然后创建ECS实例并绑定。优化网络性能涉及规划网络拓扑、优化路由、启用网络加速功能(如ENI和EIP)及监控网络性能。示例代码展示了使用Python SDK创建VPC和交换机的过程。
424 3
|
3月前
|
敏捷开发 网络协议 测试技术
阿里云云效产品使用合集之在vpc网络里,如何升级agent
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
6月前
|
弹性计算 关系型数据库 数据库
【阿里云助力企业数字化转型:专有网络、ECS、RDS等一网打尽】
数字化转型已经成为企业发展的必然趋势,而阿里云作为我国领先的云计算服务提供商,为企业提供了一整套完善的云服务解决方案。本文将详细介绍阿里云的专有网络VPC、云服务器ECS、云数据RDS、云数据库Redis、Serverless容器集群ASK、微服务引擎MSE、云效以及云速搭CADT等产品,帮助企业轻松实现数字化转型。 正文:
204 3

推荐镜像

更多