调用ModifyVpnConnectionAttribute接口修改IPsec连接的配置信息。
使用说明
- ModifyVpnConnectionAttribute接口属于异步接口,即系统返回一个请求ID,但该IPsec连接的配置信息未修改成功,系统后台的修改任务仍在进行。您可以调用DescribeVpnGateway查询VPN网关实例状态,来确定IPsec连接的配置信息的修改状态:
- 当VPN网关实例处于updating状态时,表示IPsec连接的配置信息正在修改中。
- 当VPN网关实例处于active状态时,表示IPsec连接的配置信息修改成功。
- ModifyVpnConnectionAttribute接口不支持在同一VPN网关下并发修改IPsec连接的配置信息。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | ModifyVpnConnectionAttribute | 系统规定参数。 取值:ModifyVpnConnectionAttribute。 |
RegionId | String | 是 | cn-shanghai | IPsec连接所在的地域ID。 您可以通过调用DescribeRegions接口获取地域ID。 |
ClientToken | String | 否 | 02fb3da4-130e-11e9-8e44-0016e04115b | 客户端Token,用于保证请求的幂等性。 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符。 说明 若您未指定,则系统自动使用API请求的RequestId作为ClientToken标识。每次API请求的RequestId不一样。 |
VpnConnectionId | String | 是 | vco-bp1bbi27hojx80nck**** | IPsec连接的ID。 |
Name | String | 否 | nametest | IPsec连接的名称。 长度为1~100个字符,不能以 |
LocalSubnet | String | 否 | 10.1.1.0/24,10.1.2.0/24 | 需要和本地数据中心互连的VPC侧的网段,用于第二阶段协商。 多个网段之间用半角逗号(,)分隔,例如:192.168.1.0/24,192.168.2.0/24。 关于IPsec连接路由模式的说明:
|
RemoteSubnet | String | 否 | 10.2.1.0/24,10.2.2.0/24 | 本地数据中心侧的网段,用于第二阶段协商。 多个网段之间用半角逗号(,)分隔,例如:192.168.3.0/24,192.168.4.0/24。 关于IPsec连接路由模式的说明:
|
EffectImmediately | Boolean | 否 | false | 选择IPsec连接的配置是否立即生效。取值:
|
IkeConfig | String | 否 | {"Psk":"pgw6dy7d1i8i****","IkeVersion":"ikev1","IkeMode":"main","IkeEncAlg":"aes","IkeAuthAlg":"sha1","IkePfs":"group2","IkeLifetime":86400,"LocalId":"116.64.XX.XX","RemoteId":"139.18.XX.XX"} | 第一阶段协商的配置信息:
|
IpsecConfig | String | 否 | {"IpsecEncAlg":"aes","IpsecAuthAlg":"sha1","IpsecPfs":"group2","IpsecLifetime":86400} | 第二阶段协商的配置信息:
|
HealthCheckConfig | String | 否 | {"enable":"true","dip":"192.168.1.1","sip":"10.1.1.1","interval":"3","retry":"3"} | 健康检查配置信息:
|
AutoConfigRoute | Boolean | 否 | true | 是否自动发布路由。取值:
|
EnableDpd | Boolean | 否 | true | 是否开启DPD(对等体存活检测)功能。取值:
|
EnableNatTraversal | Boolean | 否 | true | 是否开启NAT穿越功能。取值:
|
BgpConfig | String | 否 | {"EnableBgp":"true","LocalAsn":"65530","TunnelCidr":"169.254.11.0/30","LocalBgpIp":"169.254.11.1"} | BGP的配置信息:
说明
|
RemoteCaCertificate | String | 否 | -----BEGIN CERTIFICATE----- MIIB7zCCAZW**** -----END CERTIFICATE----- | 国密型VPN网关创建IPsec连接时,对端的CA证书。
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
EnableNatTraversal | Boolean | true | 是否开启NAT穿越功能。取值:
|
CreateTime | Long | 1492753817000 | IPsec连接的创建时间戳。单位:毫秒。 时间戳的格式采用Unix时间戳,表示从格林威治时间1970年01月01日00时00分00秒至创建IPsec连接时的总时长。 |
EffectImmediately | Boolean | false | IPsec连接的配置是否立即生效。
|
VpnGatewayId | String | vpn-bp1q8bgx4xnkm2ogj**** | VPN网关实例的ID。 |
LocalSubnet | String | 10.1.1.0/24,10.1.2.0/24 | VPC侧的网段。 |
RequestId | String | 7DB79D0C-5F27-4AB5-995B-79BE55102F90 | 请求ID。 |
VpnConnectionId | String | vco-bp1bbi27hojx80nck**** | IPsec连接的ID。 |
Description | String | description | IPsec描述信息。 |
RemoteSubnet | String | 10.2.1.0/24,10.2.2.0/24 | 本地数据中心侧的网段。 |
CustomerGatewayId | String | cgw-p0w2jemrcj5u61un8**** | 用户网关的ID。 |
Name | String | nametest | IPsec连接的名称。 |
EnableDpd | Boolean | true | 是否开启DPD(对等体存活检测)功能。
|
IkeConfig | Object | 第一阶段协商的配置。 |
|
RemoteId | String | 139.18.XX.XX | 本地数据中心侧的标识。支持FQDN和IP格式,默认为当前选取的用户网关的IP地址。 |
IkeLifetime | Long | 86400 | IKE生存时间。单位:秒。 |
IkeEncAlg | String | aes | IKE加密算法。 |
LocalId | String | 116.64.XX.XX | VPC侧的标识。支持FQDN和IP格式,默认为当前选取的VPN网关的IP地址。 |
IkeMode | String | main | IKE协商模式。
|
IkeVersion | String | ikev1 | IKE协议版本。
相对于IKEv1版本,IKEv2版本简化了SA的协商过程并且对于多网段的场景提供了更好的支持。 |
IkePfs | String | group2 | DH分组。 |
Psk | String | pgw6dy7d1i8i**** | 预共享密钥。 |
IkeAuthAlg | String | sha1 | IKE认证算法。 |
IpsecConfig | Object | 第二阶段协商的配置。 |
|
IpsecAuthAlg | String | sha1 | IPsec认证算法。 |
IpsecLifetime | Long | 86400 | IPsec生存时间。单位:秒。 |
IpsecEncAlg | String | aes | IPsec加密算法。 |
IpsecPfs | String | group2 | DH分组。 |
VcoHealthCheck | Object | 健康检查配置。 |
|
Dip | String | 192.168.1.1 | 目标IP。 |
Interval | Integer | 3 | 健康检查的重试间隔时间,单位:秒。 |
Retry | Integer | 3 | 健康检查的重试发包次数。 |
Sip | String | 10.1.1.1 | 源IP。 |
Enable | String | true | 是否开启健康检查。
|
VpnBgpConfig | Object | BGP配置信息。 |
|
Status | String | success | BGP的协商状态。
|
PeerBgpIp | String | 169.254.11.2 | 本地IDC侧的BGP地址。 |
TunnelCidr | String | 169.254.11.0/30 | IPsec隧道网段。 |
EnableBgp | String | true | BGP的开启状态。
|
LocalBgpIp | String | 169.254.11.1 | 阿里云侧的BGP地址。 |
PeerAsn | Integer | 65531 | 本地I数据中心侧的自治系统号。 |
LocalAsn | Integer | 65530 | 阿里云侧的自治系统号。 |
示例
请求示例
http(s)://[Endpoint]/?Action=ModifyVpnConnectionAttribute
&RegionId= cn-shanghai
&ClientToken=02fb3da4-130e-11e9-8e44-0016e04115b
&VpnConnectionId=vco-bp1bbi27hojx80nck****
&Name=nametest
&LocalSubnet=10.1.1.0/24,10.1.2.0/24
&RemoteSubnet=10.2.1.0/24,10.2.2.0/24
&EffectImmediately=false
&IkeConfig={"Psk":"pgw6dy7d1i8i****","IkeVersion":"ikev1","IkeMode":"main","IkeEncAlg":"aes","IkeAuthAlg":"sha1","IkePfs":"group2","IkeLifetime":86400,"LocalId":"116.64.XX.XX","RemoteId":"139.18.XX.XX"}
&IpsecConfig={"IpsecEncAlg":"aes","IpsecAuthAlg":"sha1","IpsecPfs":"group2","IpsecLifetime":86400}
&HealthCheckConfig={"enable":"true","dip":"192.168.1.1","sip":"10.1.1.1","interval":"3","retry":"3"}
&AutoConfigRoute=true
&EnableDpd=true
&EnableNatTraversal=true
&BgpConfig={"EnableBgp":"true","LocalAsn":"65530","TunnelCidr":"169.254.11.0/30","LocalBgpIp":"169.254.11.1"}
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<ModifyVpnConnectionAttributeResponse>
<EnableNatTraversal>true</EnableNatTraversal>
<CreateTime>1492753817000</CreateTime>
<EffectImmediately>false</EffectImmediately>
<VpnGatewayId>vpn-bp1q8bgx4xnkm2ogj****</VpnGatewayId>
<LocalSubnet>10.1.1.0/24,10.1.2.0/24</LocalSubnet>
<RequestId>7DB79D0C-5F27-4AB5-995B-79BE55102F90</RequestId>
<VpnConnectionId>vco-bp1bbi27hojx80nck****</VpnConnectionId>
<Description>description</Description>
<RemoteSubnet>10.2.1.0/24,10.2.2.0/24</RemoteSubnet>
<CustomerGatewayId>cgw-p0w2jemrcj5u61un8****</CustomerGatewayId>
<Name>nametest</Name>
<EnableDpd>true</EnableDpd>
<IkeConfig>
<RemoteId>139.18.XX.XX</RemoteId>
<IkeLifetime>86400</IkeLifetime>
<IkeEncAlg>aes</IkeEncAlg>
<LocalId>116.64.XX.XX</LocalId>
<IkeMode>main</IkeMode>
<IkeVersion>ikev1</IkeVersion>
<IkePfs>group2</IkePfs>
<Psk>pgw6dy7d1i8i****</Psk>
<IkeAuthAlg>sha1</IkeAuthAlg>
</IkeConfig>
<IpsecConfig>
<IpsecAuthAlg>sha1</IpsecAuthAlg>
<IpsecLifetime>86400</IpsecLifetime>
<IpsecEncAlg>aes</IpsecEncAlg>
<IpsecPfs>group2</IpsecPfs>
</IpsecConfig>
<VcoHealthCheck>
<Dip>192.168.1.1</Dip>
<Interval>3</Interval>
<Retry>3</Retry>
<Sip>10.1.1.1</Sip>
<Enable>true</Enable>
</VcoHealthCheck>
<VpnBgpConfig>
<Status>success</Status>
<PeerBgpIp>169.254.11.2</PeerBgpIp>
<TunnelCidr>169.254.11.0/30</TunnelCidr>
<EnableBgp>true</EnableBgp>
<LocalBgpIp>169.254.11.1</LocalBgpIp>
<PeerAsn>65531</PeerAsn>
<LocalAsn>65530</LocalAsn>
</VpnBgpConfig>
</ModifyVpnConnectionAttributeResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"EnableNatTraversal" : true,
"CreateTime" : 1492753817000,
"EffectImmediately" : false,
"VpnGatewayId" : "vpn-bp1q8bgx4xnkm2ogj****",
"LocalSubnet" : "10.1.1.0/24,10.1.2.0/24",
"RequestId" : "7DB79D0C-5F27-4AB5-995B-79BE55102F90",
"VpnConnectionId" : "vco-bp1bbi27hojx80nck****",
"Description" : "description",
"RemoteSubnet" : "10.2.1.0/24,10.2.2.0/24",
"CustomerGatewayId" : "cgw-p0w2jemrcj5u61un8****",
"Name" : "nametest",
"EnableDpd" : true,
"IkeConfig" : {
"RemoteId" : "139.18.XX.XX",
"IkeLifetime" : 86400,
"IkeEncAlg" : "aes",
"LocalId" : "116.64.XX.XX",
"IkeMode" : "main",
"IkeVersion" : "ikev1",
"IkePfs" : "group2",
"Psk" : "pgw6dy7d1i8i****",
"IkeAuthAlg" : "sha1"
},
"IpsecConfig" : {
"IpsecAuthAlg" : "sha1",
"IpsecLifetime" : 86400,
"IpsecEncAlg" : "aes",
"IpsecPfs" : "group2"
},
"VcoHealthCheck" : {
"Dip" : "192.168.1.1",
"Interval" : 3,
"Retry" : 3,
"Sip" : "10.1.1.1",
"Enable" : "true"
},
"VpnBgpConfig" : {
"Status" : "success",
"PeerBgpIp" : "169.254.11.2",
"TunnelCidr" : "169.254.11.0/30",
"EnableBgp" : "true",
"LocalBgpIp" : "169.254.11.1",
"PeerAsn" : 65531,
"LocalAsn" : 65530
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | VpnGateway.Configuring | The specified service is configuring. | 服务正在配置中,请您稍后再试。 |
400 | VpnGateway.FinancialLocked | The specified service is financial locked. | 该服务已欠费,请您先充值再操作。 |
400 | InvalidName | The name is not valid | 该名称格式不合法。 |
400 | VpnRouteEntry.AlreadyExists | The specified route entry is already exist. | 该路由已存在。 |
400 | VpnRouteEntry.Conflict | The specified route entry has conflict. | 路由条目存在冲突。 |
400 | NotSupportVpnConnectionParameter.IpsecPfs | The specified vpn connection ipsec Ipsec Pfs is not support. | IPsec连接中指定的Pfs参数不支持 |
400 | NotSupportVpnConnectionParameter.IpsecAuthAlg | The specified vpn connection ipsec Auth Alg is not support. | IPsec连接中指定的认证算法不支持 |
400 | VpnRouteEntry.ConflictSSL | The specified route entry has conflict with SSL client. | 路由条目与SSL客户端冲突。 |
400 | VpnRouteEntry.BackupRoute | Validate backup route entry failed. | 主备路由条目校验失败。 |
400 | VpnRouteEntry.InvalidWeight | Invalid route entry weight value. | 路由权重值不合法 |
400 | QuotaExceeded.PBR | The policy-based routes has reached the upper limit. | 创建的策略路由条数已达上限 |
400 | OperationUnsupported.SetDPD | Current version of the VPN does not support setting DPD. | 当前VPN网关版本不支DPD功能。 |
400 | OperationUnsupported.SetNatTraversal | Current version of the VPN does not support setting NAT traversal. | 当前VPN网关版本不支持NAT穿越功能。 |
400 | QuotaExceeded.PolicyBasedRoute | The maximum number of policy-based routes is exceeded. Existing routes: %s. Routes to be created: %s. Maximum routes: %s. | 策略路由条数已达上限,当前已有%s条,本次将创建%s条,上限为%s条。 |
400 | MissingParameter.TunnelCidr | The parameter TunnelCidr is mandatory when BGP is enabled. | 开启BGP时,隧道CIDR参数是必填项 |
400 | OperationUnsupported.EnableBgp | Current version of the VPN does not support enable BGP. | 当前版本的VPN不支持开启BGP |
400 | MissingParam.CustomerGatewayAsn | Asn of customer gateway is mandatory when BGP is enabled. | 开启BGP时,客户网关的自治系统号不可以为空。 |
400 | IllegalParam.LocalAsn | The specified LocalAsn is invalid. | 本端自治系统号不合法。 |
400 | IllegalParam.BgpConfig | The specified BgpConfig is invalid. | 指定的BGP配置不合法 |
400 | IllegalParam.EnableBgp | VPN connection must enable BGP when VPN gateway has enabled BGP. | 当 VPN 网关启用 BGP 时,VPN 连接必须启用 BGP。 |
400 | IllegalParam.TunnelCidr | The specified TunnelCidr is invalid. | 参数TunnelCidr不合法。 |
400 | InvalidLocalBgpIp.Malformed | The specified LocalBgpIp is malformed. | 指定的本端BGP的IP异常 |
400 | IllegalParam.LocalBgpIp | The specified LocalBgpIp is invalid. | 本端BGP地址不合法。 |
400 | IllegalParam.LocalSubnet | The specified "LocalSubnet" (%s) is invalid. | 本端网段(%s)不合法。 |
400 | IllegalParam.RemoteSubnet | The specified "RemoteSubnet" (%s) is invalid. | 对端网段(%s)不合法。 |
400 | OperationFailed.CenLevelNotSupport | When the VPC to which the VPN gateway belongs is attached to a FULL-mode CEN, the VPN gateway cannot enable BGP. | 当VPN网关所属VPC加入到的CEN开启了FULL模式时,VPN网关不能开启BGP。 |
400 | InvalidTunnelCidr.Malformed | The specified TunnelCidr is malformed. | 指定的隧道CIDR异常 |
400 | CustomerGateway.ConflictRouteEntry | The specified customer gateway has conflict with route entry. | 当前用户网关和路由存在冲突。 |
400 | VpnTask.CONFLICT | Vpn task has conflict. | Vpn操作存在冲突,请稍后重试。 |
403 | Forbbiden.SubUser | User not authorized to operate on the specified resource as your account is created by another user. | 您没有权限操作该资源,请您申请操作权限后再试。 |
403 | Forbidden | User not authorized to operate on the specified resource. | 您没有权限操作指定资源,请申请权限后再操作。 |
404 | InvalidVpnConnectionInstanceId.NotFound | The specified vpn connection instance id does not exist. | 指定的VPN连接不存在,请您检查该VPN连接ID是否正确。 |
500 | OperationFailed.RouteConflictWithIPsecServer | Operation failed because the specified route conflicts with IPsec server. | 路由配置与IPsec服务端冲突。 |
访问错误中心查看更多错误码。