更新时间:2024-11-08 GMT+08:00

路由表和路由概述

路由表

路由表由一系列路由规则组成,用于控制VPC内出入子网的流量走向。VPC中的每个子网都必须关联一个路由表,一个子网只能关联一个路由表,但一个路由表可以同时关联至多个子网。

路由表支持添加IPv4和IPv6路由。

图1 路由表
  • 默认路由表:用户创建VPC时,系统会自动为其生成一个默认路由表,创建子网后,子网会自动关联默认路由表。默认路由表可以确保VPC内,不同子网的内网网络互通。
    • 您可以在默认路由表中添加、删除和修改路由规则,但不能删除默认路由表。
    • 创建VPN、云专线、云连接服务时,默认路由表会自动下发路由,该路由不能删除和修改。
  • 自定义路由表:您可以直接使用默认路由表,也可以为具有相同路由规则的子网创建一个自定义路由表,并将自定义路由表与子网关联。自定义路由表可以删除。

    子网关联自定义路由表仅影响子网的出流量走向,入流量仍然匹配子网所在VPC的默认路由表。

默认情况下,您没有创建自定义路由表的配额,因此创建自定义路由表时,请您根据界面提示“申请扩大配额”,具体请参见申请扩大配额

路由

您可以在默认路由表和自定义路由表中添加路由,路由包括目的地址、下一跳类型、下一跳地址等信息,可以决定网络流量的走向。路由分为系统路由和自定义路由。

  • 系统路由:系统路由一般为VPC服务或者其他服务(比如VPN、DC等)自动在路由表添加的路由,无法删除或修改。
    创建路由表时,VPC服务会自动在路由表中添加下一跳为Local的路由,通常情况下,路由表中有以下Local的路由:
    • 目的地址是100.64.0.0/10,该路由用于子网内实例访问云上公共服务,比如访问DNS服务器等。
    • 目的地址是198.19.128.0/20,表示系统内部服务使用的网段地址,比如VPCEP等服务。
    • 目的地址是127.0.0.0/8,表示本地回环地址。
    • 目的地址是子网网段,该路由用于当前VPC内,不同子网的内网网络互通。
      您在创建子网时,开启IPv6功能,系统将自动为当前子网分配IPv6网段,就可以在路由表中看到IPv6路由。子网网段目的地址示例如下:
      • IPv4地址:192.168.2.0/24。
      • IPv6地址:2407:c080:802:be7::/64。
  • 自定义路由:路由表创建完成后,您可以添加自定义路由来控制网络流量的走向,需要指定路由的目的地址和下一跳等信息。除了手动添加自定义路由,当您使用其他云服务时(比如云容器引擎CCE或者NAT网关),其他服务会自动在VPC路由表中添加自定义路由。

    路由表包括默认路由表和自定义路由表,不同路由表中支持添加自定义路由的下一跳类型有差异,详情请参见表1表2。相比自定义路由表,默认路由表支持添加自定义路由的下一跳类型较少,是由于部分服务(比如VPN、云专线、云连接等)会自动在默认路由表中添加路由,无需您手动在默认路由表中添加自定义路由。

    表1 默认路由表支持的下一跳类型

    下一跳类型

    说明

    服务器实例

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例。

    扩展网卡

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的扩展网卡。

    辅助弹性网卡

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的辅助弹性网卡。

    NAT网关

    将指向目的地址的流量转发到一个NAT网关。

    对等连接

    将指向目的地址的流量转发到一个对等连接。

    虚拟IP

    将指向目的地址的流量转发到一个虚拟IP地址,可以通过该虚拟IP地址将流量转发到主备ECS。

    VPC终端节点

    将指向目的地址的流量转发到一个VPC终端节点。

    云容器引擎

    将指向目的地址的流量转发到一个云容器引擎的节点。

    企业路由器

    将指向目的地址的流量转发到一个企业路由器。

    云防火墙

    将指向目的地址的流量转发到一个云防火墙。

    全域互联网网关

    将指向目的地址的流量转发到一个全域互联网网关。

    表2 自定义路由表支持下一跳类型

    下一跳类型

    说明

    服务器实例

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例。

    扩展网卡

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的扩展网卡。

    裸金属服务器自定义网络

    将指向目的地址的流量转发到一个裸金属服务器自定义网络。

    VPN网关

    将指向目的地址的流量转发到一个VPN网关。

    云专线网关

    将指向目的地址的流量转发到一个云专线网关。

    云连接

    将指向目的地址的流量转发到云连接。

    辅助弹性网卡

    将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的辅助弹性网卡。

    NAT网关

    将指向目的地址的流量转发到一个NAT网关。

    对等连接

    将指向目的地址的流量转发到一个对等连接。

    虚拟IP

    将指向目的地址的流量转发到一个虚拟IP地址,可以通过该虚拟IP地址将流量转发到主备ECS。

    VPC终端节点

    将指向目的地址的流量转发到一个VPC终端节点。

    云容器引擎

    将指向目的地址的流量转发到一个云容器引擎的节点。

    企业路由器

    将指向目的地址的流量转发到一个企业路由器。

    云防火墙

    将指向目的地址的流量转发到一个云防火墙。

    全域互联网网关

    将指向目的地址的流量转发到一个全域互联网网关。

    个别由系统下发的路由可供用户修改和删除,这取决于创建对端服务时是否已设置目的地址。

    例如,创建NAT网关时,系统会自动下发一条自定义类型的路由,没有明确指定目的地址(默认为0.0.0.0/0),此时用户可修改该目的地址。而创建VPN网关时,可以指定远端子网,也就是路由的目的地址,系统将下发系统类型的路由。如果在路由表页面更改路由将会导致与对端数据不一致,您可以前往对端服务页面修改远端子网来调整路由表中的路由规则。

    不支持手动在VPC路由表中添加下一跳类型为“VPC终端节点”或者“云容器引擎”的路由,通常您在配置VPC终端节点或者云容器引擎服务时,由该服务自动添加在VPC路由表中。

