火山引擎NAT网关使用指南-使用中转路由器实现多个VPC共享公网NAT网关

axin 2025-05-15 5人围观 ,发现0个评论 火山引擎云服务云服务器云服务器教程


当多个VPC需要访问公网时,为节约公网IP资源,您可为多个VPC配置一个公网NAT网关,以节省企业成本。本文为您介绍如何通过中转路由器实现多个VPC共享一个NAT网关访问公网。

背景介绍

某企业的业务部署于3个VPC,如下图所示,VPC-A和VPC-C共用一个公网NAT网关,VPC-B不使用公网NAT网关。
  • VPC-A的网段为172.16.0.0/16,其子网-A的网段为172.16.1.0/24。

  • VPC-B的网段为192.168.0.0/16,其子网-B的网段为192.168.1.0/24。

  • VPC-C的网段为10.0.0.0/16,其子网-C的网段为10.0.1.0/24。

  • VPC-A、VPC-B分别与VPC-C互通,VPC-A与VPC-B彼此之间隔离。

上图仅呈现一条SNAT规则,在实际使用过程中,可按需创建多条SNAT规则和DNAT规则。
云服务器ECS-A可通过公网NAT网关NAT-X的SNAT规则访问公网。

前提条件

根据背景介绍,在操作之前,您需要做如下准备:
  • 使用同一个火山引擎账号,创建3个VPC(本文示例的地域为华北2(北京)),VPC的参数同背景介绍保持一致。具体操作,请参考 创建私有网络 。

  • 在VPC-A的子网-A中创建云服务器ECS-A(172.16.1.11),在VPC-B的子网-B中创建云服务器ECS-B(192.168.1.22),在VPC-C的子网-C中创建云服务器ECS-C(10.0.1.33),三台云服务器均未绑定公网IP。具体操作,请参考 购买云服务器 。

  • 申请一个未绑定云资源的公网IP,本文使用EIP-X(180.XX.XX.44)。具体操作,请参考 申请公网IP 。

操作步骤

步骤一:配置中转路由器

创建一个中转路由器实例,配置相关路由,实现VPC-A、VPC-B分别与VPC-C互通,VPC-A与VPC-B彼此之间隔离。
本文以多个VPC同账号同地域为例,您可以参考如下操作配置,也可以参考 实现不同VPC之间的私网互通与隔离(同账号同地域) 。
在实际使用过程中,可能存在如下情况:
  • 多个VPC同账号不同地域,操作步骤请参考 实现不同VPC之间的私网互通与隔离(同账号跨地域) 。

  • 多个VPC不同账号同地域,操作步骤请参考  实现不同VPC之间的私网互通与隔离(跨账号同地域)。

  • VPC-A与VPC-B不同账号不同地域,操作步骤与实现不同VPC之间的私网互通与隔离(同账号跨地域) 和 实现不同VPC之间的私网互通与隔离(跨账号同地域) 同理 。

创建中转路由器实例及其路由表

  1. 登录 中转路由器控制台 。

  1. 单击“创建中转路由器”按钮。

  1. 参考下表,配置相关参数。

参数
说明
取值示例
地域
选择中转路由器实例所属的地域。
华北2(北京)
名称
输入中转路由器实例的名称。
TR-X
项目
选择中转路由器所属的项目。
default
标签
按需为中转路由器添加一个或多个用户标签。
不添加用户标签
  1. 单击“确定”按钮,完成创建中转路由器实例。

说明
中转路由器实例创建成功后,系统自动创建了TR系统路由表,请记录该TR系统路由表的名称。下文以RouteTable-default为例。
  1. 在中转路由器实例列表页面,单击目标中转路由器实例的名称。

  1. 选择“路由表”页签,单击TR路由表列表旁的“创建路由表”按钮。

  1. 输入TR自定义路由表名称R-Table-X。单击“确定”按钮,完成创建TR自定义路由表。

创建网络实例连接

参考以下步骤,依次创建3条网络实例连接,3条网络实例连接的配置分别如参数配置表中的取值示例一、取值示例二和取值示例三。
  1. 在中转路由器实例列表页面,单击目标中转路由器实例的名称。

  1. 在“同地域网络实例连接”页签, 单击“创建网络实例连接”按钮。

  1. 参考下表,配置相关参数。

