摘要: NAT网关是云上VPC ECS访问Internet的出入口。SNAT可实现指定的VPC ECS使用指定的公网IP访问互联网。阿里云NAT网关控制台创建SNAT条目时,默认是为指定的交换机配置1个公网IP地址。

(一)前言

为什么使用SNAT POOL

NAT网关是云上VPC ECS访问Internet的出入口。SNAT可实现指定的VPC ECS使用指定的公网IP访问互联网。阿里云NAT网关控制台创建SNAT条目时,默认是为指定的交换机配置1个公网IP地址。但SNAT的连接数受限于单一公网IP端口数量,当访问量急速增大时,单一公网IP作为VPC ECS访问互联网的出口会显得有些力不从心。对于这种场景,则可以考虑使用NAT网关的SNAT POOL功能。

什么是SNAT POOL功能

创建SNAT条目时,可将多个公网IP加入到一个地址池。当VPC ECS主动发起对外的访问连接时,VPC ECS会随机通过SNAT地址池中的公网IP地址访问互联网。

如何使用SNAT POOL功能

调用阿里云NAT网关API接口:CreateSnatEntry。下图给出了CreatSnatEntry的请求参数。


说明:本文将使用阿里云提供的工具OpenAPI_Explorer做使用示例。

(二)准备工作

创建VPC,规划子网,按需购买VPC ECS。
创建NAT网关。
为NAT网关新购包含2个公网IP地址的NAT带宽包。
下面分别是本文示例SNAT POOL操作拓扑图,和绑定了2个弹性公网IP的NAT网关的控制台示意图。

(三)SNAT POOL设置

登录阿里云提供的OpenAPI_Explorer,OpenAPI_Explorer提供快速的API接口调试,是一款非常便捷的工具。

在OpenAPI Explorer左侧的”云产品列表“里选择“专用网络VPC",然后搜索API接口“CreateSnatEntry”。

填入NAT网关的regionId,SnatTableId和需要设置SNAT的vswitchID。将要设置为SNAT地址池的2个EIP填入到SnatIp中,用逗号隔开,如下图所示。然后点击“发起请求”。

这时,返回NAT网关控制台,可以看到SNAT条目里面已经出现了刚才设置后的SNAT POOL。

(四)SNAT POOL验证

分别登录设置了SNAT规则的vswitch后的三台ECS,查看出网的源IP地址。

(五)注意事项

SNAT POOL创建成功后,指定的VPC ECS将随机使用SNAT POOL中的公网IP访问互联网。

SNAT POOL功能目前仅支持API创建,控制台上SNAT条目默认只支持在vswitch粒度上设置一个公网IP作为出网的源IP地址。后续控制台上将开放SNAT POOL功能,敬请期待。

SNAT POOL功能目前只支持NAT带宽包的公网IP,对于NAT网关绑定的弹性公网IP也计划支持,敬请期待。

(六)有用链接

阿里云NAT网关API文档之详解CreateSnatEntry --【CreateSnatEntry】
阿里云NAT网关之产品图解 --【一张图看懂阿里云网络产品【四】NAT网关】
阿里云专有网络公网出入口管理之必读 --【详解SLB、EIP、NAT网关之间区别, 合理选择云上公网入口】

原文链接

阅读更多干货好文,请关注扫描以下二维码:

