すべてのプロダクト
Search
ドキュメントセンター

:CreateRouteEntry

最終更新日:Mar 15, 2025

vRouter または仮想ボーダールータ (VBR) のルートテーブルにカスタムルートエントリを追加します。

使用上の注意

  • CreateRouteEntry は非同期操作です。リクエストが送信されると、システムはリクエスト ID を返し、バックグラウンドでタスクを実行します。DescribeRouteEntryList 操作を呼び出して、タスクのステータスをクエリできます。
    • ルートが Creating 状態の場合、ルートは追加中です。
    • ルートが Created 状態の場合、ルートは追加済みです。
  • 一定期間内に CreateRouteEntry を繰り返し呼び出すことはできません。
この操作を呼び出して vRouter のルートテーブルにカスタムルートエントリを追加する場合は、次の項目に注意してください。
説明 プレフィックスリストからルートエントリを追加する場合、クォータの使用量は、既存のルートエントリの数とプレフィックスリストのルートエントリの最大数を追加することで計算されます。
  • 1 つのルートテーブルには、最大 200 個のカスタムルートエントリを含めることができます。
  • カスタムルートエントリの宛先 CIDR ブロック (DestinationCidrBlock) は、VPC 内の vSwitch の CIDR ブロックと同じ、またはそのサブセットにすることはできません。宛先 CIDR ブロックには、vSwitch の CIDR ブロックを含めることができます。
  • カスタムルートエントリの宛先 CIDR ブロック (DestinationCidrBlock) は、100.64.0.0/10 またはそのサブセットにすることはできません。
  • 同じルートテーブル内のルートエントリの宛先 CIDR ブロック (DestinationCidrBlock) は一意である必要があります。
  • 宛先 CIDR ブロック (DestinationCidrBlock) を指定するときにマスク長を含めない場合、宛先 CIDR ブロックはマスク長が 32 ビットのホスト IP アドレスと見なされます。
  • 複数カスタムルートエントリを同じネクストホップ (NextHopId) にポイントできます。
  • カスタムルートエントリのネクストホップ (NextHopId) は、ルートテーブルと同じ VPC に属している必要があります。
  • NextHopList を指定することで、等価コストマルチパス (ECMP) ルーティングを設定できます。
    • 非 ECMP ルートエントリを追加する場合は、DestinationCidrBlockNextHopType、および NextHopId を指定する必要があり、NextHopList を指定することはできません。
    • ECMP ルーティングのルートエントリを追加する場合は、DestinationCidrBlockNextHopList を指定する必要があり、NextHopType または NextHopId を指定することはできません。
この操作を呼び出して VBR のルートテーブルにカスタムルートエントリを追加する場合は、次の制限に注意してください。
  • 1 つのルートテーブルには、最大 200 個のカスタムルートエントリを含めることができます。
  • NextHopList はサポートされていません。
  • カスタムルートエントリの宛先 CIDR ブロック (DestinationCidrBlock) は、100.64.0.0/10 またはそのサブセットにすることはできません。
  • 同じルートテーブル内のルートエントリの宛先 CIDR ブロック (DestinationCidrBlock) は一意である必要があります。
  • 宛先 CIDR ブロック (DestinationCidrBlock) を指定するときにマスク長を含めない場合、宛先 CIDR ブロックはマスク長が 32 ビットのホスト IP アドレスと見なされます。
  • 複数カスタムルートエントリを同じネクストホップ (NextHopId) にポイントできます。
  • カスタムルートエントリのネクストホップ (NextHopId) は、VBR に関連付けられたルーターインターフェースである必要があります。
  • VBR が アクティブ 状態であり、VBR に関連付けられた Express Connect 回線が 有効 状態であり、支払い遅延のためにロックされていない場合にのみ、ルートエントリを追加できます。
  • 非 ECMP ルートエントリのみがサポートされています。非 ECMP ルートエントリを追加する場合は、DestinationCidrBlockNextHopType、および NextHopId を指定する必要があり、NextHopList を指定することはできません。

デバッグ

OpenAPI エクスプローラーは署名値を自動的に計算します。便宜上、OpenAPI エクスプローラーでこの操作を呼び出すことをお勧めします。OpenAPI エクスプローラーは、さまざまな SDK の操作のサンプルコードを動的に生成します。

リクエストパラメーター

パラメーター タイプ 必須 説明
Action String Yes CreateRouteEntry

実行する操作。値を CreateRouteEntry に設定します。

RegionId String No cn-hangzhou

ルートテーブルのリージョン ID。