路由表和路由的使用限制

当您创建VPC时,系统会同步为VPC创建一个默认路由表。除此之外,您还可以创建自定义路由表。
  • 在一个VPC内,最多可关联5个路由表,包括1个默认路由表和4个自定义路由表。
  • 在一个VPC内的所有路由表中,最多可容纳1000条路由。系统自动创建的路由,即类型为“系统”的路由不占用该配额。
在VPC路由表中,存在系统添加的Local路由以及自定义路由。
  • 通常情况下,自定义路由的目的地址不能与系统添加的Local路由的目的地址重叠。Local路由的目的地址一般有子网网段地址,以及系统内部通信的网段地址。
  • 您无法在VPC路由表中添加目的地址相同的两条自定义路由,即使路由的下一跳类型不同也不行。
  • 在VPC路由表中,路由的优先级说明请参见表3
    表3 VPC路由优先级说明

    路由优先级

    说明

    Local路由最优先匹配

    Local路由用于VPC内通信的系统默认路由,优先级最高。

    最精确路由优先匹配

    除去Local路由,当路由表中同时有多条路由规则可以匹配目的 IP 地址时,此时遵循最长匹配原则,即优先采用掩码最长,最精确匹配的一条路由并确定下一跳。

    示例:
    • 流量的目的地址为192.168.1.12/32。
    • 路由A的目的地址为192.168.0.0/16,下一跳为ECS-A。
    • 路由B的目的地址为192.168.1.0/24,下一跳为对等连接。

    则根据最长匹配原则,该流量和路由B的目的地址匹配度更高,将去往对等连接。

    弹性公网IP(EIP)优先级高于默认路由

    当路由表中存在默认路由(默认路由目的地址为0.0.0.0/0,表示匹配任何流量),并且子网内的ECS关联了EIP,则EIP的优先级高于默认路由,流量将会通过EIP访问公网。

    示例:
    • 路由A的目的地址为0.0.0.0/0,下一跳为NAT网关。
    • VPC子网内的ECS关联了EIP。

    则ECS出方向的流量将去往公网,不会去往NAT网关。

    图2 VPC路由表

自定义路由表配置流程

图3 自定义路由表配置流程
表4 自定义路由表配置流程说明

序号

步骤

说明

操作指导

1

创建自定义路由表

当默认路由表无法满足您的使用需求时,您可以创建自定义路由表。

子网关联自定义路由表仅影响子网的出流量走向,入流量仍然匹配子网所在VPC的默认路由表。

创建自定义路由表

2

添加自定义路由

您可以通过添加自定义路由来控制网络流量的走向,您需要指定路由的目的地址和下一跳等信息。

在路由表中添加路由

3

将路由表关联至子网

路由表和子网关联后,该路由表的路由规则将对该子网生效,子网下的云资源将启用新的路由规则。

将路由表关联至子网