参数
说明
取值示例一
取值示例二
取值示例三
中转路由器
默认为您选定的中转路由器实例。
TR-X
TR-X
TR-X
地域
默认与中转路由器实例的地域相同。
华北2(北京)
华北2(北京)
华北2(北京)
名称
待创建网络实例连接的名称。
Attach-VPC-A
Attach-VPC-B
Attach-VPC-C
网络实例类型
选择待创建网络实例连接的类型。
私有网络
私有网络
私有网络
私有网络
选择待关联的私有网络实例。
VPC-A
VPC-B
VPC-C
可用区及子网
选择连接点的所在可用区的子网。子网为网络实例连接的网卡分配私网IP地址。
可用区A,子网-A
可用区A,子网-B
可用区A,子网-C
关联转发
是否开启关联转发,并选择关联转发的TR路由表。开启后,来自该网络实例连接的流量,将按照其关联转发TR路由表的路由条目进行转发。
开启,RouteTable-default
开启,RouteTable-default
开启,R-Table-X
路由学习
是否为开启路由学习,并选择路由选择的TR路由表。开启后,指定TR路由表自动生成目标网段为该私有网络子网的网段,下一跳为该网络实例连接的路由条目。
开启,R-Table-X
开启,R-Table-X
开启,RouteTable-default
  1. 单击“确定”按钮,完成操作。

此时,两个TR路由表路由条目和关联转发情况如下:
TR路由表名称
目标网段
下一跳
关联转发
说明
RouteTable-default
10.0.1.0/24
Attach-VPC-C
Attach-VPC-A、Attach-VPC-B
中转路由器从Attach-VPC-A和Attach-VPC-B接收的访问10.0.1.0/24的流量将转发至Attach-VPC-C。
R-Table-X
172.16.1.0/24
Attach-VPC-A
Attach-VPC-C
中转路由器从Attach-VPC-C接收的访问 172.16.1.0/24的流量将转发至Attach-VPC-A。
192.168.1.0/24
Attach-VPC-B
中转路由器从Attach-VPC-C接收的访问192.168.1.0/24的流量将转发至Attach-VPC-B。

配置VPC路由表

  1. 登录 路由表控制台。

  1. 在顶部导航栏,选择项目和地域。

  1. 在路由表列表中,通过目标VPC的ID搜索路由表。

  1. 单击目标路由表名称。

  1. 在“路由条目 > 自定义路由”页签,单击“添加路由条目”按钮。

    • 参考下表,在VPC-A和VPC-B的路由表,均添加如下自定义路由。

参数
说明
取值示例
目标网段
指定为VPC-C的网段。
10.0.0.0/16
下一跳类型
选择路由条目的下一跳资源类型,将指向目标网段的流量转发到指定的资源。
中转路由器
下一跳
指定具体的下一跳资源。
TR-X
配置完成后,VPC-A和VPC-B内云资源访问10.0.0.0/16(VPC-C)的流量将路由至中转路由器TR-X。
    • 参考下表,在VPC-C的路由表,添加如下两条自定义路由。

参数
说明
取值示例一
取值示例二
目标网段
分别指定为VPC-A、VPC-B的网段。
172.16.0.0/16
192.168.0.0/16
下一跳类型
选择路由条目的下一跳资源类型,将指向目标网段的流量转发到指定的资源。
中转路由器
中转路由器
下一跳
指定具体的下一跳资源。
TR-X
TR-X
配置完成后,VPC-C内云资源访问172.16.0.0/16(VPC-A)和192.168.0.0/16(VPC-B)的流量将路由至中转路由器TR-X。
  1. 单击“确定”按钮,完成路由配置。

  1. 验证。以下步骤以Linux云服务器为例:

    1. 登录VPC-A云服务器实例ECS-A(172.16.1.11),验证能否与VPC-B、VPC-C的云服务器器ECS-B、ECS-C互通,即在命令行执行ping 192.168.1.22和ping 10.0.1.33。预期结果如下:

      • VPC-A中的ECS实例与VPC-B中的ECS实例相互隔离,即ECS-A与ECS-B无法ping通。

      • VPC-A中的ECS实例与VPC-C中的ECS实例能够互通,即ECS-A与ECS-C可以ping通。

    1. 同理,登录VPC-B、VPC-C中的ECS实例,验证VPC-A、VPC-B、VPC-C三者之间的互通与隔离。

步骤二:配置公网NAT网关

