公网NAT网关是一款阿里云全托管的网络地址转换网关,通过转换和隐藏云服务地址,防止地址直接暴露,实现安全访问互联网提升网络安全性。
背景信息
为了提升配置体验,公网NAT网关支持组合购买EIP,即在创建公网NAT网关时,支持同时购买EIP实例或选择已有的EIP实例绑定至该公网NAT网关实例上。具体操作,请参见VPC全通模式组合购买公网NAT网关和弹性公网IP。
本文以非VPC全通模式介绍创建和管理公网NAT网关的方法。
为了提升创建体验,在VPC内创建第一个公网NAT网关时,阿里云会在VPC的系统路由表中自动添加一条目标网段为0.0.0.0/0,下一跳为公网NAT网关的路由条目,用于将流量路由到公网NAT网关。若VPC存在自定义路由表或VPC存在多个公网NAT网关,请根据需要手动添加路由。具体操作,请参见创建和管理路由表。
若创建公网NAT网关前,VPC的系统路由表中已经存在目标网段为0.0.0.0/0的路由条目,系统不会自动添加指向公网NAT网关的路由条目。
如果ECS实例已经持有了公网IP,例如分配了固定公网IP、绑定弹性公网IP(Elastic IP Address,简称EIP)或设置了DNAT IP映射,当该ECS实例发起互联网访问时,会优先通过ECS实例持有的公网IP访问互联网,而不会使用公网NAT网关的SNAT功能访问互联网。如需统一公网出口IP,请参见为已分配固定公网IP的ECS实例统一公网出口IP和为设置了DNAT IP映射的ECS实例统一公网出口IP。
当多条SNAT条目的源网段重叠时,系统会根据最长子网掩码匹配规则确定优先为哪一条SNAT条目提供互联网代理服务。
使用ECS粒度配置的SNAT条目中源网段的子网掩码为
/32
,长度最长,优先级最高,优先匹配。使用其他粒度配置的SNAT条目会根据源网段的子网掩码长度进行匹配,长度越长,优先级越高,越先匹配。
如果您的ECS实例已经绑定了弹性公网 IP EIP(Elastic IP Address),则不支持为该ECS实例添加DNAT条目。如需为该ECS实例添加DNAT条目,请先将ECS实例与EIP解绑,再为该ECS实例添加DNAT条目。关于如何解绑EIP,请参见将EIP与云资源解绑。
前提条件
您已经创建了VPC和交换机。具体操作,请参见搭建IPv4专有网络。
您已经创建了弹性公网IP实例。具体操作,请参见申请EIP。
创建公网NAT网关
- 登录NAT网关管理控制台。
- 在公网NAT网关页面,单击创建NAT网关。
首次使用NAT网关时,在创建公网NAT网关页面关联角色创建区域,单击创建关联角色。角色创建成功后即可创建NAT网关。
关于NAT网关服务关联角色的更多信息,请参见服务关联角色。
在创建公网NAT网关页面,配置以下购买信息,然后单击立即购买。
配置
说明
付费模式
默认选择为按量付费,即一种先使用后付费的付费模式。更多信息,请参见公网NAT网关计费。
资源组
选择VPC所属的资源组。更多信息,请参见资源组概述。
标签
标签键:选择或输入完整的标签键。
最多支持输入20个标签键。一个标签键最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。
标签值:选择或输入完整的标签值。
最多支持输入20个标签值。一个标签值最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。
所属地域
选择需要创建公网NAT网关的地域。
所属专有网络
选择公网NAT网关所属的VPC。创建后,不能修改公网NAT网关所属的VPC。
关联交换机
选择公网NAT网关实例所属的交换机。
计费类型
默认选择为按使用量计费,即按公网NAT网关实际使用量收费。更多信息,请参见公网NAT网关计费。
计费周期
默认选择为按小时,即按使用量计费公网NAT网关的计费周期为1小时,不足1小时按1小时计算。
实例名称
设置公网NAT网关实例的名称。
实例名称长度为2~128个字符,以英文大小写字母或中文开头,可包含数字、下划线(_)和短划线(-)。
访问模式
选择公网NAT网关的访问模式。支持以下两种模式:
VPC全通模式(SNAT):选择了VPC全通模式,在公网NAT网关创建成功后当前VPC内所有实例即可通过该公网NAT网关访问公网。
选择VPC全通模式(SNAT)后,您需要配置弹性公网IP(Elastic IP Address,简称EIP)的相关信息。
稍后配置:如需稍后配置或有更多配置需求,可在购买完成后,前往控制台进行配置。
选择稍后配置,则只购买公网NAT网关实例。
本文选择稍后配置。
在确认订单页面确认公网NAT网关的配置信息,选中服务协议并单击确认订单。
当出现恭喜,购买成功!的提示后,说明您创建成功。
绑定EIP
从2022年09月19日起,新创建的公网NAT网关绑定一个EIP时将占用NAT网关所在交换机的一个私网IP(已有NAT网关实例不受影响),请确保NAT网关所在交换机内私网IP地址充足,如果NAT网关所在的交换机没有可用的空闲私网地址,将无法绑定新的EIP。
公网NAT网关需要绑定EIP才能正常工作。一个公网NAT网关最多可绑定20个EIP。您可以前往配额管理页面自助提升配额。绑定EIP前,请确保您已经创建了公网NAT网关。
- 登录NAT网关管理控制台。
- 在顶部菜单栏,选择公网NAT网关的地域。
在公网NAT网关页面,找到目标公网NAT网关实例,然后在弹性公网IP列单击立即绑定。
在绑定弹性公网IP对话框,配置以下参数,然后单击确定。
配置
说明
所在资源组
选择EIP所在的资源组。
选择弹性公网IP
从以下方式中选择一种绑定到公网NAT网关EIP的方式。
单击从已有弹性公网IP中选择:在下拉列表中选择已有的EIP实例。
单击新购弹性公网IP并绑定:系统只能为您创建1个按使用流量计费的按量付费EIP,并绑定到公网NAT网关。
绑定成功后,在公网NAT网关实例的弹性公网IP地址列将会显示出绑定的EIP。
创建SNAT条目
您可以使用公网NAT网关的SNAT功能,为VPC中无公网IP的ECS实例提供访问互联网的代理服务,实现无公网IP的ECS实例访问互联网。
- 登录NAT网关管理控制台。
- 在顶部菜单栏,选择公网NAT网关的地域。
- 在公网NAT网关页面,找到目标公网NAT网关实例,然后在操作列单击设置SNAT。
在SNAT管理页签,单击创建SNAT条目。
在创建SNAT条目页面,配置以下参数,然后单击确定创建。
VPC粒度:公网NAT网关所属VPC下的所有ECS实例可以通过配置的SNAT规则访问互联网。
交换机粒度:指定交换机下的ECS实例通过配置的公网IP访问互联网。
选择交换机:在下拉列表中选择交换机。您可以在下拉列表选择已创建的交换机;也可以单击创建交换机跳转到VPC控制台创建交换机后选择。
如果您选择多个交换机,将会为您创建多条SNAT条目,使用相同的公网IP地址。
交换机网段:显示交换机的网段。
ECS/弹性网卡粒度:指定的ECS/ENI通过配置的公网IP访问互联网。
通过ECS或弹性网卡进行选择:在下拉列表中选择ECS或ENI。该ECS或ENI将通过配置的公网IP访问互联网。您可以在下拉列表选择已创建的ECS实例;也可以单击创建ECS跳转到ECS控制台创建ECS实例后选择。如您选择多个ECS,将会为您创建多条SNAT条目,使用相同的公网IP地址。
请确保所选择的ECS实例满足以下条件:
ECS实例的状态处于运行中。
ECS实例不具备固定公网IP且未绑定其他弹性公网IP。
ECS/弹性网卡网段:显示ECS或弹性网卡的网段。
自定义网段粒度:输入任意网段后,该网段的下ECS实例都可以通过配置的SNAT规则访问互联网。
使用单IP:在下拉列表中选择弹性公网IP。如果下拉列表中没有可选的弹性公网IP,可在下拉列表单击新购弹性公网IP并绑定,在弹出的对话框中完成弹性公网IP的购买操作。
使用多IP:从公网IP列表中,选择多个弹性公网IP。
指定多个弹性公网IP配置至SNAT IP地址池时,业务连接会通过哈希算法分配到多个弹性公网IP,由于每个连接的流量不同,可能会出现多弹性公网IP业务流量不均匀的情况,建议您将每个弹性公网IP加入到同一个共享带宽中以避免单弹性公网IP带宽达到上限导致业务受损。
关闭EIP亲和性能力,同一个私网IP访问单一目的IP,可能使用不同的弹性公网IP。
开启EIP亲和性能力,同一个私网IP访问单一目的IP,只会使用相同的弹性公网IP。
若会话数量较高,可能会导致端口分配失败的监控计数上涨。
配置 | 说明 |
SNAT条目粒度 | 选择SNAT条目的粒度。 |
选择公网IP地址 | 选择用来提供互联网访问的公网IP。 |
EIP亲和性 | 当您选择多个弹性公网IP时,您可以选择是否开启EIP亲和性能力。 |
条目名称 | SNAT条目的名称。 |
创建DNAT条目
您可以使用公网NAT网关DNAT功能,将公网NAT网关上的公网IP通过端口映射或IP映射两种方式映射给云服务器 ECS(Elastic Compute Service)实例使用,使ECS实例能够对外提供公网访问服务。
- 登录NAT网关管理控制台。
- 在顶部菜单栏,选择公网NAT网关的地域。
- 在公网NAT网关页面,找到目标公网NAT网关实例,然后在操作列单击设置DNAT。
在DNAT管理页签,单击创建DNAT条目。
在创建DNAT条目页面,配置以下参数,然后单击确定创建。
配置
说明
选择公网IP地址
选择要提供互联网通信的弹性公网IP。
说明公网NAT网关支持将一个公网IP同时用于DNAT条目和SNAT条目。
选择私网IP地址
选择要通过DNAT规则进行公网通信的实例的IP。您可以通过以下两种方式指定目标私网IP地址:
通过ECS或弹性网卡进行选择:从ECS实例或弹性网卡列表中选择私网IP地址。
通过手动输入:输入目标私网IP地址。
端口设置
选择DNAT映射的方式:
任意端口:该方式属于IP映射,任何访问该公网IP的请求都将转发到目标ECS实例上,目标ECS实例也可以使用该公网IP主动访问公网。
说明DNAT条目中配置了IP映射方式的EIP不能再被其他DNAT条目或SNAT条目使用。
如果公网NAT网关既配置了DNAT IP映射方式,又配置了SNAT条目,则ECS实例会优先通过DNAT IP映射方式的公网IP访问公网。
具体端口:该方式属于端口映射,公网NAT网关会将以指定协议和端口访问该公网IP的请求转发到目标ECS实例的指定端口上。
选择具体端口后,请根据业务需求设置以下参数:
公网端口:进行端口转发的外部端口或端口段。
输入的端口范围需要在1~65535之间。
如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,例如10/20。
如果公网端口设置为端口段,则私网端口也需要设置为端口段,且端口段的端口个数相同,例如公网端口设置为10/20,私网端口设置为80/90。
当选择的公网IP已创建了SNAT条目,且需要设置的公网端口号大于
1024
,因SNAT默认分配端口范围在1025~65535之间,请单击开启端口突破并在弹出的对话框单击确定。警告开启端口突破操作会导致部分存量SNAT的连接闪断,重连即可恢复,请您谨慎操作。
私网端口:进行端口转发的内部端口或端口段。
协议类型:转发端口的协议类型。
条目名称
输入DNAT条目的名称。
名称长度为2~128个字符,以大小写字母或中文开头, 可包含数字、下划线(_)和短划线(-)。
说明在创建DNAT条目后,需在与ECS实例关联的安全组中添加相应的安全组规则。具体操作,请参见添加安全组规则。
标记公网NAT网关
随着公网NAT网关实例数量的增多,会加大您对公网NAT网关实例的管理难度。通过标签将公网NAT网关实例进行分组管理,有助于您搜索和筛选实例。
标签是您为实例分配的标记,每个标签都由一对键值对(Key-Value)组成。标签的使用说明如下:
一个公网NAT网关实例的每条标签的标签键(Key)必须唯一。
不支持未绑定公网NAT网关实例的空标签存在,标签必须绑定在实例上。
不同地域中的标签信息不互通。
例如,在华东1(杭州)地域创建的标签在华东2(上海)地域不可见。
您可以修改标签的键和值,也可以删除公网NAT网关实例的标签。如果删除公网NAT网关实例,绑定在实例上的标签也会被删除。
一个公网NAT网关实例最多可以绑定20条标签,暂不支持提升配额。
- 登录NAT网关管理控制台。
- 在顶部菜单栏,选择公网NAT网关的地域。
在公网NAT网关页面,找到目标公网NAT网关实例,将鼠标悬停在标签列的图标上,然后在气泡框单击添加或编辑。
在编辑标签对话框,根据以下信息配置标签,然后单击确定。
配置
说明
标签键
标签的标签键,支持选择已有标签键或输入新的标签键。
标签键最多支持128个字符,不能以
aliyun
或acs:
开头,不能包含http://
或https://
。标签值
标签的标签值,支持选择已有标签值或输入新的标签值。
标签值最多支持128个字符,不能以
aliyun
或acs:
开头,不能包含http://
或https://
。返回公网NAT网关页面,单击标签筛选,在标签筛选对话框根据标签键和标签值来筛选公网NAT网关实例。
编辑公网NAT网关
- 登录NAT网关管理控制台。
- 在顶部菜单栏,选择公网NAT网关的地域。
- 在公网NAT网关页面,找到目标公网NAT网关实例,然后在操作列单击管理。
在基本信息页签的基本信息区域,您可以通过以下操作编辑公网NAT网关。
编辑公网NAT网关的名称
在实例名称右侧单击编辑,在弹出的对话框中输入公网NAT网关的名称,然后单击确定。
编辑公网NAT网关的描述信息
在描述右侧单击编辑,在弹出的对话框中输入描述信息,然后单击确定。
开启或关闭删除保护
在删除保护右侧单击开启删除保护或关闭删除保护。
开启或关闭ICMP代回能力
在ICMP代回右侧单击开关开启或关闭。
说明NAT网关默认开启ICMP代回功能,NAT网关将代回ICMP报文。如通过Ping命令进行探测时,通过NAT网关将会收到正常的回复报文,但这并不能保证后端服务器正常,所以可能会影响您运维监控系统的探测准确性。如果您关闭了ICMP代回能力,NAT网关将不代回ICMP报文,但仅在DNAT配置任意端口映射场景下,NAT网关会将ICMP报文转发至后端服务器。
更多操作
操作 | 说明 |
编辑SNAT条目 |
|
删除SNAT条目 |
|
编辑DNAT条目 |
|
删除DNAT条目 |
|
解绑EIP | 请确保要解绑的EIP没有被任何SNAT条目或DNAT条目占用。如有占用,请先删除SNAT条目和DNAT条目。
|
删除公网NAT网关 |
|
相关文档
CreateNatGateway:创建公网NAT网关实例。
AssociateEipAddress:绑定EIP。
CreateSnatEntry:创建SNAT条目。
CreateForwardEntry:创建DNAT条目。
DeleteSnatEntry:删除SNAT条目。
DeleteForwardEntry:删除DNAT条目。
UnassociateEipAddress:解绑EIP。
TagResources:为公网NAT网关添加标签。
ModifyNatGatewayAttribute:编辑公网NAT网关的基本信息。
DeleteNatGateway:删除公网NAT网关。