Ajoute une entrée de routage personnalisée à la table de routage d'un vRouter ou d'un routeur de bordure virtuel (VBR).
Notes d'utilisation
-
CreateRouteEntry est une opération asynchrone. Une fois la requête envoyée, le système renvoie un ID de requête et exécute la tâche en arrière-plan. Appelez DescribeRouteEntryList pour interroger l'état de la tâche.
Si l'entrée de routage est dans l'état Creating, l'ajout est en cours.
Si l'entrée de routage est dans l'état Created, l'ajout est terminé.
N'appelez pas CreateRouteEntry de manière répétée dans un court intervalle de temps.
Lors de l'appel à cette opération, tenez compte des limites suivantes :
Lorsque vous ajoutez une entrée de routage à partir d'une liste de préfixes, l'utilisation du quota correspond à la somme du nombre d'entrées de routage existantes et du nombre maximal d'entrées de la liste de préfixes.
Une table de routage peut contenir jusqu'à 200 entrées de routage personnalisées.
Le bloc CIDR de destination (DestinationCidrBlock) d'une entrée de routage personnalisée ne peut pas être identique au bloc CIDR d'un vSwitch du VPC. Il peut contenir le bloc CIDR d'un vSwitch, mais ne doit pas être inclus dans celui-ci.
Le bloc CIDR de destination (DestinationCidrBlock) d'une entrée de routage personnalisée ne peut ni pointer vers 100.64.0.0/10 ni être inclus dans ce bloc.
Les blocs CIDR de destination (DestinationCidrBlock) des entrées de routage d'une même table doivent être distincts.
Si vous omettez la longueur du masque lors de la spécification du bloc CIDR de destination (DestinationCidrBlock), le système considère qu'il s'agit d'une adresse IP d'hôte avec un masque de 32 bits.
Plusieurs entrées de routage personnalisées peuvent pointer vers le même saut suivant (NextHopId).
Le saut suivant (NextHopId) d'une entrée de routage personnalisée et la table de routage doivent appartenir au même VPC.
-
Configurez le routage à coût égal multiple (ECMP) en spécifiant NextHopList.
Pour ajouter une entrée de routage personnalisée standard (non ECMP), spécifiez DestinationCidrBlock, NextHopType et NextHopId. Ne spécifiez pas NextHopList.
Pour ajouter une entrée de routage ECMP, spécifiez DestinationCidrBlock et NextHopList. Ne spécifiez ni NextHopType ni NextHopId.
Lors de l'ajout d'une entrée de routage personnalisée à un VBR, tenez compte des limites suivantes :
Une table de routage peut contenir jusqu'à 200 entrées de routage personnalisées.
NextHopList n'est pas pris en charge.
Le bloc CIDR de destination (DestinationCidrBlock) d'une entrée de routage personnalisée ne peut ni pointer vers 100.64.0.0/10 ni être inclus dans ce bloc.
Les blocs CIDR de destination (DestinationCidrBlock) des entrées de routage d'une même table doivent être distincts.
Si vous omettez la longueur du masque lors de la spécification du bloc CIDR de destination (DestinationCidrBlock), le système considère qu'il s'agit d'une adresse IP d'hôte avec un masque de 32 bits.
Plusieurs entrées de routage personnalisées peuvent pointer vers le même saut suivant (NextHopId).
Le saut suivant (NextHopId) d'une entrée de routage personnalisée doit être une interface de routeur associée au VBR.
Le VBR doit être dans l'état Active et le circuit Express Connect associé doit être dans l'état Enabled. Vérifiez l'absence d'impayés pour le circuit Express Connect.
Ajoutez uniquement des entrées de routage standard (non ECMP). Spécifiez DestinationCidrBlock, NextHopType et NextHopId. Ne spécifiez pas NextHopList.
Débogage
OpenAPI Explorer calcule automatiquement la valeur de signature. Nous vous recommandons d'utiliser OpenAPI Explorer pour appeler cette opération. L'outil génère dynamiquement des exemples de code pour différents SDK.
Paramètres de requête
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | CreateRouteEntry | Opération à effectuer. Définissez la valeur sur CreateRouteEntry. |
| RegionId | String | No | cn-hangzhou | ID de région de la table de routage. Appelez l'opération DescribeRegions pour obtenir la liste des régions. |
| RouteTableId | String | Yes | vtb-bp145q7glnuzd**** | ID de la table de routage dans laquelle ajouter l'entrée de routage personnalisée. |
| DestinationCidrBlock | String | Yes | 192.168.0.0/24 | Bloc CIDR de destination de l'entrée de routage personnalisée. Les blocs CIDR IPv4 et IPv6 sont pris en charge. Le bloc CIDR de destination doit respecter les exigences suivantes :
|
| NextHopId | String | No | i-j6c2fp57q8rr4jlu**** | ID du saut suivant de l'entrée de routage personnalisée. |
| ClientToken | String | No | 02fb3da4-130e-11e9-8e44-001**** | Jeton client garantissant l'idempotence de la requête. Générez le jeton via le client en veillant à son unicité pour chaque requête. Le jeton ne doit contenir que des caractères ASCII. Remarque Si vous omettez ce paramètre, le système utilise automatiquement l'ID de requête comme jeton client. L'ID de requête varie selon les requêtes. |
| RouteEntryName | String | No | test | Nom de l'entrée de routage personnalisée à ajouter. Le nom doit compter entre 1 et 128 caractères. Il ne peut pas commencer par |
| Description | String | No | test | Description de l'entrée de routage personnalisée. La description doit compter entre 1 et 256 caractères. Elle ne peut pas commencer par |
| NextHopType | String | No | RouterInterface | Type de saut suivant de l'entrée de routage personnalisée. Valeurs possibles :
|
| NextHopList.N.NextHopId | String | No | ri-2zeo3xzyf3cd8r4**** | ID du saut suivant de l'entrée de routage ECMP. |
| NextHopList.N.Weight | Integer | No | 10 | Poids du saut suivant de l'entrée de routage ECMP. |
| NextHopList.N.NextHopType | String | No | RouterInterface | Type du saut suivant de l'entrée de routage ECMP. Définissez la valeur sur RouterInterface. |
Paramètres de réponse
|
Parameter |
Type |
Example |
Description |
|
RouteEntryId |
String |
rte-sn6vjkioxte1gz83z**** |
ID de l'entrée de routage personnalisée. |
|
RequestId |
String |
0ED8D006-F706-4D23-88ED-E11ED28DCAC0 |
ID de la requête. |
Exemples
Exemples de requêtes
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"}]
&Common request parameters
Exemples de réponses réussies
Format XML
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateRouteEntryResponse>
<RouteEntryId>rte-sn6vjkioxte1gz83z****</RouteEntryId>
<RequestId>0ED8D006-F706-4D23-88ED-E11ED28DCAC0</RequestId>
</CreateRouteEntryResponse>
Format JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RouteEntryId" : "rte-sn6vjkioxte1gz83z****",
"RequestId" : "0ED8D006-F706-4D23-88ED-E11ED28DCAC0"
}
Codes d'erreur
|
HttpCode |
Error code |
Error message |
Description |
|
400 |
IllegalParam.CidrBlock |
The specified CidrBlock is illegal. |
La valeur CidrBlock spécifiée est incorrecte. |
|
400 |
QuotaExceeded |
Route entry quota exceeded in this route table. |
Le nombre d'entrées de routage dans la table a atteint la limite. |
|
400 |
MissingParameter |
Miss mandatory parameter. |
Un ou plusieurs paramètres obligatoires sont manquants. Vérifiez que tous les paramètres requis sont définis avant d'appeler cette opération. |
|
400 |
InvalidCidrBlock.Malformed |
Specified CIDR block is not valid. |
Le format du bloc CIDR spécifié est incorrect. |
|
400 |
InvalidCIDRBlock.Duplicate |
Specified CIDR block is already exists. |
Le bloc CIDR spécifié existe déjà dans la table de routage. |
|
400 |
IncorrectVpcStatus |
Current VPC status does not support this operation. |
Cette opération n'est pas prise en charge dans l'état actuel du VPC. |
|
400 |
IncorrectInstanceStatus |
Current instance status does not support this operation. |
Cette opération n'est pas prise en charge dans l'état actuel de l'instance. |
|
400 |
IncorrectRouteEntryStatus |
Some route entry status blocked this operation. |
Une ou plusieurs entrées de routage de la table actuelle sont dans l'état Pending ou Modifying. |
|
400 |
IncorrectVSwitchStatus |
The current virtual switch status does not support this operation. |
Le vSwitch est dans l'état Pending et ne peut pas être supprimé. |
|
400 |
InvalidCidrBlock |
Specified CIDR block is not valid. |
Message d'erreur renvoyé pour l'une des raisons suivantes : 1. Vous n'êtes pas autorisé à utiliser le bloc CIDR 10.0.0.0/8. Vérifiez si votre compte figure sur la liste blanche. 2. Le bloc CIDR de destination de l'entrée de routage personnalisée ajoutée ne peut pas être un sous-ensemble des blocs CIDR des vSwitches du VPC. 3. Le bloc CIDR ne peut pas être 100.64.0.0/10. |
|
400 |
InvalidNextHopType |
Specified parameter "NextHopType" is not valid |
Le type de saut suivant spécifié est incorrect. |
|
400 |
InvalidNextHop.NotFound |
Specified next hop does not exist. |
Le saut suivant spécifié n'existe pas. |
|
400 |
InvalidVRouter.NotFound |
vRouter not exists. |
Le vRouter spécifié n'existe pas. Vérifiez la validité du vRouter spécifié. |
|
400 |
InvalidVPC.NotFound |
vpc not exists. |
Le VPC spécifié n'existe pas. Vérifiez la validité du VPC spécifié. |
|
400 |
InvalidNexthopTypeAndList.BothNull |
both nexthopType and nextHopList are null. |
NextHopType et NextHopList ne sont pas spécifiés. |
|
400 |
InvalidNexthopTypeAndList.BothNotNull |
both nexthopType and nextHopList are not null. |
NextHopType et NextHopList ne peuvent pas être spécifiés simultanément. |
|
400 |
InvalidRouterInterface |
invalid router interface. |
L'interface de routeur spécifiée n'existe pas. |
|
400 |
InvalidOppositeRouterType |
nexthop list cannot only contain router interface whose opposite router interface is on vbr. |
Le saut suivant spécifié est incorrect. Le routeur homologue de l'interface de routeur spécifiée comme saut suivant doit être un VBR. |
|
400 |
InvalidNexthopListSize |
nexthop size is illegal. Must be between 2 and 4. |
Spécifiez deux à quatre interfaces de routeur comme sauts suivants. |
|
400 |
InvalidEntryRuleQuota.NotFound |
Route entry quota rule not exists. |
Les règles de quota des entrées de routage n'existent pas. |
|
400 |
Forbidden.CheckEntryRuleQuota |
Route entry quota rule check error. |
Une erreur s'est produite lors de la vérification du quota des entrées de routage. |
|
400 |
InvalidVBRStatus |
invalid virtual border router status. |
Le VBR est dans un état incorrect. |
|
400 |
InvalidPhysicalConnectionBusinessStatus |
invalid physical connection business status. |
Le circuit Express Connect est dans un état incorrect. |
|
400 |
IncorrectHaVipStatus |
This operation is denied because satus of the specified HaVip is neither Available nor InUse. |
Cette opération est refusée car la HAVIP spécifiée n'est ni dans l'état Available ni dans l'état InUse. |
|
400 |
CountLimitExceed.HaVipRouteEntry |
There can be 5 route entry to HaVip at most in one route table. |
Le nombre d'entrées de routage pointant vers la HAVIP a atteint la limite (5 maximum par table). |
|
400 |
InvalidRouteEntry.Duplicate |
The route entry already exist. |
L'entrée de routage spécifiée existe déjà. |
|
400 |
IncorrectRouteEntryStatus |
Specified routeEntry status error. |
Une ou plusieurs entrées de routage de la table actuelle sont dans l'état Pending ou Modifying. |
|
400 |
IncorrectRouteEntryStatus |
VBR has NotStable route entry. |
Une ou plusieurs entrées de routage du VBR actuel sont dans l'état Pending ou Modifying. |
|
400 |
InvalidParam |
The Ecmp routerEntry with router interfaces local vgw vip not match. |
L'entrée de routage ne correspond pas à l'adresse IP de la passerelle de l'interface de routeur. |
|
400 |
INVALID_WEIGHT_PARAM |
Specified value of weight invalid |
La valeur de poids spécifiée est incorrecte. |
|
400 |
FORBIDDEN_USE_VPC_AS_INTERNET_GATEWAY |
The Specified CIDR must be in vpc CIDR. |
Le bloc CIDR spécifié doit être un sous-ensemble du bloc CIDR du VPC. |
|
400 |
INVALID_VPC_ID |
The Specified VpcId not match. |
Le VPC spécifié est introuvable. |
|
400 |
InvalidRouteEntrySize |
The Specified routerEntry size not legal. |
Pour configurer le routage ECMP, spécifiez deux à quatre interfaces de routeur comme sauts suivants. |
|
400 |
TaskConflict |
The operation is too frequent, please wait a moment and try again. |
Requêtes trop fréquentes. Réessayez ultérieurement. |
|
400 |
InvalidRouteEntry |
Specified routeEntry not exist. |
L'entrée de routage spécifiée n'existe pas. |
|
400 |
RouteConflict.AlreadyExist |
Route conflict exists in routing table. |
Des conflits de routage existent dans la table de routage. |
|
400 |
InvalidRouteEntryName.Malformed |
Specified RouteEntry name is not valid. |
Le nom de l'entrée de routage est incorrect. |
|
400 |
InvalidNexthop.DirectEni |
The direct Eni cannot be nexthop. |
Une ENI en mode cut-through ne peut pas servir de saut suivant. |
|
400 |
QuotaExceeded.VpnRouteEntry |
Vpn route entry quota exceeded. |
Échec de création de l'entrée de routage. Vérifiez si le quota d'entrées de la table de routage de la passerelle VPN est atteint. |
|
400 |
InvalidAttachment.NotFound |
The attachment is not found. |
Le routeur de transit spécifié n'existe pas. |
|
400 |
OperationFailed.ActiveNetworkInterfaceNotFound |
No active network interface is found on the attachment. |
Aucune ENI active n'est disponible sur le routeur de transit spécifié. |
|
400 |
InvalidNetworkInterface.NotFound |
The network interface is not found on the attachment. |
Aucune ENI n'est associée au routeur de transit spécifié. |
|
400 |
OperationFailed.QueryAttachmentInfo |
Failed to query attachment information. |
Échec de l'interrogation des informations du routeur de transit. |
|
400 |
IllegalParam.AttachmentId |
The attachment is invalid. |
Le routeur de transit spécifié est incorrect. |
|
400 |
OperationFailed.NotSupportIPV6 |
The specified next hop does not support IPv6. |
Le saut suivant spécifié ne prend pas en charge IPv6. |
|
400 |
IncorrectStatus.Ipv6Address |
The IPv6 address of the specified next hop is being assigned or deleted. |
Une adresse IPv6 est en cours d'attribution ou de suppression sur le saut suivant. |
|
400 |
OperationUnsupported.Ipv6EntryOnPrimaryNetworkInterface |
You cannot create IPv6 route entries on a primary network interface. |
Vous ne pouvez pas créer d'entrée de routage IPv6 dont le saut suivant est une ENI principale. |
|
400 |
OperationUnsupported.SpecifyIpOnIpv6Entry |
You cannot specify the private IP address when you create IPv6 route entries. |
Vous ne pouvez pas spécifier d'adresse IPv6 privée comme bloc CIDR de destination. |
|
400 |
OperationUnsupported.MutipleIpv6Address |
You cannot specify a next hop that has bound multiple IPv6 addresses. |
Vous ne pouvez pas spécifier un saut suivant associé à plusieurs adresses IPv6. |
|
400 |
OperationDenied.Ipv6EntryOnCustomTable |
You cannot create any IPv6 route entry on a custom route table. |
Vous ne pouvez pas ajouter d'entrée de routage IPv6 à une table de routage personnalisée. |
|
400 |
OperationDenied.CloudBoxVbrEntryAllowedInCustomRouteTable |
The operation is not allowed because only the custom routing table can add a routing entry with the next hop pointing to the cloud box type VBR. |
Vous ne pouvez ajouter une entrée de routage à une table personnalisée que si le saut suivant pointe vers un VBR connecté à une CloudBox. |
|
400 |
OperationDenied.RouteTableAssociateNotCloudBoxVSwitch |
The operation is not allowed because of the routing table is bound to a non-cloud box type vswitch, and routing entries pointing to the cloud box VBR cannot be added. |
Le vSwitch associé à la table de routage n'est pas connecté à une instance CloudBox. Vous ne pouvez donc pas ajouter d'entrée pointant vers un VBR connecté à une CloudBox. |
|
400 |
OperationDenied.VbrMisMatchCloudBox |
The operation is not allowed because the routing table is bound to a cloud box vswitch, and routing entries pointing to other cloud box VBRs cannot be added. |
Le VBR et le vSwitch associé à la table de routage sont connectés à des instances CloudBox différentes. |
|
400 |
OperationDenied.VbrIdle |
The operation is not allowed because the next hop of the added routing entry is a VBR type RI at the opposite end, which cannot be in an idle state. |
L'interface de routeur spécifiée comme saut suivant est dans l'état Idle. Si le routeur homologue est un VBR, l'interface de routeur du saut suivant ne doit pas être dans l'état Idle. |
|
400 |
OperationDenied.RouterInterfaceToDifferentVpc |
The operation is not allowed because the router interface is connected to different VPCs. |
Les interfaces de routeur spécifiées comme sauts suivants pour le routage ECMP n'appartiennent pas au même VPC. |
|
400 |
OperationDenied.RouterInterfaceFromDifferentZones |
The operation is not allowed because the router interface resides in different zones. |
L'interface de routeur appartient à une zone différente. |
|
400 |
OperationFailed.PconnTrafficNotEnable |
The operation is failed because of PconnTrafficNotEnable. |
La facturation du transfert de données sortant est désactivée. |
|
400 |
ResourceNotFound.VpcPeer |
The specified resource of %s is not found. |
La connexion d'appairage VPC est introuvable. |
|
400 |
OperationDenied.RouteTableTypeNotPermitted |
The operation is not allowed because the type of route table is not permitted. |
Vous ne pouvez pas ajouter d'entrées de routage aux tables de routage du type spécifié. |
|
400 |
OperationDenied.GatewayRouteTableNotPermitted |
The operation is not allowed to create a route pointing to this nextHop type on gateway route table. |
La table de routage de la passerelle ne prend pas en charge les entrées pointant vers le type d'instance spécifié. |
|
400 |
UnsupportedFeature.VpcPeerIpv6 |
IPv6 route entries for VPC peering connections cannot be created in this region. |
L'homologue de l'interface de routeur est un VPC ; vous ne pouvez pas créer de route dont le saut suivant est une adresse IPv6 dans cette région. |
|
400 |
OperationDenied.VpcIpv6NotEnabled |
IPv6 has not been enabled for the VPC. |
Le VPC ne prend pas en charge IPv6 ; l'opération est refusée. |
|
400 |
IncorrectStatus.Ipv4Gateway |
The status of Ipv4Gateway is incorrect. |
La passerelle IPv4 est dans un état instable. |
|
400 |
ResourceNotFound.PrefixList |
The specified resource of prefixList is not found. |
La liste de préfixes n'existe pas. |
|
400 |
UnsupportedFeature.CreatePrefixListEcmpRouteEntry |
The feature of creating ecmp route entry with prefixList is not supported. |
Vous ne pouvez pas créer de routes ECMP à l'aide d'une liste de préfixes. |
|
400 |
OperationDenied.RouterInterfaceIpv6NotEnabled |
Routerinterface does not support IPv6. |
Échec de l'opération car l'interface de routeur ne prend pas en charge IPv6. |
|
400 |
OperationDenied.NextHopTypeNotPermitted |
The operation is not allowed because the nextHop type is invalid. |
Vous n'êtes pas autorisé à créer une route dont le saut suivant est de ce type. |
|
400 |
ResourceAlreadyAssociated.PrefixList |
The operation failed because the specified prefixList route entry already exists. |
Échec de l'opération car la route de la liste de préfixes existe déjà. |
|
400 |
OperationFailed.CidrConflictWithPrefixList |
The specified CIDR block already exists in a prefixList route entry. |
Conflit de route avec une route de liste de préfixes existante. |
|
400 |
ResourceNotFound.Ipv4Gateway |
Specified Ipv4Gateway does not exist. |
La passerelle IPv4 spécifiée est introuvable. |
|
400 |
Mismatch.HaVipIdAndRouteTableId |
The HaVip and RouteTable are mismatched. |
La HAVIP et la table de routage spécifiées n'appartiennent pas au même VPC. |
|
400 |
OperationFailed.OperationLocked |
The operation failed because the nextHop instance is in the O&M lock state. |
Échec de l'opération car l'instance du saut suivant est verrouillée pour maintenance (O&M). |
|
400 |
Mismatch.Ipv4GatewayIdAndRouteTableId |
The specified IPv4Gateway and RouteTable are not matched. |
Échec de l'opération car la passerelle IPv4 et la table de routage n'appartiennent pas au même VPC. |
|
400 |
OperationUnsupported.DestinationCidrBlockOverlapWithVSwitch |
The destination IPv6 network segment specified in the route entry overlaps with the vSwitch network segment. |
Le bloc CIDR IPv6 de destination de la route chevauche le bloc CIDR du vSwitch. |
|
403 |
IncorrectInstanceStatus |
The current status of the resource does not support this operation. |
La ressource spécifiée est dans un état qui ne prend pas en charge l'opération. |
|
404 |
InvalidInstanId.NotFound |
Specified instance does not exist. |
L'instance spécifiée n'existe pas. Vérifiez la validité de l'ID de l'instance. |
|
404 |
InvalidNextHopId.NotFound |
Specified next hop does not exist. |
Le saut suivant spécifié n'existe pas. |
|
404 |
InvalidRouteTableId.NotFound |
Specified route table does not exist. |
La table de routage est introuvable. |
|
404 |
InvalidHaVipId.NotFound |
The specified HaVip does not exist in the specified VPC. |
La HAVIP spécifiée n'existe pas dans le VPC. |
|
500 |
InternalError |
The request processing has failed due to some unknown error, exception or failure. |
Une erreur interne s'est produite. |
Pour la liste des codes d'erreur, consultez les Codes d'erreur de service.