通过公网NAT网关的DNAT规则面向公网提供服务
操作场景
同一个VPC内的一个或多个云服务器需要面向公网提供服务时,可以参考本文为公网NAT网关配置DNAT规则实现。
操作流程
操作步骤 |
说明 |
---|---|
使用云服务前,您需要注册华为账号并开通华为云、完成实名认证、为账户充值。 |
|
购买一个弹性公网IP。 |
|
购买一个公网NAT网关。 |
|
添加路由表。 |
|
为公网NAT网关添加DNAT规则,使得对应子网网段内的云服务器共享EIP访问公网。 |
|
验证DNAT规则已在运行中。 |
|
验证DNAT规则生效的云服务器可以被公网客户端成功访问。 |
准备工作
在使用NAT网关服务前,您需要注册华为账号并开通华为云、完成实名认证、为账户充值。
- 注册华为账号并开通华为云。
- 参考“实名认证”完成个人或企业账号实名认证。
- 您需要确保账户有足够金额,请参见“如何给华为云账户充值”。
步骤二:购买公网NAT网关
- 进入购买公网NAT网关页面。
- 在“购买公网NAT网关”页面,根据界面提示配置公网NAT网关参数。
表1 公网NAT网关参数说明 参数
示例
参数说明
区域
华北-北京四
公网NAT网关所在的区域。
计费模式
按需计费
公网NAT网关的计费模式。
规格
小型
公网NAT网关的规格。
公网NAT网关共有小型、中型、大型、超大型四种规格类型,可通过“了解更多”查看各规格详情。
名称
public-nat-01
公网NAT网关名称。最大支持64个字符,仅支持中文、数字、字母、_(下划线)、-(中划线)、.(点号)。
虚拟私有云
VPC-A
公网NAT网关所属的VPC。
VPC仅在购买公网NAT网关时可以选择,后续不支持修改。
说明:由于需要放通到公网NAT网关的流量,即在VPC中需要有指向公网NAT网关的路由,因此在购买公网NAT网关时,会自动在VPC的默认路由表中添加一条0.0.0.0/0的默认路由指向所购买的公网NAT网关。如果在购买公网NAT网关前,VPC默认路由表下已经存在0.0.0.0/0的默认路由,则会导致自动添加该默认路由指向公网NAT网关失败,此时需要在公网NAT网关购买成功后,手动为此网关添加一条不同的路由或在新路由表中创建0.0.0.0/0的默认路由指向该网关。
子网
Subnet-A01
公网NAT网关所属VPC中的子网。
子网至少有一个可用的IP地址。
子网仅在购买公网NAT网关时可以选择,后续不支持修改。
本子网仅为系统配置NAT网关使用,NAT网关对整个VPC生效,需要在购买后继续添加规则,才能够连通Internet。
高级配置(可选)
-
单击下拉箭头,可配置公网NAT网关的高级参数。
高级配置 > SNAT连接TCP老化时间(秒)
900
通过SNAT规则建立的TCP连接的超时时间,如果TCP连接在该时间内没有数据交换将被关闭。
取值范围:40~7200。
高级配置 > SNAT连接UDP老化时间(秒)
300
通过SNAT规则建立的UDP连接的超时时间,如果UDP连接在该时间内没有数据交换将被关闭。
取值范围:40~7200。
高级配置 > SNAT连接ICMP老化时间(秒)
10
通过SNAT规则建立的ICMP连接的超时时间,如果ICMP连接在该时间内没有数据交换将被关闭。
取值范围:10~7200。
高级配置 > TCP连接延迟关闭时间(秒)
5
TCP连接关闭时TIME_WAIT状态持续时间。
取值范围:0~1800。
高级配置 >描述
无需配置
公网NAT网关信息描述。最大支持255个字符,且不能包含“<”和“>”。
高级配置 >标签
无需配置
公网NAT网关的标识,包括键和值。可以创建20个标签。
- 单击“立即购买”,在“规格确认”页面,您可以再次核对公网NAT网关信息。
- 确认无误后,单击“提交”,开始创建公网NAT网关。
步骤三:添加默认路由指向公网NAT网关
- 进入路由表列表页面。
- 在路由表页面,单击右上角的“创建路由表”。
- 自定义路由表创建成功后,单击自定义路由表名称。进入自定义路由表基本信息页。
- 单击“添加路由”,按照如下配置参数。
下一跳类型:NAT网关
下一跳:选择已创建的NAT网关
图1 添加路由
- 单击“确定”。
步骤四:添加DNAT规则
- 进入公网NAT网关列表页面。
- 在公网NAT网关页面,单击需要添加DNAT规则的公网NAT网关名称。
- 在公网NAT网关详情页面中,单击“DNAT规则”页签。
- 在DNAT规则页签中,单击“添加DNAT规则”。
- 根据界面提示,配置添加DNAT规则参数,详情请参见表2。
图2 添加DNAT规则
表2 DNAT规则参数说明 参数
示例
说明
使用场景
虚拟私有云
在使用DNAT为云主机面向公网提供服务场景下,此处选择虚拟私有云。
表示虚拟私有云中的云主机将通过DNAT的方式共享弹性公网IP,为公网提供服务。
端口类型
具体端口
分为所有端口和具体端口两种类型。
- 所有端口:属于IP映射方式。此方式相当于为云主机配置了一个弹性公网IP,任何访问该弹性公网IP的请求都将转发到目标云服务器实例上。
- 具体端口:属于端口映射方式。公网NAT网关会将以指定协议和端口访问该弹性公网IP的请求转发到目标云服务器实例的指定端口上。
支持协议
TCP
协议类型分为TCP和UDP两种类型。端口类型为具体端口时,可配置此参数,端口类型为所有端口时,此参数默认设置为All。
公网IP类型
弹性公网IP
公网IP地址。
公网端口
80-100
弹性公网IP的端口,有效数值为1-65535。
公网端口的范围可以为具体的数值,也可以为连续的数值范围,例如端口可以为80,也可以为80-100。
实例类型
服务器
DNAT规则生效的实例类型。
网卡
-
选择服务器对应的网卡。
私网端口
80-100
在使用DNAT为云服务器面向公网提供服务场景下,指云服务器的端口号。当端口类型为具体端口时,需要配置此参数,有效数值为1-65535。
私网端口的范围可以为具体的数值,也可以为连续的数值范围,例如端口可以为80,也可以为80-100。
描述
无需配置
DNAT规则信息描述。最大支持255个字符,且不能包含“<”和“>”。
- 配置完成后,单击“确定”,完成“DNAT规则”创建。
配置DNAT规则后,需在对应的云服务器中放通对应的安全组规则,否则DNAT规则不能生效。具体操作步骤,请参见添加安全组规则。
步骤六:验证私网服务器可以被外部公网服务器通过NAT网关访问
- 进入弹性云服务器列表页面。
- 登录绑定了EIP的服务器ECS02。
- 在ECS02上pingNAT网关的DNAT规则绑定的EIP(120.46.131.153),验证私网服务器ECS01是否可以被外部公网服务器ECS02通过NAT网关访问到。
图3 验证私网服务器是否可以被外部公网服务器通过NAT网关访问