调用CreateRouteEntries接口在VPC路由器的路由表中批量添加自定义路由条目。

使用说明

  • CreateRouteEntries接口属于异步接口,即系统会返回一个实例ID,但该路由的创建尚未完成,系统后台的启动任务仍在进行。您可以调用DescribeRouteEntryList查询路由的创建状态:
    • 当路由处于Creating状态时,表示路由创建中。
    • 当路由处于Created状态时,表示路由创建完成。
  • CreateRouteEntries接口不支持在同一个VPC中并发批量创建自定义路由条目。
使用该接口为VPC路由器的路由表添加自定义路由条目时,请注意以下事项:
  • 同一个路由表中自定义路由条目不能超过200条。
  • 自定义路由条目的目标网段(DstCidrBlock)不能和VPC内的交换机的网段相同,也不能包含交换机的网段或者被交换机的网段包含。
  • 自定义路由条目的目标网段(DstCidrBlock)不能指向100.64.0.0/10,也不能被100.64.0.0/10包含。
  • 同一路由表下的路由条目的目标网段(DstCidrBlock)不允许相同。
  • 如果指定的目标网段(DstCidrBlock)是一个IP地址,会按照32位掩码来处理。
  • 多条自定义路由条目可以指向同一个下一跳(NextHop)。
  • 自定义路由条目的下一跳(NextHop)必须和路由表在同一个VPC。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateRouteEntries

系统规定参数。取值:CreateRouteEntries

RegionId String cn-hangzhou

路由表所属地域的ID。

您可以通过调用DescribeRegions接口获取地域ID。

RouteEntries.N.DstCidrBlock String 192.168.0.0/24

自定义路由条目的目标网段,支持IPv4和IPv6的目标网段。最多支持输入50个目标网段。需满足以下要求:

  • 目标网段不能指向100.64.0.0/10或被100.64.0.0/10包含。
  • 同一张路由表内的不同路由条目的目标网段不能相同。
RouteEntries.N.RouteTableId String vtb-bp145q7glnuzd****

要添加自定义路由条目的路由表ID。 最多支持输入50个路由表ID。

RouteEntries.N.IpVersion Integer IPv4

IP协议的版本。最多支持输入50个IP协议的版本。取值:

  • IPv4:IPv4协议。
  • IPv6:IPv6协议。
RouteEntries.N.NextHop String i-j6c2fp57q8rr4jlu****

自定义路由条目的下一跳实例的ID。最多支持输入50个实例ID。

RouteEntries.N.NextHopType String RouterInterface

自定义路由条目的下一跳的类型。最多支持输入50个下一跳类型。取值:

  • Instance(默认值):ECS实例。
  • HaVip:高可用虚拟IP。
  • RouterInterface:路由器接口。
  • NetworkInterface:弹性网卡。
  • VpnGateway:VPN网关。
  • IPv6Gateway:IPv6网关。
  • NatGateway:NAT网关。
  • Attachment:转发路由器。
  • VpcPeer:VPC对等连接。
RouteEntries.N.Name String test

要添加的自定义路由条目的名称。最多支持输入50个名称。

名称长度为1~128个字符,不能以http://https://开头。

RouteEntries.N.Describption String test

自定义路由条目的描述信息。最多支持输入50个描述。

描述长度为1~256个字符,不能以http://https://开头。

返回数据

名称 类型 示例值 描述
SuccessCount Integer 2

添加成功的路由条目数。

FailedCount Integer 2

添加失败的路由条目数。

RequestId String 0ED8D006-F706-4D23-88ED-E11ED28DCAC0

请求ID。

FailedRouteEntries Array of FailedRouteEntries

添加失败的路由条目数的详细信息。

DstCidrBlock String 192.168.0.0/24

添加失败的自定义路由条目的目标网段。

NextHop String i-j6c2fp57q8rr4jlu****

添加失败的自定义路由条目的下一跳实例的ID。

FailedCode String VPC_ROUTE_ENTRY_CIDR_BLOCK_DUPLICATE

失败的错误码。

FailedMessage String Specified CIDR block is already exists, entry.cidrBlock=xxxx

失败的具体报错信息。

RouteEntryIds Array of String rte-sn6vjkioxte1gz83z****

添加成功的自定义路由条目返回的实例ID。

示例

请求示例

http(s)://[Endpoint]/?Action=CreateRouteEntries
&RegionId=cn-hangzhou
&RouteEntries=[{"DstCidrBlock":"192.168.0.0/24","RouteTableId":"vtb-bp145q7glnuzd****","NextHop":"i-j6c2fp57q8rr4jlu****","NextHopType":"RouterInterface","Name":"test","Describption":"test"}]
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateRouteEntriesResponse>
    <SuccessCount>2</SuccessCount>
    <FailedCount>2</FailedCount>
    <RequestId>0ED8D006-F706-4D23-88ED-E11ED28DCAC0</RequestId>
    <FailedRouteEntries>
        <DstCidrBlock>192.168.0.0/24</DstCidrBlock>
        <NextHop>i-j6c2fp57q8rr4jlu****</NextHop>
        <FailedCode>VPC_ROUTE_ENTRY_CIDR_BLOCK_DUPLICATE</FailedCode>
        <FailedMessage>Specified CIDR block is already exists, entry.cidrBlock=xxxx</FailedMessage>
    </FailedRouteEntries>
    <RouteEntryIds>rte-sn6vjkioxte1gz83z****</RouteEntryIds>
</CreateRouteEntriesResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "SuccessCount" : 2,
  "FailedCount" : 2,
  "RequestId" : "0ED8D006-F706-4D23-88ED-E11ED28DCAC0",
  "FailedRouteEntries" : [ {
    "DstCidrBlock" : "192.168.0.0/24",
    "NextHop" : "i-j6c2fp57q8rr4jlu****",
    "FailedCode" : "VPC_ROUTE_ENTRY_CIDR_BLOCK_DUPLICATE",
    "FailedMessage" : "Specified CIDR block is already exists, entry.cidrBlock=xxxx"
  } ],
  "RouteEntryIds" : [ "rte-sn6vjkioxte1gz83z****" ]
}

错误码

HttpCode 错误码 错误信息 描述
400 DryRunOperation Request validation has been passed with DryRun flag set. DryRun校验通过。

访问错误中心查看更多错误码。