DescribeRegions 操作を呼び出して、最新のリージョンリストをクエリできます。

RouteTableId String Yes vtb-bp145q7glnuzd****

カスタムルートエントリを追加するルートテーブルの ID。

DestinationCidrBlock String Yes 192.168.0.0/24

カスタムルートエントリの宛先 CIDR ブロック。IPv4 と IPv6 の両方の CIDR ブロックがサポートされています。宛先 CIDR ブロックが次の要件を満たしていることを確認してください。

  • 宛先 CIDR ブロックは 100.64.0.0/10 または 100.64.0.0/10 のサブセットではありません。
  • カスタムルートエントリの宛先 CIDR ブロックは、同じルートテーブル内の他のルートエントリの宛先 CIDR ブロックとは異なります。
NextHopId String No i-j6c2fp57q8rr4jlu****

カスタムルートエントリのネクストホップの ID。

ClientToken String No 02fb3da4-130e-11e9-8e44-001****

リクエストのべき等性を確保するために使用されるクライアントトークン。

クライアントを使用してトークンを生成できますが、トークンが異なるリクエスト間で一意であることを確認する必要があります。トークンには ASCII 文字のみを含めることができます。

説明 このパラメーターを指定しない場合、システムは リクエスト IDクライアントトークン として自動的に使用します。リクエスト ID はリクエストごとに異なる場合があります。
RouteEntryName String No test

追加するカスタムルートエントリの名前。

名前は 1 ~ 128 文字で、http:// または https:// で始めることはできません。

Description String No test

カスタムルートエントリの説明。

説明は 1 ~ 256 文字で、http:// または https:// で始めることはできません。

NextHopType String No RouterInterface

カスタムルートエントリのネクストホップのタイプ。有効な値:

  • Instance: Elastic Compute Service (ECS) インスタンス。これはデフォルト値です。
  • HaVip: 高可用性仮想 IP アドレス (HAVIP)。
  • RouterInterface: ルーターインターフェース。
  • NetworkInterface: 弾性ネットワークインターフェース (ENI)。
  • VpnGateway: VPN ゲートウェイ。
  • IPv6Gateway: IPv6 ゲートウェイ。
  • NatGateway: NAT ゲートウェイ。
  • Attachment: 転送ルータ。
  • VpcPeer: VPC ピアリング接続。
NextHopList.N.NextHopId String No ri-2zeo3xzyf3cd8r4****

ECMP ルートのネクストホップの ID。

NextHopList.N.Weight Integer No 10

ECMP ルートエントリのネクストホップの重み。

NextHopList.N.NextHopType String No RouterInterface

ECMP ルートエントリのネクストホップのタイプ。値を RouterInterface に設定します。

レスポンスパラメーター

パラメーター タイプ 説明
RouteEntryId String rte-sn6vjkioxte1gz83z****

カスタムルートエントリの ID。

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

リクエスト ID。

説明

サンプルリクエスト

http(s)://[Endpoint]/?Action=CreateRouteEntry
&RegionId=cn-hangzhou
&RouteTableId=vtb-bp145q7glnuzd****
&DestinationCidrBlock=192.168.0.0/24
&NextHopId=i-j6c2fp57q8rr4jlu****
&ClientToken=02fb3da4-130e-11e9-8e44-001****
&RouteEntryName=test
&Description=test
&NextHopType=RouterInterface
&NextHopList=[{"NextHopId":"ri-2zeo3xzyf3cd8r4****","Weight":10,"NextHopType":"RouterInterface"}]
&共通リクエストパラメーター

サンプルの成功レスポンス

XML 形式

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

<CreateRouteEntryResponse>
    <RouteEntryId>rte-sn6vjkioxte1gz83z****</RouteEntryId>
    <RequestId>0ED8D006-F706-4D23-88ED-E11ED28DCAC0</RequestId>
</CreateRouteEntryResponse>

JSON 形式

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

{
  "RouteEntryId" : "rte-sn6vjkioxte1gz83z****",
  "RequestId" : "0ED8D006-F706-4D23-88ED-E11ED28DCAC0"
}

エラーコード

