华为云用户手册

  • URI POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-create 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 vpn_server_id String 是 VPN服务端ID。 表2 请求Header参数列表 名称 类型 是否必选 描述 X-Client-Token String 否 功能说明:幂等性标识。 格式:36位UUID。
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表5 响应Body参数列表 名称 类型 描述 invalid_users Arrays of InvalidVpnUser Object 无效VPN用户对象列表。如果invalid_users列表不为空,说明本次批量创建用户均失败,请传入正确的请求参数后再重试。 request_id String 请求ID。 表6 InvalidVpnUser 名称 类型 描述 name String 用户名称。 description String 用户描述。 user_group_name String 所属用户组名称。 static_ip String 客户端的静态IP地址。 cause String 原因。 响应样例 批量创建成功响应样例: { "invalid_users": [], "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" } 存在非法用户请求时的响应样例: { "invalid_users": [ { "name": "USER1", "description": "用户描述", "user_group_name": "default", "cause": "Duplicate user name." }, { "name": "USER2", "description": "用户描述", "user_group_name": "default", "cause": "Password length invalid." } ], "request_id": "49b52ed16992baa4650d093b512a59b6" }
  • 概述 欢迎使用 虚拟专用网络 (Virtual Private Network,以下简称VPN)。VPN用于在远端用户和虚拟私有云(Virtual Private Cloud,以下简称VPC)之间建立一条安全加密的公网通信隧道。默认情况下,在虚拟私有云(VPC)中的弹性云服务器无法与用户的数据中心或私有网络进行通信。如果需要将VPC中的弹性云服务器和数据中心或私有网络连通,可以启用VPN功能。VPN服务有站点入云VPN和终端入云VPN。站点入云VPN用于在您的本地网络、数据中心与华为云云上网络之间搭建安全、可靠、高性价比的加密连接通道;终端入云VPN用于在您的办公软件与华为云云上网络之间搭建安全、可靠、高性价比的加密连接通道。
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表6 响应Body参数列表 名称 类型 描述 vpn_gateway ResponseVpnGateway object VPN网关对象。 request_id String 请求ID。 表7 ResponseVpnGateway 名称 类型 描述 id String 功能说明:VPN网关ID。 格式:36位UUID。 name String 功能说明:VPN网关名称。 取值范围:1-64个字符,包括数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 network_type String 功能说明:VPN网关网络类型。 取值范围:public,private。 默认值:public。 attachment_type String 功能说明:关联模式。 取值范围:vpc,er。 ip_version String 功能说明:VPN网关的IP协议版本。 取值范围:ipv4、ipv6。 certificate_id String 功能说明:证书ID。 格式:36位UUID。 er_id String VPN网关所连接的ER实例的ID。仅当attachment_type为er时返回。 vpc_id String 当attachment_type为vpc时,vpc_id是VPN网关关联的业务VPC的ID。 当attachment_type为er时,不返回此字段。可以通过access_vpc_id字段查看VPN网关的接入VPC的ID。 local_subnets Array of String IPv4本端子网。本端子网是云上子网,该网段需要通过VPN与用户侧网络进行互通。单个网段格式示例:192.168.52.0/24。仅当attachment_type为vpc且ip_version为ipv4时返回。 local_subnets_v6 Array of String IPv6本端子网。本端子网是云上子网,该网段需要通过VPN与用户侧网络进行互通。单个网段格式示例:16af:cacc:1097::/48。仅当attachment_type为vpc且ip_version为ipv6时返回。 connect_subnet String VPN网关所使用的VPC中的一个子网ID。 bgp_asn Long VPN网关的BGP自治域编号。 flavor String 功能说明:VPN网关的规格类型。实际可选范围请参考VPN控制台创建VPN网关页面的Specification选项。 取值范围: v300:最大转发带宽300Mbps。该取值已经废弃,但仍然保留兼容性支持,建议不要使用该取值。 v1g:最大转发带宽1Gbps。该取值已经废弃,但仍然保留兼容性支持,建议不要使用该取值。 Basic:最大转发带宽100Mbps。 Professional1:最大转发带宽300Mbps。 Professional1-NonFixedIP:最大转发带宽300Mbps。 Professional2-NonFixedIP:最大转发带宽1Gbps。 GM: 最大转发带宽500Mbps。 connection_number Integer VPN网关下的最大VPN连接数。 used_connection_number Integer VPN网关下当前已经使用的VPN连接数。 used_connection_group Integer VPN网关下当前已经使用的VPN连接组个数。同一用户网关入云的两条连接组成一个连接组。VPN网关默认支持10个免费的VPN连接组。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID或者"0"。 access_vpc_id String 功能说明:VPN网关使用的接入VPC ID。 格式:36位UUID。 access_subnet_id String 功能说明:VPN网关使用的接入VPC中的子网ID。 格式:36位UUID。 ha_mode String 功能说明:网关的HA模式,"active-active"表示双活,"active-standby"表示主备。 取值范围:active-active,active-standby。 默认值:active-active。 policy_template PolicyTemplate object 非固定IP接入VPN网关网关的策略模板配置,只有在规格为非固定IP接入VPN网关时返回。 tags Array of VpnResourceTag objects 标签列表。 表8 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 表9 PolicyTemplate 名称 类型 描述 ike_policy IkePolicy object ike 策略对象。 ipsec_policy IpsecPolicy object ipsec 策略对象。 表10 IkePolicy 名称 类型 描述 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 dh_group String 功能说明:第一阶段密钥交换使用的DH组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 表11 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 pfs String 功能说明:PFS使用的DH密钥组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 响应样例 使用已有EIP创建关联VPC的VPN网关的响应。 { "vpn_gateway": { "id": "134f9fb1-demo-a8df-va86-2040a5c13325", "name": "vpngw-9f24", "network_type": "public", "attachment_type": "vpc", "ip_version": "ipv4", "vpc_id": "0cf79a3f-demo-a8df-va86-d7ace626b0fa", "local_subnets": ["192.168.0.0/24"], "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "bgp_asn": 64512, "flavor": "Professional1", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "0cf79a3f-demo-a8df-va86-d7ace626b0fa", "access_subnet_id": "f5741286-demo-a8df-va86-2c82bd9ee114", "ha_mode": "active-active" }, "request_id": "7b37532a-d6e4-46b9-98dc-9169ec2ca58f" } 新建EIP创建关联ER的VPN网关的响应。 { "vpn_gateway": { "id": "80ac167b-demo-a8df-va86-a9a2a23223b8", "name": "vpngw-1234", "network_type": "public", "attachment_type": "er", "ip_version": "ipv4", "er_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "bgp_asn": 65533, "flavor": "Professional2", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "0cf79a3f-demo-a8df-va86-d7ace626b0fa", "access_subnet_id": "f5741286-demo-a8df-va86-2c82bd9ee114", "ha_mode": "active-active" }, "request_id": "cd71cade-bfbd-410b-b672-4bfe46cfc311" } 创建私网关联VPC的VPN网关的响应。 { "vpn_gateway": { "id": "80ac167b-demo-a8df-va86-a9a2a23223b8", "name": "vpngw-1234", "network_type": "private", "attachment_type": "vpc", "ip_version": "ipv4", "vpc_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "local_subnets": ["192.168.0.0/24", "192.168.1.0/24"], "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "bgp_asn": 65533, "flavor": "Professional2", "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "access_vpc_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "access_subnet_id": "f5741286-demo-a8df-va86-2c82bd9ee114", "ha_mode": "active-active" }, "request_id": "cd71cade-bfbd-410b-b672-4bfe46cfc311" }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 vpn_gateway CreateVgwRequestBodyContent object 是 VPN网关对象。 表3 CreateVgwRequestBodyContent 名称 类型 是否必选 描述 name String 否 功能说明:VPN网关名 称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点)。 默认值:不填时会自动生成格式为vpngw-****的名称。例如:vpngw-a45b。 network_type String 否 功能说明:VPN网关网络类型,公网(public)类型的VPN网关通过EIP与对端网关建连;私网(private)类型的VPN网关通过VPC内的私网IP与对端网关建连。 取值范围:public,private。 默认值:public。 attachment_type String 否 功能说明:关联模式。 取值范围:vpc,er。 默认值:vpc。 ip_version String 否 功能说明:VPN网关的IP协议版本。 取值范围:ipv4、ipv6。 默认值:ipv4 er_id String 否 功能说明:VPN网关所连接的ER实例的ID。 约束:36位UUID。 当attachment_type配置为"er"时填写,否则不填。 er_id和vpc_id不能同时为空。 可以通过查询企业路由列表查看ER实例的ID。 vpc_id String 否 功能说明: 当attachment_type为vpc时,vpc_id是VPN网关关联的业务VPC的ID。 当attachment_type为er时,vpc_id是VPN网关的接入VPC的ID,此时可以使用任意VPC的ID。 约束:36位UUID。 当attachment_type配置为"vpc"时必填;当attachment_type配置为"er"时可不填写,当vpc_id和access_vpc_id都填写时,access_vpc_id生效。 vpc_id和er_id不能同时为空。 可以通过查询VPC列表查询VPC列表查看VPC的ID。 local_subnets Array of String 否 功能说明:IPv4本端子网是云上子网,该子网需要通过VPN与云下对端子网进行互通。 每个VPN网关最多填写50个本端子网,单个子网格式示例:192.168.52.0/24。 约束:当attachment_type配置为"vpc"时、且ip_version配置为"ipv4"时必填,否则不填。 local_subnets_v6 Array of String 否 功能说明:IPv6本端子网是云上子网,该子网需要通过VPN与云下对端子网进行互通。 每个VPN网关最多填写50个本端子网,单个子网格式示例:16af:cacc:1097::/48。 约束:当attachment_type配置为"vpc"时、且ip_version配置为"ipv6"时必填,否则不填。 connect_subnet String 否 功能说明:VPN网关使用的VPC子网ID。 约束:36位UUID。 当attachment_type配置为"vpc"时必填;当attachment_type配置为"er"时可不填写,当connect_subnet和access_subnet_id都填写时,access_subnet_id生效。 当attachment_type为er时,子网中需要有至少2个空闲IP。 当attachment_type为vpc时,如果access_subnet_id与connect_subnet相同,则子网中需要有至少4个空闲IP;如果不同,则需要至少2个空闲IP。 bgp_asn Long 否 功能说明:VPN网关的BGP自治域编号。 取值范围:1-4294967295。 默认值:64512。 flavor String 否 功能说明:VPN网关的规格类型。实际可选范围请参考VPN控制台创建VPN网关页面的Specification选项。 取值范围: Basic Professional1 Professional1-NonFixedIP Professional2-NonFixedIP GM 不同规格类型的特性,请参考站点入云VPN产品规格《虚拟专用网络用户指南》的“产品规格”章节。 华北-乌兰察布一:Basic、Professional1、Professional2、 GM 华南-广州:Basic、Professional1、Professional2 华北-北京四:Basic、Professional1、Professional2 华东-上海一:Basic、Professional1、Professional2 西南-贵阳一:Basic、Professional1、Professional2 中国-香港:Professional1、Professional2 亚太-曼谷:Professional1、Professional2 亚太-新加坡:Professional1、Professional2 亚太-雅加达:Professional1、Professional2 欧洲-都柏林:Professional1、Professional2 中东-阿布扎比-OP5:Professional1、Professional2 拉美-墨西哥城二:Professional1、Professional2 土耳其-伊斯坦布尔:Professional1、Professional2 约束:当network_type为private时不能填写Basic;当attachment_type为er时不能填写Basic。 默认值:Professional1。 availability_zone_ids Array of String 否 功能说明:部署VPN网关的可用区。不填时自动为VPN网关选择可用区。如果需要指定可用区可以通过查询VPN网关可用区查询可用区列表,再根据flavor、attachment_type、ip_version的参数组合确定VPN网关支持的可用区。 约束:如果VPN网关支持两个及以上的可用区时,必须填写两个可用区;支持一个可用区时填写一个;无支持可用区时不能创建VPN网关。 enterprise_project_id String 否 功能说明:企业项目ID。 约束:36位UUID或者"0"。 默认值:"0",表示资源属于default企业项目。 eip1 CreateRequestEip object 否 功能说明:双活VPN网关表示使用的第一个EIP,主备模式网关表示主EIP。 约束:network_type为public时必选,为private时不需要填写。 eip2 CreateRequestEip object 否 功能说明:双活VPN网关表示使用的第二个EIP,主备模式网关表示备EIP。 约束:network_type为public时必选,为private时不需要填写。 access_vpc_id String 否 功能说明:VPN网关使用的接入VPC ID。 约束:36位UUID。 默认值:同vpc_id字段所填的值。 可以通过查询VPC列表查询VPC列表查看VPC的ID。 access_subnet_id String 否 功能说明:VPN网关使用的接入VPC中的子网ID。 约束:36位UUID。 当attachment_type为er时,子网中需要有至少2个空闲IP。 当attachment_type为vpc时,如果access_subnet_id与connect_subnet相同,则子网中需要有至少4个空闲IP;如果不同,则需要至少2个空闲IP。 默认值:同connect_subnet字段所填的值。 ha_mode String 否 功能说明:网关的HA模式,"active-active"表示双活,"active-standby"表示主备。 取值范围:active-active,active-standby。 默认值:active-active。 access_private_ip_1 String 否 功能说明:私网类型VPN网关的接入私网IP1,指定ip创建私网网关时设置,主备网关时为主ip,双活网关时为主ip1。 取值范围:接入子网网段内的可分配ip。 约束:需与接入ip2同时指定,不能与接入ip2重复。 access_private_ip_2 String 否 功能说明:私网类型VPN网关的接入私网IP2,指定ip创建私网网关时设置,主备网关时为备ip,双活网关时为主ip2。 取值范围:接入子网网段内的可分配ip。 约束:需与接入ip1同时指定,不能与接入ip1重复。 tags Array of VpnResourceTag objects 否 功能说明:标签列表。 约束:最多填写20个。 表4 CreateRequestEip 名称 类型 是否必选 描述 id String 否 功能说明:EIP的ID。 取值范围:36位UUID。 约束:当使用已有EIP时填写,当新创建EIP时不填。 可以通过全量查询弹性公网IP列表查看EIP的ID。 type String 否 功能说明:EIP的类型。 取值范围:0-36个字符。 可查看申请EIP表6中type字段的取值范围。如果对应局点支持5_bgp类型,建议优先选择该类型。 约束:当新创建EIP场景时需要填写,否则不填。 具体约束可查看申请EIP表4中type字段的约束。 charge_mode String 否 功能说明:EIP的带宽计费模式。按流量计费或按带宽计费。 取值范围: bandwidth:按带宽计费。 traffic:按流量计费。 约束:当新创建EIP场景且不绑定共享带宽时需要填写,否则不填。 默认值:bandwidth。 bandwidth_size Integer 否 功能说明:EIP的带宽大小,单位:Mbit/s。每个region能够提供的EIP最大带宽不同,EIP的最大带宽受限于EIP服务,可以使用工单来提高帐户下的EIP的最大带宽。 取值范围:1-1000,具体取值请参考弹性公网服务创建EIP资料。 约束:当新创建EIP场景且不绑定共享带宽时需要填写,否则不填。 flavor为Basic时,取值不能大于100;flavor为Professional1时,取值不能大于300;flavor为GM时,取值不能大于500。 bandwidth_name String 否 功能说明:EIP的带宽名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点)。 约束:当新创建EIP场景且不绑定共享带宽时需要填写,否则不填。 默认值:当新创建EIP场景时,不填此字段会自动生成格式为vpngw-bandwidth-****的EIP带宽名称。例如:vpngw-bandwidth-e1fa。 bandwidth_id String 否 功能说明:带宽ID,创建弹性公网IP时可以指定已有的共享带宽。 取值范围:36位UUID。 约束:绑定共享带宽时需要填写,否则不填。 表5 VpnResourceTag 名称 类型 是否必选 描述 key String 是 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 是 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 请求样例 使用已有EIP创建关联VPC的VPN网关。 POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "vpc_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "eip1": { "id": "cff40e5e-demo-a8df-va86-7366077bf097" }, "eip2": { "id": "d290f1ee-demo-a8df-va86-d701748f0851" } } } 新建EIP创建关联ER的VPN网关。 POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "name": "vpngw-1234", "attachment_type": "er", "er_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "vpc_id": "584a238f-demo-a8df-va86-edca746f6277", "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "bgp_asn": 65533, "flavor": "Professional2", "availability_zone_ids": [ "cn-south-1f", "cn-south-1e" "az1", "az2", ], "eip1": { "type": "5_bgp", "charge_mode": "bandwidth", "bandwidth_size": 1000, "bandwidth_name": "vpngw-bandwidth-1391" }, "eip2": { "type": "5_bgp", "charge_mode": "bandwidth", "bandwidth_size": 1000, "bandwidth_name": "vpngw-bandwidth-1392" } } } 创建私网关联VPC的VPN网关。 POST https://{Endpoint}/v5/{project_id}/vpn-gateways { "vpn_gateway": { "vpc_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "network_type": "private" } }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表7 响应Body参数列表 名称 类型 描述 vpn_gateway ResponseVpnGateway object vpn_gateway对象。 request_id String 请求ID。 表8 ResponseVpnGateway 名称 类型 描述 id String 功能说明:VPN网关ID。 格式:36位UUID。 name String 功能说明:VPN网关名称。 取值范围:1-64个字符,包括数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 network_type String 功能说明:VPN网关网络类型。 取值范围:public,private。 默认值:public。 attachment_type String 功能说明:关联模式。 取值范围:vpc,er。 ip_version String 功能说明:VPN网关的IP协议版本。 取值范围:ipv4、ipv6。 certificate_id String 功能说明:证书ID。 格式:36位UUID。 er_id String VPN网关所连接的ER实例的ID。仅当attachment_type为er时返回。 vpc_id String 当attachment_type为vpc时,vpc_id是VPN网关关联的业务VPC的ID。 当attachment_type为er时,vpc_id是VPN网关的接入VPC的ID。 local_subnets Array of String 本端子网。本端子网是云上子网,该网段需要通过VPN与用户侧网络进行互通。单个网段格式示例:192.168.52.0/24。仅当attachment_type为vpc且ip_version为ipv4时返回。 local_subnets_v6 Array of String IPv6本端子网。本端子网是云上子网,该网段需要通过VPN与用户侧网络进行互通。单个网段格式示例:16af:cacc:1097::/48。仅当attachment_type为vpc且ip_version为ipv6时返回。 connect_subnet String VPN网关所使用的VPC中的一个子网ID。 bgp_asn Long VPN网关的BGP自治域编号。 flavor String 功能说明:VPN网关的规格类型: 取值范围: Basic:最大转发带宽100Mbps。 Professional1:最大转发带宽300Mbps。 Professional1-NonFixedIP:最大转发带宽300Mbps。 Professional2-NonFixedIP:最大转发带宽1Gbps。 GM:最大转发带宽500Mbps。 availability_zone_ids Array of String 部署VPN网关的可用区。当指定了可用区时则返回;当未指定可用区时,在VPN网关的状态为ACTIVE时返回。 connection_number Integer VPN网关下的最大VPN连接数。 used_connection_number Integer VPN网关下当前已经使用的VPN连接数。 used_connection_group Integer VPN网关下当前已经使用的VPN连接组个数。同一用户网关入云的两条连接组成一个连接组。VPN网关默认支持10个免费的VPN连接组。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID。创建时不传则返回"0",表示资源属于default企业项目。 注:"0"并不是真实存在的企业项目ID。 eip1 ResponseEip object 双活VPN网关表示使用的第一个EIP,主备VPN网关表示主EIP。在VPN网关的状态为ACTIVE时返回。 eip2 ResponseEip object 双活VPN网关表示使用的第二个EIP,主备VPN网关表示备EIP。在VPN网关的状态为ACTIVE时返回。 created_at String 创建时间。在VPN网关的状态为ACTIVE时返回。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 最后一次更新时间。在VPN网关的状态为ACTIVE时返回。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 access_vpc_id String 功能说明:VPN网关使用的接入VPC ID。 格式:36位UUID。 access_subnet_id String 功能说明:VPN网关使用的接入VPC中的子网ID。 格式:36位UUID。 access_private_ip_1 String 私网类型VPN网关的接入私网IP,VPN网关使用该私网IP与对端网关建连。双活网关表示使用的第一个私网地址,主备表示主私网地址。 示例:192.168.52.9。仅当network_type为private时返回。 access_private_ip_2 String 私网类型VPN网关的接入私网IP,VPN网关使用该私网IP与对端网关建连。双活网关表示使用的第二个私网地址,主备表示备私网地址。 示例:192.168.52.9。仅当network_type为private时返回。 ha_mode String 功能说明:网关的HA模式,"active-active"表示双活,"active-standby"表示主备。 取值范围:active-active,active-standby。 policy_template PolicyTemplate object 非固定IP接入VPN网关的策略模板配置,只有在规格为非固定IP接入VPN网关时返回。 tags Array of VpnResourceTag objects 标签列表。 表9 ResponseEip 名称 类型 描述 id String 功能说明:EIP的ID。 格式:36位UUID。当使用默认企业项目时返回"0"。 ip_version Integer 功能说明:EIP版本。 取值范围:4。 ip_billing_info String 功能说明:EIP的订单信息。包年/包月EIP才会返回订单信息,按需计费的EIP不返回。 格式:order_id:product_id:region_id:project_id,如: CS 22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa。 type String 功能说明:EIP的类型。 取值范围:可查看申请EIP表6《弹性公网IP接口参考》的“申请弹性公网IP”章节中type字段的取值范围。 ip_address String 功能说明:EIP的公网IPv4地址。 格式:ipv4类型地址。例如:88.***.***.11。 charge_mode String 功能说明:EIP的带宽计费模式。按流量计费或按带宽计费。 取值范围: bandwidth:按带宽计费。 traffic:按流量计费。 bandwidth_id String 功能说明:EIP的带宽ID。 格式:36位UUID。 bandwidth_size Integer 功能说明:EIP的带宽大小,单位:Mbit/s。每个region能够提供的EIP最大带宽不同,EIP的最大带宽受限于EIP服务,可以使用工单来提高帐户下的EIP的最大带宽。 取值范围:1-1000,具体取值请参考弹性公网服务创建eip资料。 bandwidth_name String 功能说明:EIP的带宽名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点)。 bandwidth_billing_info String 功能说明:EIP的带宽订单信息。包年/包月EIP带宽才会返回带宽订单信息,按需计费的EIP带宽不返回。 格式:order_id:product_id:region_id:project_id,如: CS22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa。 share_type String 功能说明: 带宽共享类型。 取值范围: PER:独享带宽。 WHOLE:共享带宽。 表10 PolicyTemplate 名称 类型 描述 ike_policy IkePolicy object ike策略对象。 ipsec_policy IpsecPolicy object ipsec策略对象。 表11 IkePolicy 名称 类型 描述 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 dh_group String 功能说明:第一阶段密钥交换使用的DH组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 表12 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 pfs String 功能说明:PFS使用的DH密钥组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 表13 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 响应样例 更新固定IP接入VPN网关的响应。 { "vpn_gateway": { "id": "620d99b8-demo-a8df-va86-200b868f2d7d", "name": "vpngw-4321", "attachment_type": "vpc", "network_type": "public", "ip_version": "ipv4", "vpc_id": "cb4a631d-demo-a8df-va86-ca3fa348c36c", "local_subnets": [ "192.168.0.0/24" ], "connect_subnet": "f5741286-demo-a8df-va86-2c82bd9ee114", "bgp_asn": 64512, "flavor": "Professional1", "availability_zone_ids": ["cn-south-1f", "cn-south-1e"], "availability_zone_ids": ["az1", "az2"], "connection_number": 200, "used_connection_number": 0, "used_connection_group": 0, "enterprise_project_id": "0", "eip1": { "id": "f1469b4a-demo-a8df-va86-bb7de91cf493", "ip_version": 4, "type": "5_bgp", "ip_address": "88.***.***.102", "charge_mode": "bandwidth", "bandwidth_id": "cff40e5e-demo-a8df-va86-7366077bf097", "bandwidth_size": 300, "bandwidth_name": "vpngw-bandwidth-1391" }, "eip2": { "id": "6ad8e297-demo-a8df-va86-da0f885ccb98", "ip_version": 4, "type": "5_bgp", "ip_address": "88.***.***.188", "charge_mode": "bandwidth", "bandwidth_id": "d290f1ee-demo-a8df-va86-d701748f0851", "bandwidth_size": 300, "bandwidth_name": "vpngw-bandwidth-1392" }, "created_at": "2022-09-15T08:56:09.386Z", "updated_at": "2022-09-15T11:13:13.677Z", "access_vpc_id": "0cf79a3f-demo-a8df-va86-d7ace626b0fa", "access_subnet_id": "f5741286-demo-a8df-va86-2c82bd9ee114", "ha_mode": "active-active" }, "request_id": "33a2b77a-65f9-4fa0-90bd-4bd42038eb41" } 更新非固定IP接入VPN网关的响应。 { "vpn_gateway":{ "id":"620d99b8-demo-a8df-va86-200b868f2d7d", "name":"vpngw-4321", "attachment_type":"vpc", "network_type":"public", "ip_version": "ipv4", "vpc_id":"cb4a631d-demo-a8df-va86-ca3fa348c36c", "local_subnets":[ "192.168.0.0/24" ], "connect_subnet":"f5741286-demo-a8df-va86-2c82bd9ee114", "bgp_asn":64512, "flavor":"Professional1", "availability_zone_ids":[ "cn-south-1f", "cn-south-1e" ], "connection_number":200, "used_connection_number":0, "used_connection_group":0, "enterprise_project_id":"0", "eip1":{ "id":"f1469b4a-demo-a8df-va86-bb7de91cf493", "ip_version":4, "type":"5_bgp", "ip_address":"88.***.***.102", "charge_mode":"bandwidth", "bandwidth_id":"cff40e5e-demo-a8df-va86-7366077bf097", "bandwidth_size":300, "bandwidth_name":"vpngw-bandwidth-1391" }, "eip2":{ "id":"6ad8e297-demo-a8df-va86-da0f885ccb98", "ip_version":4, "type":"5_bgp", "ip_address":"88.***.***.188", "charge_mode":"bandwidth", "bandwidth_id":"d290f1ee-demo-a8df-va86-d701748f0851", "bandwidth_size":300, "bandwidth_name":"vpngw-bandwidth-1392" }, "created_at":"2022-09-15T08:56:09.386Z", "updated_at":"2022-09-15T11:13:13.677Z", "access_vpc_id":"0cf79a3f-demo-a8df-va86-d7ace626b0fa", "access_subnet_id":"f5741286-demo-a8df-va86-2c82bd9ee114", "ha_mode":"active-active", "policy_template":{ "ike_policy":{ "authentication_algorithm":"sha2-256", "encryption_algorithm":"aes-128-gcm-16", "dh_group":"group21", "lifetime_seconds":86400 }, "ipsec_policy":{ "authentication_algorithm":"sha2-256", "encryption_algorithm":"aes-128-gcm-16", "pfs":"disable", "lifetime_seconds":3600 } } }, "request_id":"33a2b77a-65f9-4fa0-90bd-4bd42038eb41" } VPN状态为“创建中”,更新失败。 { "error_code":"VPN.0003", "error_msg":"resource (type=GATEWAY, ID=ff9bdca6-demo-a8df-va86-e4bcc1ea52bc) is not ready, currently CREATING", "request_id": "abafe41c-7744-41af-bf3d-4452872af799" }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 vpn_gateway UpdateVgwRequestBodyContent object 是 vpn_gateway对象。 表3 UpdateVgwRequestBodyContent 名称 类型 是否必选 描述 name String 否 功能说明:VPN网关名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点)。 local_subnets Array of String 否 功能说明:IPv4本端子网。本端子网是云上子网,该网段需要通过VPN与用户侧网络进行互通。单个网段格式示例:192.168.52.0/24。 约束:当attachment_type配置为"vpc"时、且ip_version配置为"ipv4"时可填写,否则不填。每个VPN网关最多填写50个本端子网。 local_subnets_v6 Array of String 否 功能说明:IPv6本端子网,本端子网是云上子网,该子网需要通过VPN与云下对端子网进行互通。单个子网格式示例:16af:cacc:1097::/48。 约束:当attachment_type配置为"vpc"时、且ip_version配置为"ipv6"时可填写,否则不填。每个VPN网关最多填写50个本端子网。 eip_id_1 String 否 功能说明:有效的EIP的ID,表示绑定新的EIP作为双活VPN网关使用的第一个EIP或主备VPN网关的主EIP。绑定新的EIP前必须先解绑掉原有的EIP。可以通过解绑弹性公网IP解绑VPN网关使用的EIP。 约束:36位UUID,当network_type配置为public时可填写,否则不填。 eip_id_2 String 否 功能说明:有效的EIP的ID,表示绑定新的EIP作为双活VPN网关使用的第二个EIP或主备VPN网关的备EIP。绑定新的EIP前必须先解绑掉原有的EIP。可以通过解绑弹性公网IP解绑VPN网关使用的EIP。 约束:36位UUID,当network_type配置为public时可填写,否则不填。 policy_template PolicyTemplate object 否 功能说明:策略模板。 约束:只有当VPN网关的规格为Professional1-NonFixedIP或Professional2-NonFixedIP时使用,用于更新网关的策略模板。 表4 PolicyTemplate 名称 类型 描述 ike_policy IkePolicy object ike 策略对象。 ipsec_policy IpsecPolicy object ipsec 策略对象。 表5 IkePolicy 名称 类型 描述 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 dh_group String 功能说明:第一阶段密钥交换使用的DH组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 表6 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128。 pfs String 功能说明:PFS使用的DH密钥组。 取值范围:group14,group15,group16,group19,group20,group21,disable。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 请求样例 更新固定IP接入网关。 PUT https://{Endpoint}/v5/{project_id}/vpn-gateways/{vgw_id} { "vpn_gateway": { "name": "vpngw-4321", "local_subnets": [ "192.168.0.0/24" ], "eip_id_1": "f1469b4a-demo-a8df-va86-bb7de91cf493", "eip_id_2": "6ad8e297-demo-a8df-va86-da0f885ccb98" } } 更新非固定IP接入VPN网关策略模板。 PUT https://{Endpoint}/v5/{project_id}/vpn-gateways/{vgw_id} { "vpn_gateway":{ "policy_template":{ "ike_policy":{ "authentication_algorithm":"sha2-256", "encryption_algorithm":"aes-128-gcm-16", "dh_group":"group21", "lifetime_seconds":86400 }, "ipsec_policy":{ "authentication_algorithm":"sha2-256", "encryption_algorithm":"aes-128-gcm-16", "pfs":"disable", "lifetime_seconds":3600 } } } }
  • 数据准备 表1 创建VPN连接请求关键参数 参数 说明 取值样例 vgw_id VPN网关ID。 8030f6d6-demo-4d20-a7f8-50a7a826e2f8 vgw_ip1 VPN网关EIP1的ID。 e4d7930f-demo-4cbf-b78a-b004416c7485 vgw_ip2 VPN网关EIP2的ID。 1fb97767-demo-4d8b-83bb-6f878f662005 cgw_id 对端网关ID。 8916effb-demo-42d8-83d7-4517567d3d26 peer_subnets 对端子网。 192.168.44.0/24 psk 预共享密钥。 abcd****
  • 操作步骤 基于关联VPC的VPN网关,创建静态路由模式的VPN连接。 发送“POST https://{endpoint}/v5/{project_id}/vpn-connections/batch-create”,project_id为项目ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数如下。 { "vpn_connections": [ { "vgw_ip": "e4d7930f-demo-4cbf-b78a-b004416c7485", "cgw_id": "8916effb-demo-42d8-83d7-4517567d3d26", "vgw_id": "8030f6d6-demo-4d20-a7f8-50a7a826e2f8", "peer_subnets": [ "192.168.44.0/24" ], "psk": "abcd****" }, { "vgw_ip": "1fb97767-demo-4d8b-83bb-6f878f662005", "cgw_id": "8916effb-demo-42d8-83d7-4517567d3d26", "vgw_id": "8030f6d6-demo-4d20-a7f8-50a7a826e2f8", "peer_subnets": [ "192.168.44.0/24" ], "psk": "abcd****" } ] } 查看请求响应结果。 请求成功时,响应参数如下,id就是VPN连接的ID。 { "vpn_connections": [ { "id": "18be2aa1-demo-410f-832e-4d8ba13b4c5d", "name": "vpn-22b6", "vgw_id": "8030f6d6-demo-4d20-a7f8-50a7a826e2f8", "vgw_ip": "e4d7930f-demo-4cbf-b78a-b004416c7485", "style": "STATIC", "cgw_id": "8916effb-demo-42d8-83d7-4517567d3d26", "peer_subnets": [ "192.168.44.0/24" ], "tunnel_local_address": "169.254.135.49/30", "tunnel_peer_address": "169.254.135.50/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.128", "peer_id_type": "ip", "peer_id": "188.***.***.189", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-03-17T12:25:21.369Z", "updated_at": "2025-03-17T12:25:21.369Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "c7e617bd-877f-demo-8af0-44b5f8598116", "name": "vpn-e41c", "vgw_id": "8030f6d6-demo-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-demo-4d8b-83bb-6f878f662005", "style": "STATIC", "cgw_id": "8916effb-demo-42d8-83d7-4517567d3d26", "peer_subnets": [ "192.168.44.0/24" ], "tunnel_local_address": "169.254.73.253/30", "tunnel_peer_address": "169.254.73.254/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "215.***.***.55", "peer_id_type": "ip", "peer_id": "188.***.***.189", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-03-17T12:25:21.678Z", "updated_at": "2025-03-17T12:25:21.678Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "a923f31456941e12c5fc9a663a6e630e" } 查询VPN连接详情。 发送“GET https://{endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id}”,project_id为项目ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 请求成功时,响应参数如下,id就是VPN连接的ID。 { "vpn_connection": { "id": "98c5af8a-demo-a8df-va86-ae2280a6f4c3", "name": "vpn-1655", "status": "DOWN", "vgw_id": "b32d91a4-demo-a8df-va86-e907174eb11d", "vgw_ip": "0c464dad-demo-a8df-va86-c22bb0eb0bde", "style": "STATIC", "cgw_id": "5247ae10-demo-a8df-va86-dd36659a7f5d", "peer_subnets": ["192.168.44.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_nqa": false, "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0", }, "request_id": "104c5608-b68b-462c-af17-ead2fb5ccee4" } { "vpn_connection": { "id": "18be2aa1-demo-410f-832e-4d8ba13b4c5d", "name": "vpn-22b6", "status": "DOWN", "vgw_id": "8030f6d6-demo-4d20-a7f8-50a7a826e2f8", "vgw_ip": "e4d7930f-demo-4cbf-b78a-b004416c7485", "style": "STATIC", "cgw_id": "8916effb-demo-42d8-83d7-4517567d3d26", "peer_subnets": [ "192.168.44.0/24" ], "tunnel_local_address": "169.254.135.49/30", "tunnel_peer_address": "169.254.135.50/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.128", "peer_id_type": "ip", "peer_id": "188.***.***.189", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-03-17T12:25:21.369Z", "updated_at": "2025-03-17T12:25:21.369Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [], "eip_id": "e4d7930f-7038-4cbf-b78a-b004416c7485", "type": "ROUTE", "route_mode": "STATIC" }, "request_id": "62dc155a7353037f0a1ccc569016a3e9" }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表2 响应Body参数列表 名称 类型 描述 vpn_connection ResponseVpnConnection object vpn_connection对象。 request_id String 请求ID。 表3 ResponseVpnConnection 名称 类型 描述 id String 功能说明:VPN连接ID。 格式:36位UUID。 name String 功能说明:VPN连接名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点)。 status String 功能说明:VPN连接状态。 取值范围: ERROR:异常。 ACTIVE:正常。 DOWN:未连接。 PENDING_CREATE:创建中。 PENDING_UPDATE:更新中。 PENDING_DELETE:删除中。 FREEZED:冻结中。 UNKNOWN:未知。 vgw_id String 功能说明:VPN网关ID。 格式:36位UUID。 vgw_ip String 功能说明: VPN网关EIP的ID或接入私网IP。 格式:36位UUID或点分十进制IPv4地址(如192.168.45.7)。 style String 功能说明:连接模式。 取值范围: POLICY: 策略模式。 STATIC: 静态路由模式。 BGP: bgp路由模式。 POLICY-TEMPLATE: 策略模板模式。 cgw_id String 功能说明:对端网关ID。 格式:36位UUID。 peer_subnets Array of String IPv4对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv6时不返回。 peer_subnets_v6 Array of String IPv6对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv4时不返回。 tunnel_local_address String 路由模式下配置在VPN网关上的tunnel接口地址。仅当style为STATIC或BGP时有效。 tunnel_peer_address String 路由模式下配置在用户侧设备上的tunnel接口地址。仅当style为STATIC或BGP时有效。 enable_nqa Boolean 功能说明:开启NQA检测。仅当style为STATIC时返回。 取值范围:true,false。 enable_hub Boolean 功能说明:开启分支互联。仅当style为BGP时返回。 取值范围:true,false。 policy_rules Array of PolicyRule objects IPv4策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv4时返回实际的策略规则组。 policy_rules_v6 Array of PolicyRule objects IPv6策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv6时返回实际的策略规则组。 ikepolicy IkePolicy object ike策略对象。 ipsecpolicy IpsecPolicy object ipsec策略对象。 created_at String 创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 最后一次更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID。与vgw_id所标识VPN网关的企业项目ID一致。 connection_monitor_id String 功能说明:VPN连接监控ID。仅当VPN连接下创建有连接监控时返回。 格式:36位UUID。 ha_role String 功能说明:主备模式VPN网关下的连接时,'master'表示主连接,'slave'表示备连接。双活模式下的连接ha_role都是'master'。 默认值:master tags Array of VpnResourceTag objects 标签列表。 bgp_peer BgpPeer object BGP邻居信息。 表4 PolicyRule 名称 类型 描述 source String 源地址网段。 destination Array of String 目的地址网段。单个IPv4网段格式示例:192.168.52.0/24。每个PolicyRule最多返回50个。 表5 IkePolicy 名称 类型 描述 ike_version String 功能说明:IKE版本号。 取值范围:v1, v2。 phase1_negotiation_mode String 功能说明:协商模式。仅当IKE版本为v1时返回。 取值范围: main:主模式,协商过程安全性高。 aggressive:野蛮模式,协商快速且协商成功率高。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 dh_group String 功能说明:第一阶段密钥交换使用的DH组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21。 authentication_method String 功能说明:ike协商时的认证方法。 取值范围: pre-share:预共享密钥。 digital-envelope-v2:国密数字信封。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 local_id_type String 功能说明:本端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 local_id String 本端ID。当local_id_type为ip时返回创建或更新VPN连接时指定的本端ID,如果未指定则返回VPN连接所使用的VPN网关IP;当local_id_type为fqdn时返回创建或更新VPN连接时指定的本端ID。 当VPN网关flavor为GM时不返回。 peer_id_type String 功能说明:对端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 peer_id String 对端ID。当peer_id_type为ip时返回创建或更新VPN连接时指定的对端ID,如果未指定则返回对端网关的IP;当peer_id_type为fqdn时返回创建或更新VPN连接时指定的对端ID。 当VPN网关flavor为GM时不返回。 dpd Dpd object 对等体存活检测对象。 表6 Dpd 名称 类型 描述 timeout Integer 功能说明:对等体存活检测报文重传间隔。 取值范围:2-60,单位:秒。 interval Integer 功能说明:对等体存活检测空闲时间。 取值范围:10-3600,单位:秒。 msg String 功能说明:对等体存活检测报文格式。 取值范围: seq-hash-notify:指定DPD报文中的载荷顺序是hash-notify。 seq-notify-hash:指定DPD报文中的载荷顺序是notify-hash。 表7 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 pfs String 功能说明:PFS使用的DH密钥组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21,disable。 transform_protocol String 功能说明:传输协议。 取值范围: esp:封装安全协议。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 encapsulation_mode String 功能说明:报文封装模式。 取值范围: tunnel:隧道模式。 表8 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 表9 BgpPeer 名称 类型 描述 peer_ip_address String BGP邻居地址。 peer_asn Integer BGP邻居的BGP自治域编号。 state String 邻居状态。 state_duration String 连接持续时间。 num_received_routes Integer 已收到的路由数。 num_message_received Integer 已收到的消息数。 num_message_sent Integer 已发送的消息数。 响应样例 { "vpn_connection": { "id": "98c5af8a-demo-a8df-va86-ae2280a6f4c3", "name": "vpn-1655", "status": "DOWN", "vgw_id": "b32d91a4-demo-a8df-va86-e907174eb11d", "vgw_ip": "0c464dad-demo-a8df-va86-c22bb0eb0bde", "style": "POLICY", "cgw_id": "5247ae10-demo-a8df-va86-dd36659a7f5d", "peer_subnets": ["192.168.0.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "policy_rules": [{ "rule_index": 1, "source": "10.0.0.0/24", "destination": [ "192.168.0.0/24" ] }], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0", "ha_role":"master", "tags": [], "policy_rules_v6": [], "bgp_peer": { "peer_ip_address": "169.254.173.1", "peer_asn": 64516, "state": "established", "state_duration": "3d01h34m24s", "num_received_routes": 5, "num_message_received": 15541, "num_message_sent": 15516 }, }, "request_id": "f91082d4-6d49-479c-ad1d-4e552a9f5cae" }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表8 响应Body参数列表 名称 类型 描述 vpn_connection ResponseVpnConnection object vpn_connection对象。 request_id String 请求ID。 表9 ResponseVpnConnection 名称 类型 描述 id String 功能说明:VPN连接ID。 格式:36位UUID。 name String 功能说明:VPN连接名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 vgw_id String 功能说明:VPN网关ID。 格式:36位UUID。 vgw_ip String 功能说明: VPN网关EIP的ID或接入私网IP。 格式:36位UUID或点分十进制IPv4地址(如192.168.45.7)。 style String 功能说明:连接模式。 取值范围: POLICY: 策略模式。 STATIC: 静态路由模式。 BGP: bgp路由模式。 POLICY-TEMPLATE: 策略模板模式。 cgw_id String 功能说明:对端网关ID。 格式:36位UUID。 peer_subnets Array of String IPv4对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv6时不返回。 peer_subnets_v6 Array of String IPv6对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv4时不返回。 tunnel_local_address String 路由模式下配置在VPN网关上的tunnel接口地址。仅当style为STATIC或BGP时有效。 tunnel_peer_address String 路由模式下配置在用户侧设备上的tunnel接口地址。仅当style为STATIC或BGP时有效。 enable_nqa Boolean 功能说明:开启NQA检测。仅当style为STATIC时返回。 取值范围:true,false。 enable_hub Boolean 功能说明:开启分支互联。仅当style为BGP时返回。 取值范围:true,false。 policy_rules Array of PolicyRule objects IPv4策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv4时返回实际的策略规则组。 policy_rules_v6 Array of PolicyRule object IPv6策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv6时返回实际的策略规则组。 ikepolicy IkePolicy object ike策略对象。 ipsecpolicy IpsecPolicy object ipsec策略对象。 created_at String 创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 最后一次更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID。与vgw_id所标识VPN网关的企业项目ID一致。 connection_monitor_id String 功能说明:VPN连接监控ID。仅当VPN连接下创建有连接监控时返回。 格式:36位UUID。 ha_role String 功能说明:主备模式VPN网关下的连接时,'master'表示主连接,'slave'表示备连接。双活模式下的连接ha_role都是'master'。 默认值:master。 tags Array of VpnResourceTag objects 标签列表。 表10 PolicyRule 名称 类型 描述 source String 源地址网段。 destination Array of String 目的地址网段。单个IPv4网段格式示例:192.168.52.0/24。单个IPv6网段格式示例:16af:cacc:1097::/48。每个PolicyRule最多返回50个。 表11 IkePolicy 名称 类型 描述 ike_version String 功能说明:IKE版本号。 取值范围:v1, v2。 phase1_negotiation_mode String 功能说明:协商模式。仅当IKE版本为v1时返回。 取值范围: main:主模式,协商过程安全性高。 aggressive:野蛮模式,协商快速且协商成功率高。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 dh_group String 功能说明:第一阶段密钥交换使用的DH组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21。 authentication_method String 功能说明:ike协商时的认证方法。 取值范围: pre-share:预共享密钥。 digital-envelope-v2:国密数字信封。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 local_id_type String 功能说明:本端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 local_id String 本端ID。当local_id_type为ip时返回创建或更新VPN连接时指定的本端ID,未指定时返回VPN连接所使用的VPN网关IP;当local_id_type为fqdn时返回创建或更新VPN连接时指定的本端ID。 当VPN网关flavor为GM时不返回。 peer_id_type String 功能说明:对端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 any。 fqdn。 peer_id String 对端ID。当peer_id_type为ip时返回创建或更新VPN连接时指定的对端ID,未指定时返回对端网关的IP;当peer_id_type为fqdn时返回创建或更新VPN连接时指定的对端ID;当peer_id_type为any时不返回。 当VPN网关flavor为GM时不返回。 dpd Dpd object 对等体存活检测对象。 表12 Dpd 名称 类型 描述 timeout Integer 功能说明:对等体存活检测报文重传间隔。 取值范围:2-60,单位:秒。 interval Integer 功能说明:对等体存活检测空闲时间。 取值范围:10-3600,单位:秒。 msg String 功能说明:对等体存活检测报文格式。 取值范围: seq-hash-notify:指定DPD报文中的载荷顺序是hash-notify。 seq-notify-hash:指定DPD报文中的载荷顺序是notify-hash。 表13 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 pfs String 功能说明:PFS使用的DH密钥组 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21,disable。 transform_protocol String 功能说明:传输协议。 取值范围: esp:封装安全协议。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 encapsulation_mode String 功能说明:报文封装模式。 取值范围: tunnel:隧道模式。 表14 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 响应样例 更新VPN连接的响应。 { "vpn_connection": { "id": "98c5af8a-demo-a8df-va86-ae2280a6f4c3", "name": "vpn-1655", "vgw_id": "b32d91a4-demo-a8df-va86-e907174eb11d", "vgw_ip": "0c464dad-demo-a8df-va86-c22bb0eb0bde", "style": "POLICY", "cgw_id": "5247ae10-demo-a8df-va86-dd36659a7f5d", "peer_subnets": ["192.168.1.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "policy_rules": [{ "source": "10.0.0.0/24", "destination": [ "192.168.1.0/24" ] }], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0", "ha_role": "master" }, "request_id": "f91082d4-6d49-479c-ad1d-4e552a9f5cae" } 冻结场景下更新失败。 { "error_code": "VPN.0001", "error_msg": "invalid request: ILLEGAL not allowed update vpnConnection", "request_id": "8c833634-4560-7897-7740-a7462f5bcbd4" }
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表8 响应Body参数列表 名称 类型 描述 vpn_server vpn_server object VPN服务端。 request_id String 请求ID。 表9 vpn_server 名称 类型 描述 id String 功能说明:VPN服务端 ID。 格式:36位UUID。 响应样例 { "vpn_server": { "id": "2407a20d-0bf7-4530-ba9a-7ffa0cedfa3b" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" }
  • 请求消息 请求参数 表3 请求参数 名称 类型 是否必选 描述 vpn_server CreateServerRequest object 是 创建服务端请求对象。 表4 CreateServerRequest 名称 类型 必选 描述 tunnel_protocol String 否 功能说明:隧道协议类型。 取值范围: SSL:SSL协议。 默认值:SSL。 client_cidr String 是 功能说明:客户端网段。客户端建立连接时,会从该网段分配一个虚拟IP地址。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 约束: 客户端网段不能和网关所在VPC默认路由表中的路由存在冲突。 客户端网段不能和本服务端中本端网段列表的网段存在冲突。 客户端网段地址池的IP地址数量需大于网关最大连接数的四倍。 客户端网段不能使用以下特殊网段:0.0.0.0/8, 127.0.0.0/8, 224.0.0.0/4, 240.0.0.0/4, 169.254.0.0/16。 local_subnets Array of strings 是 功能说明:本端网段列表。本端网段是需要访问的云上的目的网段,该网段需要通过VPN与用户侧网络进行互通。 格式:"点分十进制/掩码"格式,例如10.10.1.0/24。 约束: 至少有一个本端网段,默认最多支持填写20个网段。 本端网段不能使用以下特殊网段:0.0.0.0/8, 127.0.0.0/8, 224.0.0.0/4, 240.0.0.0/4。 client_auth_type String 否 功能说明:客户端认证类型。 取值范围: CERT:证书认证。 LOCAL_PASSWORD:口令认证(本地)。 默认值:LOCAL_PASSWORD。 server_certificate server_certificate object 否 服务端证书,隧道协议类型是SSL时必填。推荐使用强密码算法的证书,如RSA3072/4096。 client_ca_certificates Array of client_ca_certificate objects 否 功能说明:客户端CA证书列表,用于对客户端证书进行认证。 约束: 隧道协议类型是SSL,且客户端认证类型为证书认证时必填。 客户端认证类型为证书认证时,至少上传1本客户端CA证书,最多支持上传10本客户端CA证书。 ssl_options ssl_options object 否 SSL隧道协议的可选配置项。隧道协议类型是SSL时,必填。 dns_servers Array of strings 否 功能说明:DNS服务端列表,最多两个DNS 格式:"点分十进制"格式,例如172.16.1.1 表5 server_certificate 名称 类型 必选 描述 id String 是 功能说明:证书ID,为CCM( 云证书管理服务 )中已上传证书的证书ID。 表6 client_ca_certificate 名称 类型 必选 描述 name String 否 证书名称,不填时自动生成。 取值范围:1-64个字符、支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 content String 是 功能说明:证书内容,推荐使用强密码算法的证书,如RSA3072/4096。 格式: -----BEGIN CERTIFICATE----- ************************************* ************************************* -----END CERTIFICATE----- 表7 ssl_options 名称 类型 必选 描述 protocol String 否 功能说明:协议。 取值范围:TCP。 默认值:TCP。 port Integer 否 功能说明:端口号。 取值范围: 443 1194 默认值:443。 encryption_algorithm String 否 功能说明:加密算法。 取值范围: AES-128-GCM AES-256-GCM 默认值:AES-128-GCM。 is_compressed Boolean 否 功能说明:是否压缩。 取值范围: true false 默认值:false。 请求样例 1.使用证书认证方式创建VPN服务端。 POST https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "172.16.0.1/24", "local_subnets": [ "10.16.0.0/24", "10.16.1.0/24" ], "client_auth_type": "CERT", "server_certificate": { "id": "scs*********3922" }, "client_ca_certificates": [ { "name": "client_ca_8sux3d", "content": "-----BEGIN CERTIFICATE-----*******-----END CERTIFICATE-----" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 2.使用口令认证方式创建VPN服务端。 { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "172.16.0.1/24", "local_subnets": [ "10.16.0.0/24", "10.16.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "server_certificate": { "id": "scs1716171403922" }, "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } }
  • URI POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 p2c_vgw_id String 是 P2C VPN网关实例ID。 表2 请求Header参数列表 名称 类型 是否必选 描述 X-Client-Token String 否 功能说明:幂等性标识。 格式:36位UUID。
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表2 响应Body参数列表 名称 类型 描述 p2c_vpn_gateway p2c_vpn_gateway object vpn_gateway对象 request_id String 请求ID 表3 p2c_vpn_gateway 名称 类型 描述 id String 功能说明:P2C VPN网关ID 格式:36位UUID name String 功能说明:P2C VPN网关名称 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线) status String 功能说明:P2C VPN网关状态 取值范围: PENDING_CREATE:创建中 PENDING_UPDATE:更新中 PENDING_DELETE:删除中 ACTIVE:正常 FAULT:异常 FROZEN:冻结 vpc_id String P2C VPN网关所连接的VPC的ID connect_subnet String P2C VPN网关所使用的VPC子网ID flavor String 功能说明:P2C VPN网关的规格类型 取值范围: Professional1:专业型1 availability_zone_ids Array of strings 可用区列表 eip ResponseEipInfo object 网关绑定的EIP信息 max_connection_number Integer 功能说明:最多支持同时在线的客户端连接数 取值范围:1~500 current_connection_number Integer 当前建连的客户端连接数 enterprise_project_id String 企业项目ID tags Array of VpnResourceTag objects 标签列表 order_id String 订单ID admin_state_up Boolean 功能说明:冻结状态 取值范围: true:未冻结 false:冻结 frozen_effect Integer 功能说明:冻结影响,标识该资源冻结后是否可以删除 取值范围: 0:未冻结 1:冻结可删除 2:冻结不可删除 version string 功能说明:网关版本 created_at String 功能说明:创建时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ applied_at String 功能说明:生效时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ updated_at String 功能说明:最后一次更新时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ 表4 ResponseEipInfo 名称 类型 描述 id String 功能说明:EIP的ID 格式:36位UUID ip_version Integer 功能说明:EIP版本 取值范围:4 ip_billing_info String 功能说明:EIP的订单信息。包年/包月EIP才会返回订单信息,按需计费的EIP不返回 格式:order_id:product_id:region_id:project_id,如: CS22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa type String 功能说明:EIP的类型 取值范围:可查看申请EIP表6中type字段的取值范围 ip_address String 功能说明:EIP的公网IPv4地址 格式:ipv4类型地址。例如:88.***.***.11 charge_mode String 功能说明:EIP的带宽计费模式。按流量计费或按带宽计费 取值范围: bandwidth:按带宽计费 traffic:按流量计费 bandwidth_id String 功能说明:EIP的带宽ID 格式:36位UUID bandwidth_size Integer 功能说明:EIP的带宽大小,单位:Mbit/s。每个region能够提供的EIP最大带宽不同,EIP的最大带宽受限于EIP服务,可以使用工单来提高帐户下的EIP的最大带宽 取值范围:1-1000,具体取值请参考弹性公网服务创建EIP资料。 bandwidth_name String 功能说明:EIP的带宽名称 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点) bandwidth_billing_info String 功能说明:EIP的带宽订单信息。包年/包月EIP带宽才会返回带宽订单信息,按需计费的EIP带宽不返回 格式:order_id:product_id:region_id:project_id,如: CS22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa share_type String 功能说明: 带宽共享类型 取值范围: PER:独享带宽 表5 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持任意语种字母、数字、空格和_.:=+-@,但首尾不能含有空格,不能以_sys_开头。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持任意语种字母、数字、空格和_.:/=+-@。 响应样例 { "p2c_vpn_gateway": { "id": "6d526e5f-a0c6-44b6-a785-000000000000", "name": "p2c-vpngw-0000", "status": "ACTIVE", "vpc_id": "05b9d7de-9acd-4a05-b497-1a3c75afaa0a", "connect_subnet": "1948ce22-ddc5-4fb6-87b8-dfcc9b176b51", "flavor": "Professional1", "availability_zone_ids": [ "cn-south-1f", "cn-south-1e" ], "eip": { "id": "f0bac06a-88a7-4d37-8e2e-c37691ee4ba2", "ip_version": 4, "ip_billing_info": "CS*********JWT1O:OFFI*************5078:cn-south-1:47190474************98781092d16c", "type": "5_youxuanbgp", "ip_address": "215.***.***.120", "charge_mode": "bandwidth", "bandwidth_id": "3456471c-9dac-40f6-8344-daca14fbd81e", "bandwidth_size": 20, "bandwidth_name": "p2c-vpngw-bandwidth-bd61", "bandwidth_billing_info": "CS*********JWT1O:OFFI*************5078:cn-south-1:47190474************98781092d16c", "share_type": "PER" }, "max_connection_number": 10, "current_connection_number": 0, "enterprise_project_id": "0", "tags": [], "order_id": "CS**********JWT1O", "admin_state_up": true, "frozen_effect": 0, "created_at": "2024-06-14T10:24:12.147Z", "updated_at": "2024-06-14T10:24:12.147Z" }, "request_id": "2ddd2f6107a8164ce6f6268bd991e57c" }
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表9 响应Body参数列表 名称 类型 描述 vpn_connections Array of CreateResponseVpnConnection object vpn_connections对象数组。 request_id String 请求ID。 表10 CreateResponseVpnConnection 名称 类型 描述 id String 功能说明:VPN连接ID。 格式:36位UUID。 name String 功能说明:VPN连接名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 vgw_id String 功能说明:VPN网关ID。 格式:36位UUID。 vgw_ip String 功能说明: VPN网关EIP的ID或接入私网IP。 格式:36位UUID或点分十进制IPv4地址(如192.168.45.7)。 style String 功能说明:连接模式。 取值范围: POLICY: 策略模式。 STATIC: 静态路由模式。 BGP: bgp路由模式。 POLICY-TEMPLATE: 策略模板模式。 cgw_id String 功能说明:对端网关ID。 格式:36位UUID。 peer_subnets Array of String IPv4对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv6时不返回。 peer_subnets_v6 Array of String IPv6对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv4时不返回。 tunnel_local_address String 路由模式下配置在VPN网关上的tunnel接口地址。仅当style为STATIC或BGP时有效。 tunnel_peer_address String 路由模式下配置在用户侧设备上的tunnel接口地址。仅当style为STATIC或BGP时有效。 enable_nqa Boolean 功能说明:开启NQA检测。仅当style为STATIC时返回。 取值范围:true,false。 policy_rules Array of PolicyRule objects IPv4策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv4时返回实际的策略规则组。 policy_rules_v6 Array of PolicyRule objects IPv6策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv6时返回实际的策略规则组。 ikepolicy IkePolicy object ike策略对象。 ipsecpolicy IpsecPolicy object ipsec策略对象。 created_at String 创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 最后一次更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID。与vgw_id所标识VPN网关的企业项目ID一致。 ha_role String 功能说明:主备模式VPN网关下的连接时,'master'表示主连接,'slave'表示备连接。双活模式下的连接ha_role都是'master'。 默认值:master。 tags Array of VpnResourceTag objects 标签列表。 表11 PolicyRule 名称 类型 描述 source String 源地址网段。 destination Array of String 目的地址网段。单个IPv4网段格式示例:192.168.52.0/24。单个IPv6网段格式示例:16af:cacc:1097::/48。每个PolicyRule最多返回50个。 表12 IkePolicy 名称 类型 描述 ike_version String 功能说明:IKE版本号。 取值范围:v1, v2。 phase1_negotiation_mode String 功能说明:协商模式。仅当IKE版本为v1时返回。 取值范围: main:主模式,协商过程安全性高。 aggressive:野蛮模式,协商快速且协商成功率高。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 dh_group String 功能说明:第一阶段密钥交换使用的DH组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21。 authentication_method String 功能说明:ike协商时的认证方法。 取值范围: pre-share:预共享密钥。 digital-envelope-v2:国密数字信封。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 local_id_type String 功能说明:本端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 local_id String 本端ID。当local_id_type为ip时返回创建或更新VPN连接时指定的本端ID,如果未指定本端ID则返回VPN连接所使用的VPN网关IP;当local_id_type为fqdn时返回创建或更新VPN连接时指定的本端ID。 当VPN网关flavor为GM时不返回。 peer_id_type String 功能说明:对端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 peer_id String 对端ID。当peer_id_type为ip时返回创建或更新VPN连接时指定的对端ID,如果未指定则返回对端网关的IP;当peer_id_type为fqdn时返回创建或更新VPN连接时指定的对端ID。 当VPN网关flavor为GM时不返回。 dpd Dpd object 对等体存活检测对象。 表13 Dpd 名称 类型 描述 timeout Integer 功能说明:对等体存活检测报文重传间隔。 取值范围:2-60,单位:秒。 interval Integer 功能说明:对等体存活检测空闲时间。 取值范围:10-3600,单位:秒。 msg String 功能说明:对等体存活检测报文格式。 取值范围: seq-hash-notify:指定DPD报文中的载荷顺序是hash-notify。 seq-notify-hash:指定DPD报文中的载荷顺序是notify-hash。 表14 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 pfs String 功能说明:PFS使用的DH密钥组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21,disable。 transform_protocol String 功能说明:传输协议。 取值范围: esp:封装安全协议。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 encapsulation_mode String 功能说明:报文封装模式。 取值范围: tunnel:隧道模式。 表15 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 响应样例 批量创建静态路由模式连接的响应。 { "vpn_connections": [ { "id": "cf91c03c-9679-495f-a201-3622a1aec817", "name": "vpn-b8fa", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "STATIC", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.12.37/30", "tunnel_peer_address": "169.254.12.38/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.173", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:53:23.557Z", "updated_at": "2025-02-21T03:53:23.557Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "64c09578-a23c-4d9d-9c64-56b2f9a74695", "name": "vpn-ec21", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "STATIC", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.60.229/30", "tunnel_peer_address": "169.254.60.230/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "215.***.***.55", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:53:23.226Z", "updated_at": "2025-02-21T03:53:23.226Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "3c53db019753c69323303c198af58a85" } 批量创建策略模式连接的响应。 { "vpn_connections": [ { "id": "db06a7cb-e3b5-4c8c-b682-40ed54e8eb54", "name": "vpn-ed37", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "POLICY", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.44.197/30", "tunnel_peer_address": "169.254.44.198/30", "policy_rules": [ { "rule_index": 1, "source": "192.168.37.0/24", "destination": [ "192.168.2.0/24" ] } ], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "215.***.***.55", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:59:50.341Z", "updated_at": "2025-02-21T03:59:50.341Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "9f5220fd-f674-420c-9df7-6b6420a3ae99", "name": "vpn-d0c2", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "POLICY", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.192.61/30", "tunnel_peer_address": "169.254.192.62/30", "policy_rules": [ { "rule_index": 1, "source": "192.168.37.0/24", "destination": [ "192.168.2.0/24" ] } ], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.173", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:59:50.651Z", "updated_at": "2025-02-21T03:59:50.651Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "81237dad5e1338b1818cd6582781b610" } 批量创建bgp路由模式连接的响应。 { "vpn_connections": [ { "id": "5ddf5d02-c746-4075-be4b-95e9213e1c3c", "name": "vpn-1655", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "BGP", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_hub": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "dh_group": "group16", "authentication_method": "pre-share", "lifetime_seconds": 172800, "local_id_type": "fqdn", "local_id": "123***", "peer_id_type": "fqdn", "peer_id": "456***", "dpd": { "interval": 60, "timeout": 30, "msg": "seq-notify-hash" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "pfs": "group16", "transform_protocol": "esp", "lifetime_seconds": 7200, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T06:50:25.238Z", "updated_at": "2025-02-21T06:50:25.238Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "bb3632dd-f517-4e94-96b7-977c70d28966", "name": "vpn-1341", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "BGP", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_hub": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "dh_group": "group16", "authentication_method": "pre-share", "lifetime_seconds": 172800, "local_id_type": "fqdn", "local_id": "123***", "peer_id_type": "fqdn", "peer_id": "456***", "dpd": { "interval": 60, "timeout": 30, "msg": "seq-notify-hash" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "pfs": "group16", "transform_protocol": "esp", "lifetime_seconds": 7200, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T06:50:25.5Z", "updated_at": "2025-02-21T06:50:25.5Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "938ea2bba48836a429c741bd6f7627a4" }
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表2 响应Body参数列表 名称 类型 描述 log_config log_config object log_config对象。 request_id String 请求ID。 表3 log_config 名称 类型 描述 log_group_id String 功能说明:P2C VPN网关的连接日志所配置的日志组ID。 log_stream_id String 功能说明:P2C VPN网关的连接日志所配置的日志流ID。 响应样例 { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" }, "request_id": "2ddd2f6107a8164ce6f6268bd991e57c" }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表4 响应Body参数列表 名称 类型 描述 log_config ConnectionsLogConfig object log_config对象。 request_id String 请求ID。 表5 ConnectionsLogConfig 名称 类型 描述 log_group_id String 功能说明:日志组ID,请在 云日志 服务中获取。 log_stream_id String 功能说明:日志流ID,请在云日志服务中获取。 响应样例 { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 log_config UpdateVpnLogConfigRequestBodyContent object 是 log_config对象。 表3 UpdateVpnLogConfigRequestBodyContent 名称 类型 必选 描述 log_group_id String 是 功能说明:日志组ID,请在云日志服务中获取。 log_stream_id String 是 功能说明:日志流ID,请在云日志服务中获取。 请求样例 PUT https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" } }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 users Array of OpVpnUser objects 是 删除VPN用户对象列表。 表3 OpVpnUser 名称 类型 必选 描述 id String 是 功能说明:用户ID。 格式:36位UUID。 请求样例 POST https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-delete { "users": [ { "id": "cc975b1d-ede5-448d-a47d-9dbf11f5d842" }, { "id": "30ad347e-e36e-42bd-a36b-c38f8ecc8bda" } ] }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表2 响应Body参数列表 名称 类型 描述 availability_zones Array of ExtendedAvailabilityZone object 可用区列表。 request_id String 请求ID。 表3 ExtendedAvailabilityZone 名称 类型 描述 name String 可用区名称。 public_border_group String 公共边界组。 available_specs Array of AvailableSpec object 该可用区下可选的VPN网关规格组合。 表4 AvailableSpec 名称 类型 描述 flavor String VPN网关规格。 attachment_type String VPN网关的关联模式。 ip_version String VPN网关的IP协议版本。 响应样例 { "availability_zones": [ { "name": "cn-southwest-242a", "public_border_group": "center", "available_specs": [ { "flavor": "Basic", "attachment_type": "vpc", "ip_version": "ipv4" }, { "flavor": "GM", "attachment_type": "vpc", "ip_version": "ipv4" }, { "flavor": "Professional2", "attachment_type": "vpc", "ip_version": "ipv6" } ] } ], "request_id": "9c114ae240ac4e2afdedc113fadae34c" }
  • 访问策略 权限 对应API接口 授权项(Action) 依赖的授权项 IAM 项目(Project) 企业项目(Enterprise Project) 创建VPN访问策略 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies vpn:p2cVpnGateway:createAccessPolicy - √ x 查询VPN访问策略列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies vpn:p2cVpnGateway:listAccessPolicies - √ x 修改VPN访问策略 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:updateAccessPolicy - √ x 查询VPN访问策略 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:getAccessPolicy - √ x 删除VPN访问策略 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:deleteAccessPolicy - √ x 父主题: 终端入云VPN授权项列表
  • 用户管理 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users vpn:p2cVpnUser:create - √ x 批量创建VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-create vpn:p2cVpnUser:batchCreate - √ x 查询VPN用户列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users vpn:p2cVpnUser:list - √ x 修改VPN用户 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:update - √ x 查询VPN用户 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:get - √ x 删除VPN用户 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:delete - √ x 批量删除VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-delete vpn:p2cVpnUser:batchDelete - √ x 修改VPN用户密码 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}/password vpn:p2cVpnUser:updatePassword - √ x 重置VPN用户密码 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}/reset-password vpn:p2cVpnUser:resetPassword - √ x 创建VPN用户组 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups vpn:p2cVpnGateway:createUserGroup - √ x 查询VPN用户组列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups vpn:p2cVpnGateway:listUserGroup - √ x 修改VPN用户组 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:updateUserGroup - √ x 查询VPN用户组 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:getUserGroup - √ x 删除VPN用户组 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:deleteUserGroup - √ x 添加VPN用户到组 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/add-users vpn:p2cVpnGateway:addUsers - √ x 删除组内VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/remove-users vpn:p2cVpnGateway:removeUsers - √ x 查询组内VPN用户 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/users vpn:p2cVpnGateway:listUsersInGroup - √ x 父主题: 终端入云VPN授权项列表
  • 服务端 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建终端入云VPN服务端 POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers vpn:p2cVpnGateway:createServer scm:cert:get scm:cert:list scm:cert:download vpc:publicIps:get vpc:routeTables:update vpc:subnets:get √ x 查询一个网关下的服务端信息 GET /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers vpn:p2cVpnGateway:listServers - √ x 更新指定网关的服务端 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id} vpn:p2cVpnGateway:updateServer scm:cert:get scm:cert:list scm:cert:download vpc:publicIps:get vpc:routeTables:update vpc:subnets:get √ x 导出服务端对应的客户端配置信息 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-config/export vpn:p2cVpnGateway:exportClientConfig - √ x 校验CA证书的合法性 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/client-ca-certificates/check vpn:system:checkClientCaCertificate - √ x 导入客户端CA证书 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates vpn:p2cVpnGateway:importClientCa - √ x 修改客户端CA证书 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:updateClientCa - √ x 查询客户端CA证书 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:getClientCa - √ x 删除客户端CA证书 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:deleteClientCa - √ x 查询租户下的所有服务端信息 GET /v5/{project_id}/vpn-servers vpn:p2cVpnGateway:listAllServers - √ x 断开终端入云VPN网关连接 POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/connections/{connection_id}/disconnect vpn:p2cVpnGateway:disconnectConnection - √ x 更新终端入云VPN连接日志配置 PUT /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:updateConnectionsLogConfig - √ × 查询终端入云VPN连接日志配置 GET /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:getConnectionsLogConfig - √ × 删除终端入云VPN连接日志配置 DELETE /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:deleteConnectionsLogConfig - √ × 父主题: 终端入云VPN授权项列表
  • 对端网关 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建对端网关 POST /v5/{project_id}/customer-gateways vpn:customerGateways:create - √ x 查询对端网关详情 GET /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:get - √ x 查询对端网关列表 GET /v5/{project_id}/customer-gateways vpn:customerGateways:list - √ x 更新对端网关 PUT /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:update - √ x 删除对端网关 DELETE /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:delete - √ x 父主题: 站点入云VPN授权项列表
  • 操作步骤 创建访问策略 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "access_policy": { "name": "policy-001", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "description": "访问策略1", "dest_ip_cidrs": [ "172.16.0.0/24", "172.16.1.0/24" ] } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户组ID { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588" }, "request_id": "1663cd8cacbb3497ebc88877e5a3ad89" } 查询访问策略 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id}”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。{policy_id}为已创建的访问策略ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588", "name": "policy-001", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "user_group_name": "user-group1", "description": "访问策略1", "dest_ip_cidrs": [ "172.16.0.0/24", "172.16.1.0/24" ], "created_at": "2024-06-17T13:32:19.57Z", "updated_at": "2024-06-17T13:32:19.57Z" }, "request_id": "85657002f01c35576606003cc36114ab" }
  • 操作步骤 创建用户组 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "user_group": { "name": "user-group1", "description": "用户组1" } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户组ID { "user_group": { "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8" }, "request_id": "94d271493e144135423e7377e40127cf" } 查询用户组 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}”,project_id为项目ID。{group_id}为已创建的用户组ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "user_group": { "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "name": "user-group1", "description": "用户组1", "type": "Custom", "user_number": 0, "created_at": "2024-06-17T09:48:27.548Z", "updated_at": "2024-06-17T09:48:27.548Z" }, "request_id": "6735d32bb3e35e9154caba1dbc6c2dc6" } 创建用户 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "user": { "name": "user001", "password": "Qwerasdf", "description": "用户1", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8" } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户ID { "user": { "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" } 查询用户 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。{user_id}为已创建的用户ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "user": { "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d", "name": "user001", "description": "用户1", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "user_group_name": "user-group1", "created_at": "2024-06-17T06:53:46.302Z", "updated_at": "2024-06-17T06:53:46.302Z" }, "request_id": "926a0edb3bf432943e2399b700173add" }
  • 前提条件 已成功创建包周期终端入云VPN网关。 已在 云证书管理 服务中购买或上传服务端证书,详情请参见购买SSL证书和上传已有SSL证书。 您需要确定调用API的Endpoint。 当您使用Token认证方式完成认证鉴权时,需要获取用户Token并在调用接口时增加“X-Auth-Token”到业务接口请求消息头中。Token认证,具体操作请参考认证鉴权章节。 通过IAM服务获取到的Token有效期为24小时,需要使用同一个Token鉴权时,可以先将Token缓存,避免频繁调用。
  • 操作步骤 创建VPN服务端。 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers”,project_id为项目ID。{p2c_vgw_id}为已创建的终端入云VPN网关ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 证书认证方式传入参数如下: { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "100.10.1.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "CERT", "server_certificate": { "id": "scs1717051012106" }, "client_ca_certificates": [ { "content" : "-----BEGIN CERTIFICATE-----******-----END CERTIFICATE-----" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 口令认证方式传入参数如下: { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "100.10.2.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "server_certificate": { "id": "scs1717051012106" }, "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的VPN服务端ID。 { "vpn_server": { "id": "0e325fb6-83b9-4004-a343-8b6fc714a5d9" }, "request_id": "bf23a5884def9be4576cff33e4dd78d5" } 查询VPN服务端 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers”,project_id为项目ID。{p2c_vgw_id}为已创建的终端入云VPN网关ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 服务端的status为“PENDING_CREATE”说明正在创建中,为"ACTIVE"说明创建完成。 证书认证的服务端响应结果为: { "vpn_servers": [ { "id": "b26c9c74-5bb9-4df8-8b98-ecf2051e3482", "p2c_vgw_id": "595210dc-7998-4ba3-aeb9-516fbcf7853c", "client_cidr": "100.10.1.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "CERT", "tunnel_protocol": "SSL", "server_certificate": { "id": "scs1717051012106", "name": "test-05304", "issuer": "C=CN,ST=beijing,L=haidian,O=lesaas,OU=root,CN=www.root.huawei.com", "subject": "C=CN,ST=beijing,L=haidian,O=server,OU=server,CN=www.server.huawei.com", "serial_number": "350612543125953290200975245211283057292471206725", "expiration_time": "2024-06-29T06:39:46Z", "signature_algorithm": "SHA256WITHRSA" }, "client_ca_certificates": [ { "id": "7e971612-f720-4d31-88b5-fc6280b88e36", "name": "ca-cert-123e", "issuer": "C=CN,ST=JS,L=NJ,O=NYS,OU=N10,CN=test.huawei.com", "subject": "C=CN,ST=JS,L=NJ,O=NYS,OU=N10,CN=testCA.huawei.com", "serial_number": "1591942200161", "expiration_time": "2033-11-06T11:39:14Z", "signature_algorithm": "SHA256WITHRSA", "created_at": "2024-06-18T12:19:17.978Z", "updated_at": "2024-06-18T12:19:17.978Z" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "authentication_algorithm": "SHA256", "is_compressed": false }, "status": "ACTIVE", "created_at": "2024-06-18T12:19:17.978Z", "updated_at": "2024-06-18T12:19:17.978Z" } ], "request_id": "68188a14243b1b54d0b45a82d9123b98" } 口令认证的服务端响应结果为: { "vpn_servers": [ { "id": "0e325fb6-83b9-4004-a343-8b6fc714a5d9", "p2c_vgw_id": "dea8c4fb-be5c-4d50-be9a-f9a5f3a9afc6", "client_cidr": "100.10.2.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "tunnel_protocol": "SSL", "server_certificate": { "id": "scs1717051012106", "name": "test-05304", "issuer": "C=CN,ST=beijing,L=haidian,O=lesaas,OU=root,CN=www.root.huawei.com", "subject": "C=CN,ST=beijing,L=haidian,O=server,OU=server,CN=www.server.huawei.com", "serial_number": "350612543125953290200975245211283057292471206725", "expiration_time": "2024-06-29T06:39:46Z", "signature_algorithm": "SHA256WITHRSA" }, "client_ca_certificates": [], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "authentication_algorithm": "SHA256", "is_compressed": false }, "status": "ACTIVE", "created_at": "2024-06-18T12:21:54.889Z", "updated_at": "2024-06-18T12:21:54.889Z" } ], "request_id": "f8e64d41466085f06383dc59ffb28230" }
  • 数据准备 VPN服务端支持两种认证方式,分别为证书认证和口令认证。 表1 证书认证方式创建VPN服务端请求关键参数 参数 说明 取值样例 p2c_vgw_id 终端入云网关ID,为预先已创建的网关ID 595210dc-7998-4ba3-aeb9-516fbcf7853c client_cidr 客户端网段 100.10.1.0/24 local_subnets 本端网段列表 192.168.0.0/24,192.168.1.0/24 server_certificate.id 服务端证书ID,为云证书管理服务中的证书ID scs1717051012106 client_ca_certificate.content 客户端CA证书内容 -----BEGIN CERTIFICATE-----******-----END CERTIFICATE----- 表2 口令认证方式创建VPN服务端请求关键参数 参数 说明 取值样例 p2c_vgw_id 终端入云网关ID,为预先已创建的网关ID dea8c4fb-be5c-4d50-be9a-f9a5f3a9afc6 client_cidr 客户端网段 100.10.2.0/24 local_subnets 本端网段列表 192.168.0.0/24,192.168.1.0/24 server_certificate.id 服务端证书ID,为云证书管理服务中的证书ID scs1717051012106
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全