您可通过本操作,在VPC-C中创建一个全通模式的公网NAT网关。
  1. 登录 公网NAT网关控制台 。

  1. 在顶部导航栏,选择目标地域和项目,本文示例“华北2(北京)”和“default”。

  1. 单击“创建公网NAT网关”按钮。

  1. 参考下表,配置相关参数。

参数
说明
本文取值
计费类型
支持按量计费和包年包月。
按量计费
地域
选择公网NAT网关所在地域。
华北2(北京)
名称
设置公网NAT网关的名称。
NAT-X
计费方式
当计费类型为“按量计费”时,选择公网NAT网关的计费方式。支持 按规格计费 和 按使用量计费 。
说明
  • 默认为按规格计费。

  • 按使用量计费为邀测功能,且仅支持完成 企业认证 的账号试用。如需试用,请先完成实名认证,再联系客户经理为您开通功能权限。

按规格计费
规格
选择公网NAT网关的规格。
小型
私有网络
选择私有网络。
VPC-C|10.0.0.0/16
子网
下拉选择子网。
子网-C|10.0.1.0/24
项目
按需选择公网NAT网关所属的项目。
default
配置方式
当计费类型为“按量计费”时,选择公网NAT网关的配置方式。
  • 手动配置:创建完成后,您还需要手动绑定公网IP,配置SNAT规则或DNAT规则。

  • 自动配置(全通模式):自动配置一条0.0.0.0/0的SNAT规则。

自动配置(全通模式)
公网IP
当配置方式为“自动配置”时,下拉选择一个公网IP。
EIP-X
标签
按需为公网NAT网关添加一个或多个用户标签。
不添加用户标签
  1. 单击“确认订单”按钮。

  1. 请根据控制台指引查阅并确认相关协议,单击“立即购买”按钮,完成操作。

说明
若创建失败,请参考 创建公网NAT网关失败是什么原因 。

步骤三:配置NAT网关相关路由

配置TR路由表

  1. 登录 中转路由器控制台。

  1. 单击目标中转路由器实例的名称。

  1. 选择“路由表”页签,选中TR系统路由表RouteTable-default,右侧显示TR路由表详情页面。

  1. 在“路由条目”页签,单击“创建静态路由”按钮。

  1. 参考下表,配置相关参数。

参数
说明
取值示例
路由名称
输入静态路由的名称。
NAT-Gateway
目标网段
输入静态路由目标网段。
0.0.0.0/0
黑洞路由
选择静态路由是否为黑洞路由。
下一跳
选择下一跳网络实例连接。
Attach-VPC-C
  1. 单击“确定”按钮,完成操作。

配置VPC路由表

  1. 登录路由表控制台。

  1. 在顶部导航栏,选择目标项目和地域。

  1. 在路由表列表中,单击的VPC-A的路由表名称。

  1. 在“路由条目 > 自定义路由”页签,单击“添加路由条目”按钮。

  1. 参见下表,配置相关参数。

参数
说明
取值示例
目标网段
设置流量路由的目标网段。
0.0.0.0/0
下一跳类型
选择路由条目的下一跳资源类型
中转路由器
下一跳
根据下一跳类型,下拉选择资源。
TR-X
  1. 单击“确定”按钮,完成配置。

说明
如果VPC-B也需要使用公网NAT网关与公网互通,则您可按需选择如下方案:
  • 方案一:在VPC-B的路由表中也添加目标网段为0.0.0.0/0,下一跳TR-X的路由条目,此时VPC-A、VPC-B均共享VPC-C的公网NAT网关与公网互通,但VPC-A、VPC-B、VPC-C三者之间已彼此互通,即VPC-A与VPC-B已不再彼此隔离,可设置网络ACL或安全组控制VPC-A与VPC-B彼此之间的流量。

  • 方案二:在VPC-B中单独创建一个公网NAT网关,可保证VPC-A与VPC-B彼此之间隔离。

步骤四:验证

登录VPC-A云服务器实例ECS-A(172.16.1.11),在命令行执行ping 114.114.114.114。
ping通,则表示VPC-A的ECS-A可通过VPC-C的公网NAT网关访问公网,即VPC-A的云服务器可共享VPC-C的公网NAT网关。
说明
若ping不通,请参考 已配置SNAT规则的云服务器无法访问公网 。


不容错过
Powered By TOPYUN 云产品资讯