HttpCode エラーコード エラーメッセージ 説明
400 IllegalParam.CidrBlock 指定された CidrBlock は無効です。 CidrBlock に無効な値が設定されています。
400 QuotaExceeded このルートテーブルのルートエントリのクォータを超えました。 ルートテーブル内のルートエントリ数が上限に達しました。
400 MissingParameter 必須パラメーターがありません。 1 つ以上の必須パラメーターが設定されていません。この操作を呼び出す前に、すべての必須パラメーターを設定したかどうかを確認してください。
400 InvalidCidrBlock.Malformed 指定された CIDR ブロックは無効です。 指定された CIDR ブロックの形式が無効です。
400 InvalidCIDRBlock.Duplicate 指定された CIDR ブロックはすでに存在します。 指定された CIDR ブロックはルートテーブルにすでに存在します。
400 IncorrectVpcStatus 現在の VPC ステータスでは、この操作はサポートされていません。 VPC が現在の状態の場合、この操作を実行できません。
400 IncorrectInstanceStatus 現在のインスタンスステータスでは、この操作はサポートされていません。 インスタンスが現在の状態の間は、この操作を実行できません。
400 IncorrectRouteEntryStatus 一部のルートエントリのステータスにより、この操作がブロックされました。 現在のルートテーブル内の 1 つ以上のルートエントリが Pending または Modifying 状態です。
400 IncorrectVSwitchStatus 現在の仮想スイッチステータスでは、この操作はサポートされていません。 vSwitch は Pending 状態であるため、削除できません。
400 InvalidCidrBlock 指定された CIDR ブロックは無効です。 次のいずれかの理由で返されるエラーメッセージ:1. 10.0.0.0/8 CIDR ブロックを使用する権限がありません。アカウントが CIDR ブロックを使用するためのホワイトリストに含まれているかどうかを確認してください。2. 追加されたカスタムルートエントリの宛先 CIDR ブロックは、VPC 内の vSwitch の CIDR ブロックのサブセットにすることはできません。3. CIDR ブロックは 100.64.0.0/10 にすることはできません。
400 InvalidNextHopType 指定されたパラメーター「NextHopType」は無効です。 指定されたネクストホップタイプが無効です。
400 InvalidNextHop.NotFound 指定されたネクストホップは存在しません。 指定されたネクストホップは存在しません。
400 InvalidVRouter.NotFound vRouter が存在しません。 指定された vRouter は存在しません。指定された vRouter が有効かどうかを確認してください。
400 InvalidVPC.NotFound VPC が存在しません。 指定された VPC は存在しません。指定された VPC が有効かどうかを確認してください。
400 InvalidNexthopTypeAndList.BothNull nexthopType と nextHopList の両方が null です。 NextHopType と NextHopList が指定されていません。
400 InvalidNexthopTypeAndList.BothNotNull nexthopType と nextHopList の両方が null ではありません。 NextHopType と NextHopList の両方を空にすることはできません。
400 InvalidRouterInterface 無効なルーターインターフェース。 指定されたルーターインターフェースは存在しません。
400 InvalidOppositeRouterType ネクストホップリストには、反対側のルーターインターフェースが VBR 上にあるルーターインターフェースのみを含めることはできません。 指定されたネクストホップは無効です。ネクストホップとして指定するルーターインターフェースのピアルーターは VBR である必要があります。
400 InvalidNexthopListSize ネクストホップサイズが無効です。2 ~ 4 の間である必要があります。 ネクストホップとして 2 ~ 4 つのルーターインターフェースを指定する必要があります。
400 InvalidEntryRuleQuota.NotFound ルートエントリのクォータルールが存在しません。 ルートエントリのクォータルールが存在しません。
400 Forbidden.CheckEntryRuleQuota ルートエントリのクォータルールのチェックエラー。 ルートエントリのクォータをチェックしているときにエラーが発生しました。
400 InvalidVBRStatus 無効な仮想ボーダールータステータス。 VBR が無効な状態です。
400 InvalidPhysicalConnectionBusinessStatus 無効な物理接続ビジネステータス。 Express Connect 回線が無効な状態です。
400 IncorrectHaVipStatus 指定された HaVip のステータスが Available でも InUse でもないため、この操作は拒否されました。 指定された HAVIP が Available または InUse 状態の場合、操作を実行できません。
400 CountLimitExceed.HaVipRouteEntry 1 つのルートテーブルには、最大 5 つの HaVip へのルートエントリを含めることができます。 HAVIP をポイントするルートエントリ数が上限に達しました。
400 InvalidRouteEntry.Duplicate ルートエントリはすでに存在します。 指定されたルートエントリはすでに存在します。
400 IncorrectRouteEntryStatus 指定された routeEntry ステータスエラー。 現在のルートテーブル内の 1 つ以上のルートエントリが Pending または Modifying 状態です。
400 IncorrectRouteEntryStatus VBR に NotStable ルートエントリがあります。 現在の VBR 内の 1 つ以上のルートエントリが Pending または Modifying 状態です。
400 InvalidParam Ecmp routerEntry とルーターインターフェースのローカル vgw vip が一致しません。 ルートエントリがルーターインターフェースのゲートウェイ IP アドレスと一致しません。
400 INVALID_WEIGHT_PARAM 指定された重みの値が無効です。 指定された重みが無効です。
400 FORBIDDEN_USE_VPC_AS_INTERNET_GATEWAY 指定された CIDR は VPC CIDR 内にある必要があります。 指定された CIDR ブロックは、VPC CIDR ブロックのサブセットである必要があります。
400 INVALID_VPC_ID 指定された VpcId が一致しません。 指定された VPC は存在しません。指定された VPC ID が有効かどうかを確認してください。
400 InvalidRouteEntrySize 指定された routerEntry サイズが不正です。 ECMP ルーティングを設定する場合は、ネクストホップとして 2 ~ 4 つのルーターインターフェースを指定する必要があります。
400 TaskConflict 操作が頻繁すぎます。しばらく待ってから再試行してください。 リクエストが頻繁すぎます。後でもう一度試してください。
400 InvalidRouteEntry 指定された routeEntry は存在しません。 指定されたルートエントリは存在しません。
400 RouteConflict.AlreadyExist ルーティングテーブルにルートの競合が存在します。 ルートテーブルにルートの競合が存在します。
400 InvalidRouteEntryName.Malformed 指定された RouteEntry 名は無効です。 ルートエントリの名前が無効です。
400 InvalidNexthop.DirectEni ダイレクト ENI をネクストホップにすることはできません。 EIP 可視モードの ENI をネクストホップとして指定することはできません。
400 QuotaExceeded.VpnRouteEntry VPN ルートエントリのクォータを超えました。 ルートエントリを作成できませんでした。VPN ゲートウェイルートテーブル内のルートエントリ数が上限に達しているかどうかを確認してください。
400 InvalidAttachment.NotFound 添付ファイルが見つかりません。 指定された転送ルータは存在しません。
400 OperationFailed.ActiveNetworkInterfaceNotFound 添付ファイルにアクティブなネットワークインターフェースが見つかりません。 指定された転送ルータで ENI が使用できません。
400 InvalidNetworkInterface.NotFound 添付ファイルにネットワークインターフェースが見つかりません。 指定された転送ルータに ENI が関連付けられていません。
400 OperationFailed.QueryAttachmentInfo 添付ファイル情報のクエリに失敗しました。 転送ルータのクエリに失敗しました。
400 IllegalParam.AttachmentId 添付ファイルが無効です。 指定された転送ルータが無効です。
400 OperationFailed.NotSupportIPV6 指定されたネクストホップは IPv6 をサポートしていません。 指定されたネクストホップは IPv6 をサポートしていません。
400 IncorrectStatus.Ipv6Address 指定されたネクストホップの IPv6 アドレスは割り当て中または削除中です。 ネクストホップに IPv6 アドレスが割り当てられているか、ネクストホップから削除されています。
400 OperationUnsupported.Ipv6EntryOnPrimaryNetworkInterface プライマリネットワークインターフェースに IPv6 ルートエントリを作成することはできません。 ネクストホップがプライマリ ENI である IPv6 ルートエントリを作成することはできません。
400 OperationUnsupported.SpecifyIpOnIpv6Entry IPv6 ルートエントリを作成するときにプライベート IP アドレスを指定することはできません。 プライベート IPv6 アドレスを宛先 CIDR ブロックとして指定することはできません。
400 OperationUnsupported.MutipleIpv6Address 複数の IPv6 アドレスがバインドされているネクストホップを指定することはできません。 複数の IPv6 アドレスが割り当てられているネクストホップを指定することはできません。
400 OperationDenied.Ipv6EntryOnCustomTable カスタムルートテーブルに IPv6 ルートエントリを作成することはできません。 カスタムルートテーブルに IPv6 ルートエントリを追加することはできません。
400 OperationDenied.CloudBoxVbrEntryAllowedInCustomRouteTable カスタムルーティングテーブルのみが、ネクストホップが CloudBox タイプの VBR を指すルーティングエントリを追加できるため、操作は許可されていません。 ルートエントリのネクストホップが CloudBox に接続された VBR を指している場合にのみ、カスタムルートテーブルにルートエントリを追加できます。
400 OperationDenied.RouteTableAssociateNotCloudBoxVSwitch ルーティングテーブルが CloudBox タイプではない vSwitch にバインドされているため、操作は許可されていません。CloudBox VBR を指すルーティングエントリを追加することはできません。 ルートテーブルが関連付けられている vSwitch は CloudBox インスタンスに接続されていません。したがって、CloudBox インスタンスに接続された VBR を指すルートエントリを追加することはできません。
400 OperationDenied.VbrMisMatchCloudBox ルーティングテーブルが CloudBox vSwitch にバインドされているため、操作は許可されていません。他の CloudBox VBR を指すルーティングエントリを追加することはできません。 VBR とルートテーブルに関連付けられている vSwitch は、異なる CloudBox インスタンスに接続されています。
400 OperationDenied.VbrIdle 追加されたルーティングエントリのネクストホップが反対側の VBR タイプの RI であるため、操作は許可されていません。アイドル状態にすることはできません。 ネクストホップとして指定するルーターインターフェースはアイドル状態です。ネクストホップルーターインターフェースのピアルーターが VBR の場合、ネクストホップルーターインターフェースはアイドル状態であってはなりません。
400 OperationDenied.RouterInterfaceToDifferentVpc ルーターインターフェースが異なる VPC に接続されているため、操作は許可されていません。 ECMP ルーティングを設定するときにネクストホップとして指定するルーターインターフェースは、同じ VPC に属していません。
400 OperationDenied.RouterInterfaceFromDifferentZones ルーターインターフェースが異なるゾーンにあるため、操作は許可されていません。 ルーターインターフェースは異なるゾーンに属しています。
400 OperationFailed.PconnTrafficNotEnable PconnTrafficNotEnable のため、操作に失敗しました。 送信データ転送課金が無効になっています。
400 ResourceNotFound.VpcPeer 指定された %s のリソースが見つかりません。 ピア VPC が見つかりません。
400 OperationDenied.RouteTableTypeNotPermitted ルートテーブルのタイプが許可されていないため、操作は許可されていません。 指定されたタイプのルートテーブルにルートエントリを追加することはできません。
400 OperationDenied.GatewayRouteTableNotPermitted ゲートウェイルートテーブルでこの nextHop タイプを指すルートを作成することは許可されていません。 ゲートウェイルートテーブルは、指定されたインスタンスタイプを指すルートエントリをサポートしていません。
400 UnsupportedFeature.VpcPeerIpv6 このリージョンでは、VPC ピアリング接続の IPv6 ルートエントリを作成できません。 ルーターインターフェースのピアは VPC であり、このリージョンではネクストホップタイプが IPv6 アドレスであるルートを作成できません。
400 OperationDenied.VpcIpv6NotEnabled VPC で IPv6 が有効になっていません。 VPC は IPv6 をサポートしておらず、操作は拒否されます。
400 IncorrectStatus.Ipv4Gateway Ipv4Gateway のステータスが正しくありません。 IPv4 ゲートウェイが不安定です。
400 ResourceNotFound.PrefixList prefixList の指定されたリソースが見つかりません。 プレフィックスリストが存在しません。
400 UnsupportedFeature.CreatePrefixListEcmpRouteEntry prefixList を使用した ecmp ルートエントリの作成機能はサポートされていません。 プレフィックスリストを使用して ECMP ルートを作成することはできません。
400 OperationDenied.RouterInterfaceIpv6NotEnabled Routerinterface は IPv6 をサポートしていません。 ルーターインターフェースが IPv6 をサポートしていないため、操作に失敗しました。
400 OperationDenied.NextHopTypeNotPermitted nextHop タイプが無効なため、操作は許可されていません。 このタイプのネクストホップを持つルートを作成することは許可されていません。
403 IncorrectInstanceStatus リソースの現在のステータスでは、この操作はサポートされていません。 指定されたリソースは、操作をサポートしていない状態です。
404 InvalidInstanId.NotFound 指定されたインスタンスは存在しません。 指定されたインスタンスは存在しません。インスタンス ID が有効かどうかを確認してください。
404 InvalidNextHopId.NotFound 指定されたネクストホップは存在しません。 指定されたネクストホップは存在しません。
404 InvalidRouteTableId.NotFound 指定されたルートテーブルは存在しません。 指定されたルートテーブルは存在しません。
404 InvalidHaVipId.NotFound 指定された HaVip は、指定された VPC に存在しません。 指定された HAVIP は VPC に存在しません。
500 InternalError 不明なエラー、例外、または障害により、リクエストの処理に失敗しました。 内部エラーが発生しました。

エラーコードの一覧については、「サービスエラーコード」をご参照ください。