调用ModifyVpnAttachmentAttribute接口修改IPsec连接的配置。
接口说明
- 
修改双隧道模式的 IPsec-VPN 连接时,除配置必填参数外,支持配置以下请求参数:ClientToken、Name、 LocalSubnet、RemoteSubnet、EffectImmediately、TunnelOptionsSpecification 数组、EnableTunnelsBgp。 
- 
修改单隧道模式的 IPsec-VPN 连接时,除配置必填参数外,支持配置以下请求参数:ClientToken、Name、LocalSubnet、RemoteSubnet、EffectImmediately、IkeConfig、IpsecConfig、HealthCheckConfig、EnableDpd、EnableNatTraversal、BgpConfig、CustomerGatewayId。 
- 
ModifyVpnAttachmentAttribute 接口属于异步接口,即系统返回一个请求 ID,但该 IPsec 连接的配置尚未修改成功,系统后台的修改任务仍在进行。您可以调用 DescribeVpnConnection 查询 IPsec 连接的配置的修改状态: - 当 IPsec 连接处于 updating 状态时,表示 IPsec 连接的配置正在修改中。
- 当 IPsec 连接处于 attached 状态时,表示 IPsec 连接的配置修改成功。
 
- 
ModifyVpnAttachmentAttribute 接口不支持并发修改 IPsec 连接的配置。 
- 
调用 ModifyVpnAttachmentAttribute 接口时,不支持修改 IPsec 连接的网关类型。 
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用全部资源表示。
 
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
| 操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 | 
|---|---|---|---|---|
| vpc:ModifyVpnAttachmentAttribute | update | *VpnConnections acs:vpc:{#regionId}:{#accountId}:vpnconnection/{#VpnConnectionId} | 
 | 无 | 
请求参数
| 名称 | 类型 | 必填 | 描述 | 示例值 | 
|---|---|---|---|---|
| RegionId | string | 是 | IPsec 连接所属的地域 ID。 您可以通过调用 DescribeRegions 接口获取地域 ID。 | cn-hangzhou | 
| VpnConnectionId | string | 是 | IPsec 连接 ID。 | vco-p0w5112fgnl2ihlmf**** | 
| Name | string | 否 | IPsec 连接的名称。 名称长度为 1~100 个字符,不能以 | nametest | 
| LocalSubnet | string | 否 | 需要和本地数据中心互通的 VPC 侧的网段,用于第二阶段协商。 多个网段之间用半角逗号(,)分隔,例如:192.168.1.0/24,192.168.2.0/24。 关于 IPsec 连接路由模式的说明: 
 | 10.1.1.0/24,10.1.2.0/24 | 
| RemoteSubnet | string | 否 | 需要和 VPC 互通的本地数据中心侧的网段,用于第二阶段协商。 多个网段之间用半角逗号(,)分隔,例如:192.168.3.0/24,192.168.4.0/24。 关于 IPsec 连接路由模式的说明: 
 | 10.1.3.0/24,10.1.4.0/24 | 
| EffectImmediately | boolean | 否 | 选择 IPsec 连接的配置是否立即生效。 取值: 
 | false | 
| IkeConfig | string | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 第一阶段协商的配置信息: 
 | {"Psk":"1234****","IkeVersion":"ikev1","IkeMode":"main","IkeEncAlg":"aes","IkeAuthAlg":"sha1","IkePfs":"group2","IkeLifetime":86400,"LocalId":"47.XX.XX.1","RemoteId":"47.XX.XX.2"} | 
| IpsecConfig | string | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 第二阶段协商的配置信息: 
 | {"IpsecEncAlg":"aes","IpsecAuthAlg":"sha1","IpsecPfs":"group2","IpsecLifetime":86400} | 
| BgpConfig | string | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 BGP 的配置信息: 
 说明 
 | {"EnableBgp":"true","LocalAsn":"45104","TunnelCidr":"169.254.11.0/30","LocalBgpIp":"169.254.11.1"} | 
| HealthCheckConfig | string | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 健康检查配置信息: 
 | {"enable":"true","dip":"192.168.1.1","sip":"10.1.1.1","interval":"3","retry":"3","Policy": "revoke_route"} | 
| AutoConfigRoute | boolean | 否 | 是否自动配置路由。取值: 
 | true | 
| EnableDpd | boolean | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 是否开启 DPD(对等体存活检测)功能。取值: 
 | true | 
| EnableNatTraversal | boolean | 否 | 修改单隧道模式的 IPsec-VPN 连接时支持配置该参数。 是否开启 NAT 穿越功能。取值: 
 | true | 
| RemoteCaCert | string | 否 | 对端的 CA 证书。 说明 
当前参数暂不生效。
 | -----BEGIN CERTIFICATE----- MIIB7zCCAZW**** -----END CERTIFICATE----- | 
| ClientToken | string | 否 | 客户端 Token,用于保证请求的幂等性。 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。 说明 
若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 不一样。
 | 123e4567-e89b-12d3-a456-4266**** | 
| NetworkType | string | 否 | IPsec 连接的网络类型。取值: 
 | public | 
| CustomerGatewayId | string | 否 | IPsec 连接关联的用户网关实例。 说明 
仅单隧道模式 IPsec-VPN 连接支持配置本参数。
 | cgw-p0w2jemrcj5u61un8**** | 
| TunnelOptionsSpecification | array<object> | 否 | 配置隧道。 仅修改双隧道模式的 IPsec-VPN 连接时支持配置 TunnelOptionsSpecification 数组下的参数。您可以同时修改 IPsec-VPN 连接两条隧道的配置。 | |
| object | 否 | 配置隧道信息。 | ||
| TunnelId | string | 否 | 隧道 ID。 | tun-0jod7plwf2a0o9lvu**** | 
| CustomerGatewayId | string | 否 | 隧道关联的用户网关 ID。 说明 
仅双隧道模式 IPsec-VPN 连接支持配置本参数。
 | cgw-p0w2jemrcj5u61un8**** | 
| TunnelIndex | integer | 否 | 隧道的创建顺序。 
 | 1 | 
| EnableDpd | boolean | 否 | 是否为隧道开启 DPD(对等体存活检测)功能。取值: 
 | true | 
| EnableNatTraversal | boolean | 否 | 是否为隧道开启 NAT 穿越功能。取值: 
 | true | 
| TunnelBgpConfig | object | 否 | 为隧道添加 BGP 配置。 说明 
当您为 IPsec 连接开启 BGP 功能后(即指定 EnableTunnelsBgp 参数的值为 true)需要配置该参数。
 | |
| LocalAsn | long | 否 | 隧道本端(阿里云侧)的自治系统号。自治系统号取值范围:1~4294967295。默认值:45104。 说明 
建议您使用自治系统号的私有号码与阿里云建立 BGP 连接。自治系统号的私有号码范围请自行查阅文档。
 | 65530 | 
| LocalBgpIp | string | 否 | 隧道本端(阿里云侧)的 BGP 地址。该地址为 BGP 网段内的一个 IP 地址。 | 169.254.10.1 | 
| TunnelCidr | string | 否 | 隧道的 BGP 网段。该网段需是一个在 169.254.0.0/16 内的掩码长度为 30 的网段,且不能是 169.254.0.0/30、169.254.1.0/30、169.254.2.0/30、169.254.3.0/30、169.254.4.0/30、169.254.5.0/30、169.254.6.0/30 和 169.254.169.252/30。 说明 
一个 IPsec 连接下两个隧道的隧道网段不能相同。
 | 169.254.10.0/30 | 
| TunnelIkeConfig | object | 否 | 第一阶段协商的配置信息。 | |
| IkeAuthAlg | string | 否 | 第一阶段协商的认证算法。取值:md5、sha1、sha256、sha384、sha512。 | sha1 | 
| IkeEncAlg | string | 否 | 第一阶段协商的加密算法。取值:aes、aes192、aes256、des 或 3des。 | aes | 
| IkeLifetime | long | 否 | 第一阶段协商出的 SA 的生存周期。单位:秒。 取值范围:0~86400。 | 86400 | 
| IkeMode | string | 否 | IKE 版本的协商模式。取值:main 或 aggressive。 
 | main | 
| IkePfs | string | 否 | 第一阶段协商使用的 Diffie-Hellman 密钥交换算法。 取值:group1、group2、group5、group14。 | group2 | 
| IkeVersion | string | 否 | IKE 协议的版本。取值:ikev1 或 ikev2。 相对于 IKEv1 版本,IKEv2 版本简化了 SA 的协商过程并且对于多网段的场景提供了更好的支持。 | ikev2 | 
| LocalId | string | 否 | 隧道本端(阿里云侧)的标识,用于第一阶段的协商。长度限制为 100 个字符,不能包含空格。 LocalId 支持 FQDN 格式,如果您使用 FQDN 格式,协商模式建议选择为 aggressive(野蛮模式)。 | 47.XX.XX.1 | 
| Psk | string | 否 | 预共享密钥,用于隧道与隧道对端之间的身份认证。 
 说明 
隧道及隧道对端的预共享密钥需一致,否则系统无法正常建立隧道。
 | 123456**** | 
| RemoteId | string | 否 | 隧道对端的标识,用于第一阶段的协商。长度限制为 100 个字符,不能包含空格。 RemoteId 支持 FQDN 格式,如果您使用 FQDN 格式,协商模式建议选择为 aggressive(野蛮模式)。 | 47.XX.XX.2 | 
| TunnelIpsecConfig | object | 否 | 第二阶段协商的配置信息。 | |
| IpsecAuthAlg | string | 否 | 第二阶段协商的认证算法。 取值:md5、sha1、sha256、sha384、sha512。 | sha1 | 
| IpsecEncAlg | string | 否 | 第二阶段协商的加密算法。取值:aes、aes192、aes256、des 或 3des。 | aes | 
| IpsecLifetime | integer | 否 | 第二阶段协商出的 SA 的生存周期。单位:秒。 取值范围:0~86400。 | 86400 | 
| IpsecPfs | string | 否 | 第二阶段协商使用的 Diffie-Hellman 密钥交换算法。 取值:disabled、group1、group2、group5、group14。 | group2 | 
| EnableTunnelsBgp | boolean | 否 | 修改双隧道模式的 IPsec-VPN 连接时支持配置该参数。 是否为隧道开启 BGP 功能。取值:true 或 false。 说明 
在添加 BGP 配置前,建议您先了解 BGP 动态路由功能的工作机制和使用限制。更多信息,请参见配置 BGP 动态路由。
 | false | 
返回参数
示例
正常返回示例
JSON格式
{
  "VpnConnectionId": "vco-p0w5112fgnl2ihlmf****",
  "CustomerGatewayId": "cgw-p0w2jemrcj5u61un8****",
  "VpnGatewayId": "vpn-not-exist",
  "Name": "nametest",
  "Description": "desctest",
  "LocalSubnet": "10.1.1.0/24,10.1.2.0/24",
  "RemoteSubnet": "10.1.3.0/24,10.1.4.0/24",
  "IkeConfig": {
    "Psk": "1234***",
    "IkeVersion": "ikev1",
    "IkeMode": "main",
    "IkeEncAlg": "aes",
    "IkeAuthAlg": "sha1",
    "IkePfs": "group2",
    "IkeLifetime": 86400,
    "LocalId": "47.XX.XX.1",
    "RemoteId": "47.XX.XX.2"
  },
  "IpsecConfig": {
    "IpsecEncAlg": "aes",
    "IpsecAuthAlg": "md5",
    "IpsecPfs": "group2",
    "IpsecLifetime": 86400
  },
  "CreateTime": 1658201810000,
  "EffectImmediately": false,
  "Status": "ike_sa_not_established",
  "VcoHealthCheck": {
    "Enable": true,
    "Sip": "10.1.1.1",
    "Dip": "192.168.1.1",
    "Interval": 3,
    "Retry": 3,
    "Policy": "revoke_route"
  },
  "EnableDpd": true,
  "EnableNatTraversal": true,
  "VpnBgpConfig": {
    "EnableBgp": true,
    "TunnelCidr": "169.254.11.0/30",
    "LocalBgpIp": "169.254.11.1",
    "PeerBgpIp": "169.254.11.2",
    "LocalAsn": 45104,
    "PeerAsn": 65535,
    "Status": false
  },
  "AttachType": "CEN",
  "NetworkType": "public",
  "AttachInstanceId": "cen-c2r3m3zxkumoqz****",
  "Spec": "1000M",
  "ResourceGroupId": "rg-acfmzs372yg****",
  "TunnelOptionsSpecification": [
    {
      "CustomerGatewayId": "cgw-p0w2jemrcj5u61un8****",
      "EnableDpd": true,
      "EnableNatTraversal": true,
      "InternetIp": "47.XX.XX.66",
      "Role": "master",
      "TunnelId": "tun-0jod7plwf2a0o9lvu****",
      "TunnelIndex": 1,
      "State": "active",
      "TunnelBgpConfig": {
        "LocalAsn": 65530,
        "LocalBgpIp": "169.254.10.1",
        "PeerAsn": 65531,
        "PeerBgpIp": "169.254.10.2",
        "TunnelCidr": "169.254.10.0/30"
      },
      "TunnelIkeConfig": {
        "IkeAuthAlg": "sha1",
        "IkeEncAlg": "aes",
        "IkeLifetime": 86400,
        "IkeMode": "main",
        "IkePfs": "group2",
        "IkeVersion": "ikev2",
        "LocalId": "47.XX.XX.1",
        "Psk": "123456****",
        "RemoteId": "47.XX.XX.2"
      },
      "TunnelIpsecConfig": {
        "IpsecAuthAlg": "sha1",
        "IpsecEncAlg": "aes",
        "IpsecLifetime": 86400,
        "IpsecPfs": "group2"
      }
    }
  ],
  "EnableTunnelsBgp": false,
  "RequestId": "35822A84-867F-3936-A2E6-A4C4E3ED11C0"
}错误码
| HTTP status code | 错误码 | 错误信息 | 描述 | 
|---|---|---|---|
| 400 | VpnConnection.Configuring | The specified service is configuring. | 服务正在配置中,请您稍后再试。 | 
| 400 | VpnConnection.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.BackupRoute | Validate backup route entry failed. | 主备路由条目校验失败。 | 
| 400 | VpnRouteEntry.InvalidWeight | Invalid route entry weight value. | 路由权重值不合法 | 
| 400 | MissingParameter.TunnelCidr | The parameter TunnelCidr is mandatory when BGP is enabled. | 开启BGP时,隧道CIDR参数是必填项 | 
| 400 | OperationUnsupported.EnableBgp | Current region does not support enable BGP. | 当前地域不支持开启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 | CustomerGateway.ConflictRouteEntry | The specified customer gateway has conflict with route entry. | 当前用户网关和路由存在冲突。 | 
| 400 | IllegalParam.NetworkType | The specified NetworkType (%s) is invalid. | 网络类型不合法。 | 
| 400 | InvalidTunnelCidr.Malformed | The specified TunnelCidr is malformed. | 指定的隧道CIDR异常 | 
| 400 | VpnGateway.Configuring | The specified service is configuring. | 服务正在配置中,请您稍后再试。 | 
| 400 | VpnTask.CONFLICT | Vpn task has conflict. | Vpn操作存在冲突,请稍后重试。 | 
| 400 | ModifyIkeV1WithMultiRoutes.Invalid | Failed to modify VPN connection parameters. Multi-network is configured while using IkeV1 protocol. | 修改VPN连接参数失败,在使用IkeV1协议的同时配置了多网端。 | 
| 400 | InvalidVpnGatewayInstanceId.NotFound | The specified vpn gateway instance id does not exist. | 指定的 VPN 网关不存在,请您检查 VPN 网关是否正确。 | 
| 400 | Resource.QuotaFull | The resources you are operating have reached the upper limit of the quota. Please increase the quota or use other solutions to avoid it according to the VPN operation document. | 您现在所操作的资源目前已经达到了配额的上限,请参考VPN操作文档,进行配额提升或者使用其他方案进行规避。 | 
| 400 | CreateDbrRoutesQuotaFull.QuotaFull | The number of created destination routes exceeds the quota limit. | 创建目的路由数量超过配额限制。 | 
| 400 | CreatePbrRoutesQuotaFull.QuotaFull | The number of policy routes exceeds the quota limit. | 策略路由数量超过配额限制。 | 
| 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是否正确。 | 
访问错误中心查看更多错误码。
变更历史
| 变更时间 | 变更内容概要 | 操作 | 
|---|---|---|
| 2024-11-28 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 查看变更详情 | 
| 2024-11-26 | OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更 | 查看变更详情 | 
| 2024-11-25 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 查看变更详情 | 
| 2024-10-24 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更、OpenAPI 返回结构发生变更 | 查看变更详情 | 
| 2024-01-04 | OpenAPI 错误码发生变更 | 查看变更详情 | 
| 2023-10-19 | OpenAPI 描述信息更新、OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更 | 查看变更详情 | 
