# 路由表和路由概述
#### 路由表
路由表由一系列路由规则组成，用于控制VPC内出入子网的流量走向。VPC中的每个子网都必须关联一个路由表，一个子网只能关联一个路由表，但一个路由表可以同时关联多个子网。
路由表一般分为默认路由表和自定义路由表，支持添加IPv4和IPv6路由，路由表的详细介绍参见[表1]。
图1VPC路由表和路由示意图   
![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002563808381.png)
 表1路由表和路由介绍 
| 路由表类型       | 路由表说明                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 示例                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| **默认路由表** | 用户创建VPC时，系统会自动为其生成一个默认路由表，创建子网后，子网会自动关联默认路由表。 默认路由表可以确保VPC内，不同子网的内网网络互通。 - 您可以在默认路由表中添加、删除和修改路由规则，但不能删除默认路由表。  - 创建VPN、云专线、云连接服务时，默认路由表会自动下发路由，该路由不能删除和修改。                                                                                                                            | 如[图1]所示，VPC-A中包含默认路由表（路由表A1），子网Subnet-A01已关联该默认路由表。 VPC内各子网之间的互相通信，依托Local路由实现，当Subnet-A01访问Subnet-A02时，流量会自动匹配路由表A1中目的地址为192.168.2.0/24的local路由，从而确保流量能够正常抵达目标子网Subnet-A02。                                                                |
| **自定义路由表** | 您可以直接使用默认路由表，也可以为具有相同路由规则的子网创建一个自定义路由表，并将自定义路由表与子网关联。自定义路由表可以删除。 **通常情况下，子网关联自定义路由表仅影响子网的出流量走向，入流量（比如从对等连接、云专线、VPN进入VPC内的流量）仍然匹配子网所在VPC的默认路由表。** **例外情况下，从企业路由器进入VPC的流量，将依据您创建VPC连接时所选子网关联的自定义路由表进行转发，而非默认路由表。** 说明： 默认情况下，您没有创建自定义路由表的配额，因此创建自定义路由表时，请您根据界面提示"申请扩大配额"，具体请参见[申请扩大配额](https://support.huaweicloud.com/usermanual-vpc/vpc_faq_0051.html)。 | 如[图1]所示，VPC-A中除默认路由表（路由表 A1）外，还配置了自定义路由表（路由表 A2），子网Subnet-A02已关联该自定义路由表。 Subnet-A02需要与VPC-B的子网Subnet-B01进行通信，通过VPC-A与VPC-B之间的对等连接（Peering-AB）实现。当Subnet-A02访问Subnet-B01时，流量会匹配路由表A2中目的地址为172.16.0.0/24的对等连接路由，保障流量正常转发至目标子网Subnet-B01。  |
   
#### 特性讲解视频
本视频为您介绍VPC路由表和路由功能，包括路由表的作用、路由的类型、路由的作用以及路由优先级。
<video controls="controls" preload="none" id="object19142421144" class="idp-external-video" src="https://res-video.hc-cdn.com/cloudbu-site/china/zh-cn/vpc-video/1730779533887216465.mp4" title="VPC路由表和路由功能介绍" poster="https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002404053173.jpg" style="width:100%;height:auto;max-width:600px"></video>
#### 路由
您可以在默认路由表和自定义路由表中添加路由，路由包括目的地址、下一跳类型、下一跳地址等信息，可以决定网络流量的走向。路由分为系统路由和自定义路由。
- 系统路由：系统路由一般为VPC服务或者其他服务（比如VPN、DC等）自动在路由表添加的路由，无法删除或修改。 创建路由表时，VPC服务会自动在路由表中添加下一跳为Local的路由，通常情况下，路由表中的Local路由说明请参见[表2]。
   表2Local路由说明 
  | Local路由目的地址      | 目的地址说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  |:---|:---|
  | 100.64.0.0/10    | 该地址为云上公共服务网段地址，用于子网内实例访问云上公共服务，比如访问DNS服务器等。                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | 198.19.128.0/20 | 该地址为系统内部服务使用的网段地址，比如VPCEP等服务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  | 127.0.0.0/8     | 该地址为本地回环地址。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | 子网网段地址           | 该地址为VPC内的子网网段地址，用于实现当前VPC内不同子网的内网网络互通。 您在创建子网时，可以指定子网的IPv4网段。如果勾选子网IPv6网段选项，系统将自动为当前子网分配IPv6网段，就可以在路由表中看到IPv6路由。示例如下： - IPv4子网网段地址：192.168.2.0/24  - IPv6子网网段地址：2407:c080:802:be7::/64   |
     
  
- 自定义路由：路由表创建完成后，您可以添加自定义路由来控制网络流量的走向，需要指定路由的目的地址和下一跳等信息。除了手动添加自定义路由，当您使用其他云服务时（比如云容器引擎CCE或者NAT网关），其他服务会自动在VPC路由表中添加自定义路由。 路由表包括默认路由表和自定义路由表，不同路由表中支持添加自定义路由的下一跳类型有差异，详情请参见[表3]和[表4]。相比自定义路由表，默认路由表支持添加自定义路由的下一跳类型较少，是由于部分服务（比如VPN、云专线、云连接等）会自动在默认路由表中添加路由，无需您手动在默认路由表中添加自定义路由。
   表3默认路由表支持的下一跳类型 
  | 下一跳类型   | 说明                                            |
  |:---|:---|
  | 服务器实例  | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例。                  |
  | 扩展网卡  | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的扩展网卡。               |
  | 辅助弹性网卡 | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的辅助弹性网卡。          |
  | NAT网关   | 将指向目的地址的流量转发到一个NAT网关。                        |
  | 对等连接  | 将指向目的地址的流量转发到一个对等连接。                        |
  | 虚拟IP   | 将指向目的地址的流量转发到一个虚拟IP地址，可以通过该虚拟IP地址将流量转发到主备ECS。 |
  | VPC终端节点 | 将指向目的地址的流量转发到一个VPC终端节点。                      |
  | 云容器引擎 | 将指向目的地址的流量转发到一个云容器引擎的节点。                      |
  | 企业路由器  | 将指向目的地址的流量转发到一个企业路由器。                        |
  | 云防火墙 | 将指向目的地址的流量转发到一个云防火墙。                         |
  | 全域互联网网关 | 将指向目的地址的流量转发到一个全域互联网网关。                      |
     
   表4自定义路由表支持下一跳类型 
  | 下一跳类型   | 说明                                           |
  |:---|:---|
  | 服务器实例   | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例。                |
  | 扩展网卡     | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的扩展网卡。           |
  | 裸金属服务器自定义网络                    | 将指向目的地址的流量转发到一个裸金属服务器自定义网络。                                        |
  | VPN网关   | 将指向目的地址的流量转发到一个VPN网关。                        |
  | 云专线网关   | 将指向目的地址的流量转发到一个云专线网关。                         |
  | 云连接      | 将指向目的地址的流量转发到云连接。                           |
  | 辅助弹性网卡                          | 将指向目的地址的流量转发到虚拟私有云内的一台ECS实例的辅助弹性网卡。                                  |
  | NAT网关    | 将指向目的地址的流量转发到一个NAT网关。                        |
  | 对等连接    | 将指向目的地址的流量转发到一个对等连接。                        |
  | 虚拟IP      | 将指向目的地址的流量转发到一个虚拟IP地址，可以通过该虚拟IP地址将流量转发到主备ECS。 |
  | VPC终端节点 | 将指向目的地址的流量转发到一个VPC终端节点。                      |
  | 云容器引擎                            | 将指向目的地址的流量转发到一个云容器引擎的节点。                                               |
  | 企业路由器                          | 将指向目的地址的流量转发到一个企业路由器。                                                |
  | 云防火墙                           | 将指向目的地址的流量转发到一个云防火墙。                                                |
  | 全域互联网网关                        | 将指向目的地址的流量转发到一个全域互联网网关。                                             |
     
  ![](https://support.huaweicloud.com/usermanual-vpc/public_sys-resources/note_3.0-zh-cn.png)
  通常情况下，由服务自动添加至VPC路由表的路由不支持修改和删除。但在某些特定情况下，如果添加路由的服务在创建路由时设置了目的地址，则这些路由可供用户修改和删除。
  例如，创建NAT网关时，会自动添加一条自定义类型的路由，没有明确指定目的地址（默认为0.0.0.0/0），此时用户可修改该目的地址。而创建VPN网关时，可以指定远端子网作为路由的目的地址，VPN将添加一条系统类型的路由。如果在VPC路由表页面更改路由，将会导致与VPN侧数据不一致，您可以前往VPN服务页面修改远端子网来调整路由表中的路由规则。
  不支持手动在VPC路由表中添加下一跳类型为"VPC终端节点"或者"云容器引擎"的路由，通常您在配置VPC终端节点或者云容器引擎服务时，由该服务自动添加在VPC路由表中。
  
总体来说，系统路由由系统自动添加，保障VPC内部网络互通与公共云服务访问；自定义路由由用户手动配置，控制组网流量走向。两者详细对比如[表5]所示。
 表5系统路由和自定义路由对比 
| **对比项**   | **默认** **路由**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | **自定义路由**                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| 定义          | - VPC自动添加的路由，用于VPC内子网互通和访问云上公共服务    - 其他服务（如VPN、DC等）自动添加的路由，用于跨网络互联的流量转发                                                                                                                                                                                                                          | 由用户手动添加或由其他云服务自动添加的路由，用于自定义流量转发路径                                                                                                                                                                                                                                                             |
| IPv4路由   | 1. 子网网段路由：目的地址为VPC内各子网网段，实现子网间内网互通  2. 系统内部服务路由：目的地址为198.19.128.0/20，用于访问VPCEP等系统内部服务  3. 本地回环路由：目的地址为127.0.0.0/8  4. 其他云服务下发的系统路由   | 目的地址为用户自定义的IPv4网段，默认路由表与自定义路由表支持的下一跳类型不同，详见[表3]和[表4]                                                                                     |
| IPv6路由      | 子网开启IPv6后，系统自动添加子网IPv6网段路由，如2407:c080:802:be7::/64                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 目的地址为用户自定义的IPv6网段，默认路由表与自定义路由表支持的下一跳类型不同，详见[表3]和[表4]                                                                                      |
| 添加方式     | 由VPC或其他云服务自动添加，不支持手动添加                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 1. 用户在路由表中手动添加  2. 创建云服务（如NAT网关、CCE等）时由服务自动添加   |
| 是否可修改/删除 | 不可修改或删除                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 可修改或删除                                                                                                                                                                                                                                                                                      |
| 是否可自行创建    | 不可自行创建                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 可自行创建                                                                                                                                                                                                                                                                                        |
| 路由类型标识        | 系统                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 自定义                                                                                                                                                                                                                                                                                            |
   
#### 路由表工作原理
VPC的每个子网都需要和路由表关联，子网可以关联默认路由表，或者关联自定义路由表。子网和路由表关联的更多详细信息，请参见[更换子网关联的路由表](https://support.huaweicloud.com/usermanual-vpc/vpc_route01_0008.html)。
[图2]展示了VPC-A下的两个子网，分别关联不同的路由表，实现不同的网络访问需求：
- 子网1关联默认路由表，其中包含一条指向VPN网关的路由，使子网1内的ECS能够通过VPN访问云下IDC。
- 子网2关联自定义路由表，其中包含一条指向NAT网关的路由，使子网2能够通过NAT网关及EIP访问公网。
图2**子网关联默认路由表和自定义路由**   
![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002352028449.png)
#### 路由优先级
在VPC路由表中，**路由优先级从高到低匹配顺序为：Local路由＞明细路由＞弹性公网IP（EIP）路由＞默认路由** 。各类型路由的详细说明请参见[表6]。
 表6VPC路由优先级说明 
| 序号 | 路由类型             | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| 1    | Local路由         | **Local路由是VPC内通信的系统路由，优先级最高** ， [表7]中提供了Local路由示例。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| 2   | 明细路由            | **除去Local路由，当路由表中同时有多条路由规则可以匹配目的** **IP** **地址时，此时遵循最长匹配原则**，即优先采用掩码最长，最精确匹配的一条路由并确定下一跳。 例如，进入VPC的某流量目的地址为192.168.1.12/32，VPC路由表中有以下路由： - 路由A的目的地址为192.168.0.0/16，下一跳为ECS-A。  - 路由B的目的地址为192.168.1.0/24，下一跳为对等连接。  - 路由C的目的地址为0.0.0.0/0，下一跳为NAT网关。   根据最长匹配原则，该流量和路由B的目的地址匹配度更高，将去往对等连接。 |
| 3   | 弹性公网IP（EIP）路由 | **如果子网内的** **ECS关联了EIP** **，则EIP的优先级高于路由表中的默认路由**（目的地址为0.0.0.0/0），此时流量将会通过EIP访问公网。 示例： - 路由A的目的地址为0.0.0.0/0，下一跳为NAT网关。  - VPC子网内的ECS-A关联了EIP。   则ECS-A出方向的流量将去往公网，不会去往NAT网关。                                                                                                                                                                                                      |
| 4     | 默认路由            | **目的地址为0.0.0.0/0的是默认路由，可以匹配任何流量。按照最长匹配原则，0.0.0.0/0优先级最低。**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
#### 路由表配置示例
通过在VPC路由表中配置不同下一跳类型的路由，可以实现您访问特定网络的需求。例如，您可以设置下一跳为对等连接以实现VPC之间的通信，或者设置下一跳为NAT网关以访问公网网络。
- [通过对等连接路由实现跨VPC互通]
  如[图3]所示，区域A内，在VPC-A和VPC-B之间建立对等连接peering-AB，并在两个VPC的路由表中分别添加指向对端VPC的路由，从而连通VPC-A和VPC-B之间的网络。
  图3通过对等连接连通同区域VPC   
  ![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000001953808426.png)
- [通过企业路由器ER路由实现跨VPC互通]
  如[图4]所示，在区域A内创建一个企业路由器ER，并将VPC接入ER内。系统会自动在VPC路由表中添加指向ER的路由，同时在ER路由表中也会添加指向VPC的路由。通过这种方式，ER能够在4个VPC之间转发流量，实现VPC之间的网络连接。
  图4通过企业路由器连通同区域VPC   
  ![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000001953801082.png)
- [通过NAT网关路由实现VPC内ECS访问公网]
  如[图5]所示，在区域A内，VPC-A的子网Subnet-A01内的ECS需要访问公网。首先在子网Subnet-NAT中创建一个公网NAT网关，其次在公网NAT网关中配置Subnet-A01子网网段对应的SNAT规则，则系统将自动在VPC-A的路由表中添加一条指向NAT网关的路由，通过该路由，可以将ECS流量转发至NAT网关，并通过EIP实现对公网的访问。
  图5通过NAT网关实现VPC内ECS访问公网   
  ![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002352212973.png)
- [通过云专线DC实现云上VPC访问云下IDC]
  如[图6]所示，云上VPC-A需访问云下IDC时，将VPC接入云专线DC并在远端子网中添加云下IDC网段，系统会自动在VPC路由表中添加指向DC的路由，目的地址为云下IDC网段及本端/远端网关。ECS流量经该路由转发至DC虚拟网关，再经虚拟接口通过DC物理专线实现云上与云下网络互通。
  图6通过云专线DC实现云上VPC访问云下IDC   
  ![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002664621393.png)
- [通过云连接实现跨账号跨区域VPC互通]
  如[图7]所示，账号A下区域A的VPC-A需与账号B下区域B的VPC-B互通时，创建云连接实例并将两个VPC接入，系统自动在各VPC路由表中添加指向CC的路由，即可通过云连接实例实现跨账号跨区域VPC互通。
  图7通过云连接实现跨账号跨区域VPC互通   
  ![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000002655938380.png)
#### 路由表和路由的使用限制
当您创建VPC时，系统会同步为VPC创建一个默认路由表。除此之外，您还可以创建自定义路由表。
- 在一个VPC内，最多可关联5个路由表，包括1个默认路由表和4个自定义路由表。
- 在一个VPC内的所有路由表中，最多可容纳1000条路由。系统自动创建的路由，即类型为"系统"的路由不占用该配额。
 
在VPC路由表中，存在系统添加的Local路由以及自定义路由。
- 通常情况下，自定义路由的目的地址不能与系统添加的Local路由的目的地址重叠。Local路由的目的地址一般有子网网段地址，以及系统内部通信的网段地址。 例如，若VPC-A下存在一个IPv4/IPv6双栈子网，其IPv4子网网段为192.168.2.0/24，IPv6子网网段为2407:c080:802:be7::/64，系统将自动添加相应的Local路由，如[表7]所示。在此情况下，用户设置的自定义路由的目的地址，不能与这些已有的Local路由产生重叠。
   表7VPC-A Local路由示例 
  | Local路由目的地址            | 目的地址说明                 |
  |:---|:---|
  | 192.168.2.0/24        | IPv4子网网段地址               |
  | 2407:c080:802:be7::/64 | IPv6子网网段地址              |
  | 100.64.0.0/10          | 云上公共服务网段地址，如DNS等服务     |
  | 198.19.128.0/20       | 系统内部服务使用的网段地址，如VPCEP等服务 |
  | 127.0.0.0/8           | 本地回环地址                  |
     
  
- 您无法在VPC路由表中添加目的地址相同的两条自定义路由，即使路由的下一跳类型不同也不行。
 
#### 自定义路由表配置流程
图8自定义路由表配置流程   
![](https://support.huaweicloud.com/usermanual-vpc/zh-cn_image_0000001908228884.png)
表8自定义路由表配置流程说明 
| 序号  | 步骤       | 说明                                         | 操作指导                                                                               |
|:---|:---|:---|:---|
| 1  | 创建自定义路由表 | 当默认路由表无法满足您的使用需求时，您可以创建自定义路由表。               | [创建自定义路由表](https://support.huaweicloud.com/usermanual-vpc/vpc_route01_0005.html)     |
| 2  | 添加自定义路由   | 您可以通过添加自定义路由来控制网络流量的走向，您需要指定路由的目的地址和下一跳等信息。 | [在路由表中添加路由](https://support.huaweicloud.com/usermanual-vpc/vpc_route01_0006.html)  |
| 3 | 将路由表关联至子网 | 路由表和子网关联后，该路由表的路由规则将对该子网生效，子网下的云资源将启用新的路由规则。 | [将路由表关联至子网](https://support.huaweicloud.com/usermanual-vpc/vpc_route01_0007.html) |
   