NAT网关之SNAT进阶使用(一)SNAT POOL的更多相关文章

  1. TR-069_Amendment-4:附录G.穿越NAT网关的连接请求方式

    注意:这种机制只适用于RFC 3489[21]中定义的经典STUN,RFC 5389引入后,这个机制已经过时.这个机制不是设计用于RFC 5389中定义的STUN.IPv6部署要么不使用NAT,要么以 ...

  2. 反弹,反向穿越防火墙,NAT网关等乱七八糟的术语

    反弹,反向穿越防火墙,反向穿越NAT网关等一切与反向有关的网络活动,往往都是指同一回事情. 以前的木马都是客户端(攻击者)控制服务器(用户),把配置好的服务器发给用户来攻击,叫做正向. 现在的木马代码 ...

  3. 阿里云弹性公网IP那些事 阿里云云栖号 6月1日 弹性公网IP是独立的公网IP资源,可以绑定到阿里云专有网络VPC类型的ECS、NAT网关、私网负载均衡SLB上,并可以动态解绑,实现公网IP和ECS、NAT网关、SLB的解耦,满足灵活管理的要求。阿里云弹性公网IP那些事 阿里云云栖号 6月1日 弹性络VPC类型的E

    阿里云弹性公网IP那些事 阿里云云栖号 6月1日 弹性公网IP是独立的公网关.私网负载均衡SLB上,并可以动态解绑,实现公网IP和ECS.NAT网关.SLB的解耦,满足灵活管理的要求.

  4. iptable nat网关

    echo "1" > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -s 192.168.1.0/ ...

  5. 【问题】为啥WMWare Workstation里面虚拟机的网关默认是NAT网关

    今天做KickStart自动化安装实验,无意中发现一个奇怪现象. 先描述下我的实验环境:笔记本Win10,安装了WMWare Workstation,在WMWare Workstation上面安装了C ...

  6. iptable filter nat MASQUERADE snat dat

    在这里,系统会根据IP数据包中的destination ip address中的IP地址对数据包进行分发.如果destination ip adress是本机地址,数据将会被转交给INPUT链.如果不 ...

  7. F5 SNAT NAT相关

    SNAT: 跟路由器.防火墙一样,BIG-IP系统提供NAT (Network Address Translation)和SNAT(Secure Network Address Translation ...

  8. 如何区分SNAT和DNAT

    从定义来讲它们一个是源地址转换,一个是目标地址转换.都是地址转换的功能,将私有地址转换为公网地址.要区分这两个功能可以简单的由连接发起者是谁来区分:       内部地址要访问公网上的服务时(如web ...

  9. [daily] SNAT和DNAT

    SNAT,DNAT,MASQUERADE都是NAT MASQUERADE是SNAT的一个特例 SNAT是指在数据包从网卡发送出去的时候,把数据包中的源地址部分替换为指定的IP,这样,接收方就认为数据包 ...

随机推荐

  1. ContextLoaderListener错误

    在web.xml中添加如下配置 <context-param> <param-name>contextConfigLocation</param-name> < ...

  2. python面试题--初级(一)

    一. Python 中有多少种运算符? 这类面试问题可以判断你的 Python 功底,可以举一些实例来回答这类问题. 在 Python 中我们有 7 中运算符: 算术运算符.关系 (比较) 运算符.赋 ...

  3. ESP32 Ethernet to wifi

    参考网址 https://github.com/espressif/esp-iot-solution/tree/master/examples/eth2wifi RMII PHY Wiring(RMI ...

  4. C++类中的函数重载

    1,本课程最初阶段就学习了函数重载,但是那时研究目标仅限于全局函数,到目前 为止我们学习了三种函数: 1,全局函数: 2,普通成员函数: 3,静态成员函数: 这三种不同类型的函数之间是否可以构成重载, ...

  5. 基于bs4库的HTML查找方法

    基于bs4库的HTML查找方法 find_all方法 <>.find_all(name,attrs,recursive,string,**kwargs) 返回一个列表类型,内部存储查找的结 ...

  6. Cyclic Nacklace HDU 3746 KMP 循环节

    Cyclic Nacklace HDU 3746 KMP 循环节 题意 给你一个字符串,然后在字符串的末尾添加最少的字符,使这个字符串经过首尾链接后是一个由循环节构成的环. 解题思路 next[len ...

  7. 【输入法】向Android端Gboard字典中导入PC端搜狗细胞词库

    [输入法]向Android端Gboard字典中导入PC端搜狗细胞词库 环境 Android 5.1.1 Gboard 8.7.10.272217667-release -armeabi-v7a PC端 ...

  8. 通过编写串口助手工具学习MFC过程——(七)添加Tab Control控件

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  9. Solr安装(单机版)

    本文记录的是solr在win下安装配置使用的过程,最后将solr部署到Linux上通过远程访问.下一篇文章会介绍   solr集群搭建(SolrCloud)    的安装! Solr是基于Lucene ...

  10. SSM获取前台参数的方式

    1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交.若"Content-Type"="application/ ...