云服务器内容精选

  • 响应消息 响应参数 返回状态码为 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 对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY时不返回。 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 策略模式的策略规则组。仅当style为POLICY时返回实际的策略规则组。 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 标签列表。 eip_id String 功能说明: VPN网关EIP的ID或接入私网IP。 格式:36位UUID或点分十进制IPv4地址(如192.168.45.7)。 注:该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。 type String 功能说明:连接模式。 取值范围: POLICY: 策略模式。 ROUTE: 路由模式。 注:该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。 route_mode String 功能说明:路由模式。 取值范围: static: 静态路由模式。 bgp: bgp路由模式。 注:该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。 表10 PolicyRule 名称 类型 描述 rule_index Integer 功能说明:规则ID。 取值范围:0-50。 source String 源地址网段。 destination Array of String 目的地址网段。单个网段格式示例:192.168.52.0/24。每个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连接所使用的网关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时返回对端网关的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": [{ "rule_index": 1, "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" }
  • 正在使用VPN出现了连接中断,提示数据流不匹配,如何排查? 这通常是由于云上与用户侧数据中心设备配置的ACL不匹配造成的。 首先确认两端VPN连接的子网信息是否配置一致,确保云端生成的ACL与用户侧数据中心ACL配置互为镜像。 用户侧数据中心感兴趣流配置推荐使用“子网/掩码”的格式,避免使用网络地址对象模式,即address object模式,address object为非标模式,容易引起不兼容问题。 父主题: 连接故障或无法PING通
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 connection_monitor CreateConnectionMonitorRequestBodyContent object 是 connection_monitor对象。 表3 CreateConnectionMonitorRequestBodyContent 名称 类型 是否必选 描述 vpn_connection_id String 是 VPN连接监控对应的VPN连接ID。 可以通过查询VPN连接列表查看VPN连接ID。 请求样例 POST https://{Endpoint}/v5/{project_id}/connection-monitors { "connection_monitor": { "vpn_connection_id": "cae286f2-demo-a8df-va86-e22416ca1220" } }
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表4 响应Body参数列表 名称 类型 描述 connection_monitor ConnectionMonitorInfo object connection_monitor对象。 request_id String 请求ID。 表5 ConnectionMonitorInfo 名称 类型 描述 id String 功能说明:VPN连接监控ID。 格式:36位UUID。 vpn_connection_id String 功能说明:VPN连接监控对应的VPN连接ID。 格式:36位UUID。 type String 功能说明:监控类型。 取值范围:gateway。 source_ip String VPN连接监控的源地址。 destination_ip String VPN连接监控的目的地址。 proto_type String 功能说明:nqa使用的协议类型。 取值范围:icmp。 响应样例 { "connection_monitor":{ "id":"76f64229-demo-a8df-va86-3907e2815b6d", "vpn_connection_id":"cae286f2-demo-a8df-va86-e22416ca1220", "type":"gateway", "source_ip":"88.***.***.60", "destination_ip":"88.***.***.32", "proto_type":"icmp" }, "request_id": "bd37d16d-387c-41ab-a180-01b649f73590" }
  • VPN是否启动了DPD检测机制? 是的。 VPN服务默认开启了DPD探测机制,用于探测用户侧数据中心IKE进程的存活状态。 3次探测失败后即认为用户侧数据中心IKE异常,此时云会删除本端隧道,以保持双方的隧道同步。 DPD协议本身并不要求对端也同步进行配置(但是要求对端可以应答DPD探测),为了保证协商双方隧道状态一致,避免出现单边隧道(一端存在隧道,而另一端已不存在),建议用户同时启动用户侧网关的DPD探测机制,用于探测云侧VPN服务的IKE状态。 DPD探测失败后会删除隧道,不会导致业务不稳定。 DPD可以及时发现对方IKE进程异常,并通过重置隧道的方法来保持双方隧道同步。在删除隧道后,当有用户流量时,可以重新触发协商并建立隧道。 父主题: 连接故障或无法PING通
  • DPD核心配置 DPD的核心配置包含检测模式、检测时间、报文格式等。以华为设备为例,配置DPD的方法有全局配置和IKE对等体两种方式。IPsec通信时,优先使用IKE对等体的DPD配置参数,如果对等体未配置DPD,则采用全局DPD配置参数。 检测模式:分为按需和周期性检测。华为设备缺省配置中无全局检测配置,是否开启对等体检测要看对等体的DPD配置是否使能。 按需型:当本端需要向对端发送IPsec报文时,如果当前距离最后一次收到对端的IPsec报文的时长已超过DPD空闲时间,则触发DPD检测,本端主动向对端发送DPD请求报文。 周期型:如果当前距离最后一次收到对端的IPsec报文的时长已超过DPD空闲时间,则本端主动向对端发送DPD请求报文。 DPD配置参数:包含DPD空闲时间、DPD报文重传间隔和重传次数,华为设备缺省情况下全局DPD空闲时间、DPD报文重传间隔和重传次数分别为30秒、15秒和3次。 报文格式:有seq-hash-notify和seq-notify-hash两种。华为设备缺省情况下,DPD报文中的载荷顺序为seq-hash-notify。 当IPsec两端未配置DPD报文时,如果隧道内无流量,会等待SA的生命周期到期。到期前会发起硬协商,如果协商未成功则拆除本端SA,同时通知对端。SA的恢复需要再次进行数据流触发协商才能建立。 如果因为网络原因一端拆除SA,另一端没有拆除SA,会导致业务流量不通,需要等待SA生命周期老化或手工清除SA。
  • 如何防止VPN连接出现中断情况? VPN连接在正常的使用过程中会存在重协商情况,触发重协商的条件有IPsec SA的生命周期即将到期和VPN传输的流量超过20GB,重协商一般不造成连接中断。 大多数的连接中断都是因为两端的配置信息错误造成的,或公网异常导致重协商失败造成的。 常见的连接中断原因有: 两端的ACL不匹配。 SA生命周期不匹配。 用户侧数据中心未配置DPD。 VPN使用过程中修改了配置信息。 运营商网络抖动。 因此请在配置VPN时确保操作和配置,以进行连接状态保活: 两端的子网配置互为镜像。 SA生命周期信息一致。 用户侧数据中心网关开启DPD配置,探测次数不少于3次。 连接过程中修改参数两侧同步修改。 设置用户侧数据中心设备TCP MAX-MSS为1300。 确保用户侧数据中心出口有足够的带宽可被VPN使用。 确认VPN连接可被两端触发协商,开启用户侧数据中心设备的主动协商配置。 父主题: VPN连接保活