alibabacloud-vpc20160428 6.10.2__py3-none-any.whl → 6.11.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2596,7 +2596,10 @@ class AllocateIpv6InternetBandwidthRequest(TeaModel):
2596
2596
  resource_owner_account: str = None,
2597
2597
  resource_owner_id: int = None,
2598
2598
  ):
2599
- # The Internet bandwidth of the IPv6 gateway. Unit: Mbit/s. Valid values: **1 to 5000**.
2599
+ # The Internet bandwidth of the IPv6 address. Unit: Mbit/s.
2600
+ #
2601
+ # * If you set **InternetChargeType** to **PayByTraffic**, valid values are **1** to **1000**.
2602
+ # * If you set **InternetChargeType** to **PayByBandwidth**, valid values are **1** to **2000**.
2600
2603
  #
2601
2604
  # This parameter is required.
2602
2605
  self.bandwidth = bandwidth
@@ -2606,6 +2609,10 @@ class AllocateIpv6InternetBandwidthRequest(TeaModel):
2606
2609
  #
2607
2610
  # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
2608
2611
  self.client_token = client_token
2612
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
2613
+ #
2614
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
2615
+ # * **false**: sends the API request. After the request passes the check, a 2XX HTTP status code is returned and the route table is associated. This is the default value.
2609
2616
  self.dry_run = dry_run
2610
2617
  # The metering method of the Internet bandwidth for the IPv6 address. Valid values:
2611
2618
  #
@@ -5968,7 +5975,7 @@ class CheckVpnBgpEnabledRequest(TeaModel):
5968
5975
  #
5969
5976
  # You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters.
5970
5977
  #
5971
- # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
5978
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
5972
5979
  self.client_token = client_token
5973
5980
  self.owner_account = owner_account
5974
5981
  # The region ID of the IPsec-VPN connection.
@@ -7572,11 +7579,14 @@ class CreateCustomerGatewayRequest(TeaModel):
7572
7579
  resource_owner_id: int = None,
7573
7580
  tags: List[CreateCustomerGatewayRequestTags] = None,
7574
7581
  ):
7575
- # The autonomous system number (ASN) of the gateway device in the data center.
7582
+ # The autonomous system number (ASN) of the gateway device in your data center. This parameter is required If you want to use Border Gateway Protocol (BGP) for the IPsec-VPN connection. Valid values: 1 to 4294967295. 45104 is not supported.
7583
+ #
7584
+ # **Asn** is a 4-byte number. You can enter it in two segments and separate the first 16 bits from the following 16 bits with a period (.). Enter the number in each segment in decimal format.
7576
7585
  #
7577
- # **Asn** is a 4-byte number. You can enter the number in two segments and separate the first 16 bits from the following 16 bits with a period (.). Enter the number in each segment in the decimal format.
7586
+ # For example, if you enter 123.456, the ASN is 8061384. The ASN is calculated by using the following formula: 123 × 65536 + 456 = 8061384.
7578
7587
  #
7579
- # For example, if you enter 123.456, the ASN is: 123 × 65536 + 456 = 8061384.
7588
+ # > - We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. For information about the range of private ASNs, see the relevant documentation.
7589
+ # > - 45104 is a unique identifier assigned by IANA to Alibaba Cloud. It is used to identify Alibaba Cloud during route selection and data transmission over the Internet.
7580
7590
  self.asn = asn
7581
7591
  # The authentication key of the BGP routing protocol for the gateway device in the data center.
7582
7592
  #
@@ -7592,7 +7602,18 @@ class CreateCustomerGatewayRequest(TeaModel):
7592
7602
  #
7593
7603
  # The description must be 1 to 100 characters in length, and cannot start with `http://` or `https://`.
7594
7604
  self.description = description
7595
- # The public IP address of the gateway device in the data center.
7605
+ # The static IP address of the gateway device in the data center.
7606
+ #
7607
+ # * If you want to create a public IPsec-VPN connection, enter a public IP address.
7608
+ # * If you want to create a private IPsec-VPN connection, enter a private IP address.
7609
+ #
7610
+ # You cannot use the following IP addresses. Otherwise, a IPsec-VPN connection cannot be established:
7611
+ #
7612
+ # * 100.64.0.0~100.127.255.255
7613
+ # * 127.0.0.0~127.255.255.255
7614
+ # * 169.254.0.0~169.254.255.255
7615
+ # * 224.0.0.0~239.255.255.255
7616
+ # * 255.0.0.0~255.255.255.255
7596
7617
  #
7597
7618
  # This parameter is required.
7598
7619
  self.ip_address = ip_address
@@ -7717,7 +7738,7 @@ class CreateCustomerGatewayResponseBody(TeaModel):
7717
7738
  self.customer_gateway_id = customer_gateway_id
7718
7739
  # The description of the customer gateway.
7719
7740
  self.description = description
7720
- # The public IP address of the gateway device in the data center.
7741
+ # The static IP address of the gateway device in the on-premises data center.
7721
7742
  self.ip_address = ip_address
7722
7743
  # The name of the customer gateway.
7723
7744
  self.name = name
@@ -9629,6 +9650,7 @@ class CreateFlowLogRequest(TeaModel):
9629
9650
  resource_owner_id: int = None,
9630
9651
  resource_type: str = None,
9631
9652
  tag: List[CreateFlowLogRequestTag] = None,
9653
+ traffic_analyzer_id: str = None,
9632
9654
  traffic_path: List[str] = None,
9633
9655
  traffic_type: str = None,
9634
9656
  ):
@@ -9648,8 +9670,6 @@ class CreateFlowLogRequest(TeaModel):
9648
9670
  # * The name can contain only lowercase letters, digits, hyphens (-), and underscores (_).
9649
9671
  # * The name must start and end with a lowercase letter or a digit.
9650
9672
  # * The name must be 3 to 63 characters in length.
9651
- #
9652
- # This parameter is required.
9653
9673
  self.log_store_name = log_store_name
9654
9674
  self.owner_account = owner_account
9655
9675
  self.owner_id = owner_id
@@ -9658,8 +9678,6 @@ class CreateFlowLogRequest(TeaModel):
9658
9678
  # * The name can contain only lowercase letters, digits, and hyphens (-).
9659
9679
  # * The name must start and end with a lowercase letter or a digit.
9660
9680
  # * The name must be 3 to 63 characters in length.
9661
- #
9662
- # This parameter is required.
9663
9681
  self.project_name = project_name
9664
9682
  # The ID of the region where you want to create the flow log. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
9665
9683
  #
@@ -9683,6 +9701,7 @@ class CreateFlowLogRequest(TeaModel):
9683
9701
  self.resource_type = resource_type
9684
9702
  # The tag of the resource.
9685
9703
  self.tag = tag
9704
+ self.traffic_analyzer_id = traffic_analyzer_id
9686
9705
  # The scope of the traffic that you want to capture. Valid values:
9687
9706
  #
9688
9707
  # * **all**: all traffic.
@@ -9741,6 +9760,8 @@ class CreateFlowLogRequest(TeaModel):
9741
9760
  if self.tag is not None:
9742
9761
  for k in self.tag:
9743
9762
  result['Tag'].append(k.to_map() if k else None)
9763
+ if self.traffic_analyzer_id is not None:
9764
+ result['TrafficAnalyzerId'] = self.traffic_analyzer_id
9744
9765
  if self.traffic_path is not None:
9745
9766
  result['TrafficPath'] = self.traffic_path
9746
9767
  if self.traffic_type is not None:
@@ -9782,6 +9803,8 @@ class CreateFlowLogRequest(TeaModel):
9782
9803
  for k in m.get('Tag'):
9783
9804
  temp_model = CreateFlowLogRequestTag()
9784
9805
  self.tag.append(temp_model.from_map(k))
9806
+ if m.get('TrafficAnalyzerId') is not None:
9807
+ self.traffic_analyzer_id = m.get('TrafficAnalyzerId')
9785
9808
  if m.get('TrafficPath') is not None:
9786
9809
  self.traffic_path = m.get('TrafficPath')
9787
9810
  if m.get('TrafficType') is not None:
@@ -10620,7 +10643,7 @@ class CreateHaVipRequest(TeaModel):
10620
10643
  self.client_token = client_token
10621
10644
  # The description of the HAVIP.
10622
10645
  #
10623
- # The description must be 1 to 256 characters in length and cannot start with `http://` or `https://`.
10646
+ # The description must be 1 to 255 characters in length and cannot start with `http://` or `https://`.
10624
10647
  self.description = description
10625
10648
  # The IP address of the HAVIP.
10626
10649
  #
@@ -12022,11 +12045,11 @@ class CreateIpsecServerRequest(TeaModel):
12022
12045
  self.local_subnet = local_subnet
12023
12046
  # The pre-shared key.
12024
12047
  #
12025
- # The pre-shared key is used for identity authentication between the IPsec server and the client. The key must be 1 to 100 characters in length.
12048
+ # The pre-shared key that is used for authentication between the IPsec-VPN server and the client. It must be 1 to 100 characters in length.
12026
12049
  #
12027
- # If you do not specify a pre-shared key, the system randomly generates a 16-character string as the pre-shared key. You can call the [ListIpsecServers](https://help.aliyun.com/document_detail/2794120.html) operation to query the pre-shared keys that are generated by the system.
12050
+ # If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call [ListIpsecServers](https://help.aliyun.com/document_detail/2794120.html) to query keys generated by the system.
12028
12051
  #
12029
- # > The pre-shared key of the IPsec server must be the same as the client key. Otherwise, the IPsec server cannot be connected to the client.
12052
+ # > The pre-shared key of the IPsec server key must be the same as that of the client. Otherwise, the connection between the IPsec server and the client cannot be established.
12030
12053
  self.psk = psk
12031
12054
  # Indicates whether pre-shared key authentication is enabled. If you set the value to **true**, pre-shared key authentication is enabled.
12032
12055
  #
@@ -12484,7 +12507,7 @@ class CreateIpv6EgressOnlyRuleRequest(TeaModel):
12484
12507
  self.client_token = client_token
12485
12508
  # The description of the egress-only rule.
12486
12509
  #
12487
- # The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
12510
+ # The description must be 0 to 256 characters in length and cannot start with `http://` or `https://`.
12488
12511
  self.description = description
12489
12512
  # The ID of the IPv6 address for which you want to create an egress-only rule.
12490
12513
  #
@@ -12500,7 +12523,7 @@ class CreateIpv6EgressOnlyRuleRequest(TeaModel):
12500
12523
  self.ipv_6gateway_id = ipv_6gateway_id
12501
12524
  # The name of the egress-only rule.
12502
12525
  #
12503
- # The name must be 2 to 128 characters in length, and can contain letters, digits, underscores (_), and hyphens (-). The name must start with a letter but cannot start with `http://` or `https://`.
12526
+ # The name must be 0 to 128 characters in length and cannot start with `http://` or `https://`.
12504
12527
  self.name = name
12505
12528
  self.owner_account = owner_account
12506
12529
  self.owner_id = owner_id
@@ -12711,11 +12734,11 @@ class CreateIpv6GatewayRequest(TeaModel):
12711
12734
  self.client_token = client_token
12712
12735
  # The description of the IPv6 gateway.
12713
12736
  #
12714
- # The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.
12737
+ # The description must be 0 to 256 characters in length and cannot start with `http://` or `https://`.
12715
12738
  self.description = description
12716
12739
  # The name of the IPv6 gateway.
12717
12740
  #
12718
- # The name must be 2 to 128 characters in length, and can contain letters, digits, underscores (_), and hyphens (-). The name must start with a letter but cannot start with `http://` or `https://`.
12741
+ # The name must be 0 to 128 characters in length and cannot start with `http://` or `https://`.
12719
12742
  self.name = name
12720
12743
  self.owner_account = owner_account
12721
12744
  self.owner_id = owner_id
@@ -17478,17 +17501,18 @@ class CreateSslVpnServerRequest(TeaModel):
17478
17501
  self.cipher = cipher
17479
17502
  # The client CIDR block.
17480
17503
  #
17481
- # It is the CIDR block from which an IP address is allocated to the virtual network interface controller (NIC) of the client. It is not the private CIDR block of the client.
17504
+ # The CIDR block from which an IP address is allocated to the virtual network interface controller (NIC) of the client, rather than the private CIDR block.
17482
17505
  #
17483
- # If the client accesses the SSL server over an SSL-VPN connection, the VPN gateway assigns an IP address from the specified client CIDR block to the client. The client uses the assigned IP address to access cloud resources.
17506
+ # If the client accesses the SSL server over an SSL-VPN connection, the VPN gateway assigns an IP address from the specified client CIDR block for the client to access cloud resources.
17484
17507
  #
17485
17508
  # Make sure that the number of IP addresses in the client CIDR block is at least four times the maximum number of SSL-VPN connections supported by the VPN gateway.
17486
17509
  #
17487
17510
  # <details>
17488
17511
  # <summary>Click to view the reason.</summary>
17489
17512
  #
17490
- # For example, if you specify 192.168.0.0/24 as the client CIDR block, the system first divides a subnet CIDR block with a subnet mask of 30 from 192.168.0.0/24, such as 192.168.0.4/30. This subnet provides up to four IP addresses. Then, the system allocates an IP address from 192.168.0.4/30 to the client and uses the other three IP addresses to ensure network communication. In this case, one client consumes four IP addresses. Therefore, to ensure that an IP address is assigned to your client, you must make sure that the number of IP addresses in the client CIDR block is at least four times the maximum number of SSL-VPN connections supported by the VPN gateway with which the SSL server is associated.
17513
+ # For example, if you specify 192.168.0.0/24 as the client CIDR block, the system first divides a subnet CIDR block with a subnet mask of 30 from 192.168.0.0/24, such as 192.168.0.4/30. This subnet provides up to four IP addresses. Then, the system allocates an IP address from 192.168.0.4/30 to the client and uses the other three IP addresses to ensure network communication. In this case, one client consumes four IP addresses. Therefore, to ensure that an IP address is assigned to your client, the number of IP addresses in the client CIDR block must be at least four times the maximum number of SSL-VPN connections supported by the VPN gateway with which the SSL server is associated.
17491
17514
  # </details>
17515
+ #
17492
17516
  # <details>
17493
17517
  # <summary>Click to view the CIDR blocks that are not supported.</summary>
17494
17518
  #
@@ -17501,6 +17525,7 @@ class CreateSslVpnServerRequest(TeaModel):
17501
17525
  # <details>
17502
17526
  # <summary>Click to view the recommended client CIDR blocks for different numbers of SSL-VPN connections.</summary>
17503
17527
  #
17528
+ #
17504
17529
  # * If the number of SSL-VPN connections is 5, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 27 bits in length. Examples: 10.0.0.0/27 and 10.0.0.0/26.
17505
17530
  # * If the number of SSL-VPN connections is 10, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 26 bits in length. Examples: 10.0.0.0/26 and 10.0.0.0/25.
17506
17531
  # * If the number of SSL-VPN connections is 20, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 25 bits in length. Examples: 10.0.0.0/25 and 10.0.0.0/24.
@@ -17511,10 +17536,10 @@ class CreateSslVpnServerRequest(TeaModel):
17511
17536
  # * If the number of SSL-VPN connections is 1,000, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 20 bits in length. Examples: 10.0.0.0/20 and 10.0.0.0/19.
17512
17537
  # </details>
17513
17538
  #
17514
- # > - The subnet mask of the client CIDR block must be 16 to 29 bits in length.
17539
+ # > - The subnet mask of the client CIDR block must be 16 to 29 bits in length.
17515
17540
  # > - Make sure that the client CIDR block does not overlap with the local CIDR block, the VPC CIDR block, or route CIDR blocks associated with the client.
17516
- # > - We recommend that you use 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, or one of their subnets as the client CIDR block. If you want to specify a public CIDR block as the client CIDR block, you must specify the public CIDR block as the user CIDR block of the virtual private cloud (VPC). This way, the VPC can access the public CIDR block. For more information, see [VPC FAQ](https://help.aliyun.com/document_detail/185311.html).
17517
- # > - After you create an SSL server, the system automatically adds routes that point to the client CIDR block to the VPC route table. Do not add routes that point to the client CIDR block to the VPC route table again. Otherwise, SSL-VPN connections cannot work as expected.
17541
+ # > - We recommend that you use 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, or one of their subnets as the client CIDR block. If you want to specify a public CIDR block as the client CIDR block, you must specify the public CIDR block as the user CIDR block of the virtual private cloud (VPC). This way, the VPC can access the public CIDR block. For more information, see [VPC FAQs](https://help.aliyun.com/document_detail/185311.html).
17542
+ # > - After you create an SSL server, the system automatically adds routes that point to the client CIDR block to the VPC route table. Do not manually add routes that point to the client CIDR block. Otherwise, SSL-VPN connections cannot work as expected.
17518
17543
  #
17519
17544
  # This parameter is required.
17520
17545
  self.client_ip_pool = client_ip_pool
@@ -17549,7 +17574,7 @@ class CreateSslVpnServerRequest(TeaModel):
17549
17574
  self.idaa_sregion_id = idaa_sregion_id
17550
17575
  # The local CIDR block.
17551
17576
  #
17552
- # It is the CIDR block that your client needs to access by using the SSL-VPN connection.
17577
+ # The CIDR block that your client needs to access by using the SSL-VPN connection.
17553
17578
  #
17554
17579
  # This value can be the CIDR block of a VPC, a vSwitch, a data center that is connected to a VPC by using an Express Connect circuit, or an Alibaba Cloud service such as Object Storage Service (OSS).
17555
17580
  #
@@ -19704,7 +19729,7 @@ class CreateVcoRouteEntryRequest(TeaModel):
19704
19729
  # The tunneling protocol. Set the value to **Ipsec**, which specifies the IPsec tunneling protocol.
19705
19730
  self.overlay_mode = overlay_mode
19706
19731
  self.owner_account = owner_account
19707
- # The ID of the region where the IPsec-VPN connection is established.
19732
+ # The region ID of the IPsec-VPN connection.
19708
19733
  #
19709
19734
  # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
19710
19735
  #
@@ -21645,8 +21670,15 @@ class CreateVpnAttachmentRequestTunnelOptionsSpecificationTunnelBgpConfig(TeaMod
21645
21670
  local_bgp_ip: str = None,
21646
21671
  tunnel_cidr: str = None,
21647
21672
  ):
21673
+ # The ANS of the tunnel on the Alibaba Cloud side. Valid values: **1** to **4294967295**. Default value: **45104**.
21674
+ #
21675
+ # > We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
21648
21676
  self.local_asn = local_asn
21677
+ # The BGP IP address of the tunnel on the Alibaba Cloud side. The address is an IP address that falls within the BGP CIDR block.
21649
21678
  self.local_bgp_ip = local_bgp_ip
21679
+ # The BGP CIDR block of the tunnel. The CIDR block must fall into 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
21680
+ #
21681
+ # > The two tunnels of an IPsec-VPN connection must use different CIDR blocks.
21650
21682
  self.tunnel_cidr = tunnel_cidr
21651
21683
 
21652
21684
  def validate(self):
@@ -21690,14 +21722,40 @@ class CreateVpnAttachmentRequestTunnelOptionsSpecificationTunnelIkeConfig(TeaMod
21690
21722
  psk: str = None,
21691
21723
  remote_id: str = None,
21692
21724
  ):
21725
+ # The authentication algorithm that is used in Phase 1 negotiations. Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**. Default value: **sha1**.
21693
21726
  self.ike_auth_alg = ike_auth_alg
21727
+ # The encryption algorithm that is used in Phase 1 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**. Default value: **aes**.
21694
21728
  self.ike_enc_alg = ike_enc_alg
21729
+ # The SA lifetime as a result of Phase 1 negotiations. Unit: seconds.
21730
+ #
21731
+ # Valid values: **0** to **86400**. Default value: **86400**.
21695
21732
  self.ike_lifetime = ike_lifetime
21733
+ # The negotiation mode of IKE. Valid values: **main** and **aggressive**. Default value: **main**.
21734
+ #
21735
+ # * **main:** This mode offers higher security during negotiations.
21736
+ # * **aggressive**: This mode is faster with a higher success rate.
21696
21737
  self.ike_mode = ike_mode
21738
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: **group2**.\\
21739
+ # Valid values: **group1**, **group2**, **group5**, and **group14**.
21697
21740
  self.ike_pfs = ike_pfs
21741
+ # The version of the IKE protocol. Valid values: **ikev1** and **ikev2**. Default value: **ikev2**.
21742
+ #
21743
+ # Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for scenarios with multiple CIDR blocks.
21698
21744
  self.ike_version = ike_version
21745
+ # The identifier of the tunnel on the Alibaba Cloud side, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain spaces. The default value is the IP address of the tunnel.
21746
+ #
21747
+ # **LocalId** supports fully qualified domain names (FQDNs). If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
21699
21748
  self.local_id = local_id
21749
+ # The pre-shared key that is used for identity authentication between the tunnel and the tunnel peer.
21750
+ #
21751
+ # * The key cannot contain spaces. The key must be 1 to 100 characters in length, and can contain digits, letters, and the following special characters: ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
21752
+ # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnAttachments](https://help.aliyun.com/document_detail/2526939.html) operation to query the pre-shared key that is automatically generated by the system.
21753
+ #
21754
+ # > The tunnel and the tunnel peer must use the same pre-shared key. Otherwise, the tunnel cannot be established.
21700
21755
  self.psk = psk
21756
+ # The identifier of the tunnel peer, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain spaces. The default value is the IP address of the customer gateway that is associated with the tunnel.
21757
+ #
21758
+ # **RemoteId** supports FQDNs. If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
21701
21759
  self.remote_id = remote_id
21702
21760
 
21703
21761
  def validate(self):
@@ -21760,9 +21818,19 @@ class CreateVpnAttachmentRequestTunnelOptionsSpecificationTunnelIpsecConfig(TeaM
21760
21818
  ipsec_lifetime: int = None,
21761
21819
  ipsec_pfs: str = None,
21762
21820
  ):
21821
+ # The authentication algorithm that is used in Phase 2 negotiations.
21822
+ #
21823
+ # Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**. Default value: **sha1**.
21763
21824
  self.ipsec_auth_alg = ipsec_auth_alg
21825
+ # The encryption algorithm that is used in Phase 2 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**. Default value: **aes**.
21764
21826
  self.ipsec_enc_alg = ipsec_enc_alg
21827
+ # The SA lifetime as a result of Phase 2 negotiations. Unit: seconds.
21828
+ #
21829
+ # Valid values: **0** to **86400**. Default value: **86400**.
21765
21830
  self.ipsec_lifetime = ipsec_lifetime
21831
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 2 negotiations. Default value: **group2**.
21832
+ #
21833
+ # Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
21766
21834
  self.ipsec_pfs = ipsec_pfs
21767
21835
 
21768
21836
  def validate(self):
@@ -21808,12 +21876,32 @@ class CreateVpnAttachmentRequestTunnelOptionsSpecification(TeaModel):
21808
21876
  tunnel_index: int = None,
21809
21877
  tunnel_ipsec_config: CreateVpnAttachmentRequestTunnelOptionsSpecificationTunnelIpsecConfig = None,
21810
21878
  ):
21879
+ # The ID of the customer gateway that is associated with the tunnel.
21880
+ #
21881
+ # > This parameter is required when you create a dual-tunnel IPsec-VPN connection.
21811
21882
  self.customer_gateway_id = customer_gateway_id
21883
+ # Specifies whether to enable the DPD feature for the tunnel. Valid values:
21884
+ #
21885
+ # * **true** (default): enables DPD. The initiator of the IPsec-VPN connection sends DPD packets to check the existence and availability of the peer. If no feedback is received from the peer within the specified period of time, the connection fails. In this case, ISAKMP SA and IPsec SA are deleted along with the security tunnel.
21886
+ # * **false**: disables DPD. The initiator of the IPsec-VPN connection does not send DPD packets.
21812
21887
  self.enable_dpd = enable_dpd
21888
+ # Specifies whether to enable NAT traversal for the tunnel. Valid values:
21889
+ #
21890
+ # * **true** (default): enables NAT traversal. After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
21891
+ # * **false**: disables NAT traversal.
21813
21892
  self.enable_nat_traversal = enable_nat_traversal
21893
+ # The BGP configurations of the tunnel.
21894
+ #
21895
+ # > If you enable BGP for an IPsec-VPN connection, you must set **EnableTunnelsBgp** parameter to **true**.
21814
21896
  self.tunnel_bgp_config = tunnel_bgp_config
21897
+ # The configurations of Phase 1 negotiations.
21815
21898
  self.tunnel_ike_config = tunnel_ike_config
21899
+ # The order in which the tunnel was created.
21900
+ #
21901
+ # * **1**: Tunnel 1.
21902
+ # * **2**: Tunnel 2.
21816
21903
  self.tunnel_index = tunnel_index
21904
+ # The configurations of Phase 2 negotiations.
21817
21905
  self.tunnel_ipsec_config = tunnel_ipsec_config
21818
21906
 
21819
21907
  def validate(self):
@@ -21900,22 +21988,24 @@ class CreateVpnAttachmentRequest(TeaModel):
21900
21988
  # * **true** (default)
21901
21989
  # * **false**\
21902
21990
  self.auto_config_route = auto_config_route
21903
- # The Border Gateway Protocol (BGP) configurations:
21991
+ # This parameter is supported when you create an IPsec-VPN connection in single-tunnel mode.
21992
+ #
21993
+ # BGP configuration:
21904
21994
  #
21905
- # * **BgpConfig.EnableBgp**: specifies whether to enable BGP. Valid values: **true** and **false**. Default value: false.
21995
+ # * **BgpConfig.EnableBgp**: specifies whether to enable BGP. Valid values: **true** and **false** (default).
21906
21996
  #
21907
21997
  # * **BgpConfig.LocalAsn**: the ASN on the Alibaba Cloud side. Valid values: **1** to **4294967295**. Default value: **45104**.
21908
21998
  #
21909
- # You can enter the ASN in two segments. Separate the first 16 bits of the ASN from the remaining 16 bits with a period (.). Enter the number in each segment in decimal format.
21999
+ # You can enter a value in two segments separated by a period (.). Each segment is 16 bits in length. Enter the number in each segment in decimal format.
21910
22000
  #
21911
- # For example, if you enter 123.456, the ASN is: 123 × 65536 + 456 = 8061384.
22001
+ # For example, if you enter 123.456, the ASN is 8061384. The ASN is calculated by using the following formula: 123 × 65536 + 456 = 8061384.
21912
22002
  #
21913
- # * **BgpConfig.TunnelCidr**: the CIDR block of the IPsec tunnel. The CIDR block falls within 169.254.0.0/16. The subnet mask of the CIDR block must be 30 bits in length.
22003
+ # * **BgpConfig.TunnelCidr**: The CIDR block of the IPsec tunnel. The CIDR block must fall into 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
21914
22004
  #
21915
- # * **LocalBgpIp:** the BGP IP address on the Alibaba Cloud side. This IP address must fall within the CIDR block range of the IPsec tunnel.
22005
+ # * **LocalBgpIp**: the BGP address on the Alibaba Cloud side. It must be an IP address that falls within the CIDR block of the IPsec tunnel.
21916
22006
  #
21917
- # > * Before you configure BGP, we recommend that you learn about how BGP works and the limits. For more information, see [BGP dynamic routing ](https://help.aliyun.com/document_detail/170235.html).
21918
- # > * We recommend that you use a private ASN to establish a connection with Alibaba Cloud over BGP. Refer to the relevant documentation for the private ASN range.
22007
+ # > - Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/445767.html).
22008
+ # > - We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
21919
22009
  self.bgp_config = bgp_config
21920
22010
  # The client token that is used to ensure the idempotence of the request.
21921
22011
  #
@@ -21924,30 +22014,43 @@ class CreateVpnAttachmentRequest(TeaModel):
21924
22014
  # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
21925
22015
  self.client_token = client_token
21926
22016
  # The customer gateway ID.
22017
+ #
22018
+ # > This parameter is required only when you create a single-tunnel IPsec-VPN connection.
21927
22019
  self.customer_gateway_id = customer_gateway_id
21928
22020
  # Specifies whether to immediately start IPsec negotiations after the configuration takes effect. Valid values:
21929
22021
  #
21930
22022
  # * **true**: immediately starts IPsec negotiations after the configuration is complete.
21931
22023
  # * **false** (default): starts IPsec negotiations when inbound traffic is received.
21932
22024
  self.effect_immediately = effect_immediately
21933
- # Specifies whether to enable the dead peer detection (DPD) feature. Valid values:
22025
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
21934
22026
  #
21935
- # * **true** (default) The initiator of the IPsec-VPN connection sends DPD packets to verify the existence and availability of the peer. If no response is received from the peer within a specified period of time, the connection fails. ISAKMP SAs and IPsec SAs are deleted. The IPsec tunnel is also deleted.
21936
- # * **false**\
22027
+ # Specifies whether to enable DPD. Valid values: Valid values:
22028
+ #
22029
+ # * **true** (default): enables DPD. The initiator of the IPsec-VPN connection sends DPD packets to check the existence and availability of the peer. If no feedback is received from the peer within the specified period of time, the connection fails. In this case, ISAKMP SA and IPsec SA are deleted along with the security tunnel.
22030
+ # * **false**: disables DPD. The initiator of the IPsec-VPN connection does not send DPD packets.
21937
22031
  self.enable_dpd = enable_dpd
22032
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
22033
+ #
21938
22034
  # Specifies whether to enable NAT traversal. Valid values:
21939
22035
  #
21940
- # * **true** (default) After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the VPN tunnel.
21941
- # * **false**\
22036
+ # * **true** (default): enables NAT traversal. After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
22037
+ # * **false**: disables NAT traversal.
21942
22038
  self.enable_nat_traversal = enable_nat_traversal
22039
+ # This parameter is available if you create an IPsec-VPN connection in dual-tunnel mode.
22040
+ #
22041
+ # Specifies whether to enable the BGP feature for the tunnel. Valid values: **true** and **false**. Default value: false.
22042
+ #
22043
+ # > Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/445767.html)
21943
22044
  self.enable_tunnels_bgp = enable_tunnels_bgp
21944
- # The health check configuration:
22045
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
21945
22046
  #
21946
- # * **HealthCheckConfig.enable**: specifies whether to enable health checks. Valid values: **true** and **false**. Default value: false.
22047
+ # The health check configurations:
22048
+ #
22049
+ # * **HealthCheckConfig.enable**: indicates whether the health check is enabled. Valid values: **true** and **false** (default).
21947
22050
  #
21948
- # * **HealthCheckConfig.dip**: the destination IP address configured for health checks. Enter the IP address on the data center side that the VPC can communicate with through the IPsec-VPN connection.
22051
+ # * **HealthCheckConfig.dip**: the destination IP address configured for health checks. Enter the IP address of the on-premises data center that the VPC can access through the IPsec connection.
21949
22052
  #
21950
- # * **HealthCheckConfig.sip**: the source IP address configured for health checks. Enter the IP address on the VPC side that the data center can communicate with through the IPsec-VPN connection.
22053
+ # * **HealthCheckConfig.sip**: the source IP address configured for health checks. Enter the IP address of the VPC that the on-premises data center can access through the IPsec connection.
21951
22054
  #
21952
22055
  # * **HealthCheckConfig.interval**: the time interval of health check retries. Unit: seconds. Default value: **3**.
21953
22056
  #
@@ -21958,11 +22061,13 @@ class CreateVpnAttachmentRequest(TeaModel):
21958
22061
  # * **revoke_route** (default): withdraws published routes.
21959
22062
  # * **reserve_route**: does not withdraw published routes.
21960
22063
  self.health_check_config = health_check_config
22064
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
22065
+ #
21961
22066
  # The configurations of Phase 1 negotiations:
21962
22067
  #
21963
22068
  # * **IkeConfig.Psk**: the pre-shared key that is used for identity authentication between the VPN gateway and the on-premises data center.
21964
22069
  #
21965
- # * The key must be 1 to 100 characters in length and can contain digits, letters, and the following special characters: ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
22070
+ # * The key cannot contain space characters. The key must be 1 to 100 characters in length, and can contain digits, letters, and the following special characters: ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
21966
22071
  # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/2526951.html) operation to query the pre-shared key that is automatically generated by the system.
21967
22072
  #
21968
22073
  # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
@@ -21979,16 +22084,18 @@ class CreateVpnAttachmentRequest(TeaModel):
21979
22084
  #
21980
22085
  # * **IkeConfig.IkeLifetime**: the SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: **0** to **86400**. Default value: **86400**.
21981
22086
  #
21982
- # * **IkeConfig.LocalIdIPsec**: the identifier on the Alibaba Cloud side. The identifier cannot exceed 100 characters in length. This parameter is left empty by default.
22087
+ # * **IkeConfig.LocalId**: the identifier on the Alibaba Cloud side. The identifier cannot exceed 100 characters in length and cannot contain space characters. This parameter is empty by default.
21983
22088
  #
21984
- # * **IkeConfig.RemoteId**: the identifier on the data center side. The identifier cannot exceed 100 characters in length. The default value is the IP address of the customer gateway.
22089
+ # * **IkeConfig.RemoteId**: the identifier on the data center side. The identifier cannot exceed 100 characters in length and cannot contain space characters. The default value is the IP address of the customer gateway.
21985
22090
  self.ike_config = ike_config
22091
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
22092
+ #
21986
22093
  # The configurations of Phase 2 negotiations:
21987
22094
  #
21988
22095
  # * **IpsecConfig.IpsecEncAlg**: the encryption algorithm that is used in Phase 2 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**. Default value: **aes**.
21989
22096
  # * **IpsecConfig. IpsecAuthAlg**: the authentication algorithm that is used in Phase 2 negotiations. Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**. Default value: **md5**.
21990
- # * **IpsecConfig. IpsecPfs**: the Diffie-Hellman key exchange algorithm that is used in Phase 2 negotiations. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**. Default value: **group2**.
21991
- # * **IpsecConfig. IpsecLifetime**: the SA lifetime that is determined by Phase 2 negotiations. Unit: seconds. Valid values: **0** to **86400**. Default value: **86400**.
22097
+ # * **IpsecConfig. IpsecPfs**: The Diffie-Hellman key exchange algorithm used in the second phase negotiation. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**. Default value: **group2**.
22098
+ # * **IkeConfig.IkeLifetime**: the SA lifetime determined by Phase 2 negotiations. Unit: seconds. Valid values: **0** to **86400**. Default value: **86400**.
21992
22099
  self.ipsec_config = ipsec_config
21993
22100
  # The CIDR block on the VPC side. The CIDR block is used in Phase 2 negotiations.
21994
22101
  #
@@ -22043,6 +22150,10 @@ class CreateVpnAttachmentRequest(TeaModel):
22043
22150
  #
22044
22151
  # Each tag key corresponds to one tag value. You can specify up to 20 tag values in each call.
22045
22152
  self.tags = tags
22153
+ # The tunnel configurations.
22154
+ #
22155
+ # * You can specify parameters in the **TunnelOptionsSpecification** array when you create an IPsec-VPN connection in dual tunnel mode.
22156
+ # * When you create a IPsec-VPN connection in dual-tunnel mode, you must add both tunnels to IPsec-VPN connection to ensure that the IPsec-VPN connection has connection redundancy. Each IPsec-VPN connection supports only two tunnels.
22046
22157
  self.tunnel_options_specification = tunnel_options_specification
22047
22158
 
22048
22159
  def validate(self):
@@ -22338,15 +22449,13 @@ class CreateVpnConnectionRequestTunnelOptionsSpecificationTunnelBgpConfig(TeaMod
22338
22449
  ):
22339
22450
  # The autonomous system number (ASN) of the tunnel on the Alibaba Cloud side. Valid values: **1** to **4294967295**. Default value: **45104**.
22340
22451
  #
22341
- #
22342
- #
22343
22452
  # > - If you set **EnableTunnelsBgp** to **true**, you must set this parameter.
22344
- # > - Before you add BGP configurations, we recommend that you learn about how BGP dynamic routing works and the limits. For more information, see [VPN Gateway supports BGP dynamic routing](https://help.aliyun.com/document_detail/170235.html).
22453
+ # > - Before you add BGP configurations, we recommend that you learn about how BGP dynamic routing works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/2638220.html).
22345
22454
  # > - We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. For information about the range of private ASNs, see the relevant documentation.
22346
22455
  self.local_asn = local_asn
22347
22456
  # The BGP IP address of the tunnel on the Alibaba Cloud side. The address is an IP address that falls within the BGP CIDR block.
22348
22457
  self.local_bgp_ip = local_bgp_ip
22349
- # The BGP CIDR block of the tunnel. The CIDR block must fall within the 169.254.0.0/16 range. The subnet mask of the CIDR block must be 30 bits in length.
22458
+ # The BGP CIDR block of the tunnel. The CIDR block must fall within 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
22350
22459
  #
22351
22460
  # > The BGP CIDR block of each tunnel must be unique on a VPN gateway.
22352
22461
  self.tunnel_cidr = tunnel_cidr
@@ -22400,14 +22509,14 @@ class CreateVpnConnectionRequestTunnelOptionsSpecificationTunnelIkeConfig(TeaMod
22400
22509
  #
22401
22510
  # Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**. Default value: **aes**.
22402
22511
  self.ike_enc_alg = ike_enc_alg
22403
- # The SA lifetime as a result of Phase 1 negotiations. Unit: seconds.
22512
+ # The SA lifetime as a result of Phase 1 negotiations. Unit: seconds
22404
22513
  #
22405
22514
  # Valid values: **0** to **86400**. Default value: **86400**.
22406
22515
  self.ike_lifetime = ike_lifetime
22407
22516
  # The negotiation mode of IKE. Valid values: **main** and **aggressive**. Default value: **main**.
22408
22517
  #
22409
22518
  # * **main:** This mode offers higher security during negotiations.
22410
- # * **aggressive**: This mode supports faster negotiations and a higher success rate.
22519
+ # * **aggressive:** This mode is faster and has a higher success rate.
22411
22520
  self.ike_mode = ike_mode
22412
22521
  # The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: **group2**.\\
22413
22522
  # Valid values: **group1**, **group2**, **group5**, and **group14**.
@@ -22416,18 +22525,18 @@ class CreateVpnConnectionRequestTunnelOptionsSpecificationTunnelIkeConfig(TeaMod
22416
22525
  #
22417
22526
  # Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for scenarios with multiple CIDR blocks.
22418
22527
  self.ike_version = ike_version
22419
- # The identifier of the tunnel on the Alibaba Cloud side, which is used in Phase 1 negotiations. It can contain at most 100 characters. The default value is the IP address of the tunnel.
22528
+ # The identifier of the tunnel on the Alibaba Cloud side, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain space characters. The default value is the IP address of the tunnel.
22420
22529
  #
22421
22530
  # **LocalId** supports fully qualified domain names (FQDNs). If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
22422
22531
  self.local_id = local_id
22423
22532
  # The pre-shared key that is used for identity authentication between the tunnel and the tunnel peer.
22424
22533
  #
22425
- # * The key must be 1 to 100 characters in length and can contain digits, letters, and the following special characters: ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
22534
+ # * The key cannot contain spaces. The key must be 1 to 100 characters in length, and can contain digits, letters, and the following special characters: ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
22426
22535
  # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/2526951.html) operation to query the pre-shared key that is automatically generated by the system.
22427
22536
  #
22428
22537
  # > The tunnel and the tunnel peer must use the same pre-shared key. Otherwise, the tunnel cannot be established.
22429
22538
  self.psk = psk
22430
- # The identifier of the tunnel peer, which is used in Phase 1 negotiations. It can contain at most 100 characters. The default value is the IP address of the customer gateway that is associated with the tunnel.
22539
+ # The identifier of the tunnel peer, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain space characters. The default value is the IP address of the customer gateway that is associated with the tunnel.
22431
22540
  #
22432
22541
  # **RemoteId** supports FQDNs. If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
22433
22542
  self.remote_id = remote_id
@@ -22500,7 +22609,7 @@ class CreateVpnConnectionRequestTunnelOptionsSpecificationTunnelIpsecConfig(TeaM
22500
22609
  #
22501
22610
  # Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**. Default value: **aes**.
22502
22611
  self.ipsec_enc_alg = ipsec_enc_alg
22503
- # The SA lifetime as a result of Phase 2 negotiations. Unit: seconds.
22612
+ # The SA lifetime as a result of Phase 2 negotiations. Unit: seconds
22504
22613
  #
22505
22614
  # Valid values: **0** to **86400**. Default value: **86400**.
22506
22615
  self.ipsec_lifetime = ipsec_lifetime
@@ -22574,7 +22683,7 @@ class CreateVpnConnectionRequestTunnelOptionsSpecification(TeaModel):
22574
22683
  # * If the VPN gateway uses an SM certificate, this parameter is required.
22575
22684
  # * If the VPN gateway does not use an SM certificate, leave this parameter empty.
22576
22685
  self.remote_ca_certificate = remote_ca_certificate
22577
- # The role of the tunnel. Valid values: Valid values:
22686
+ # The role of the tunnel. Valid values:
22578
22687
  #
22579
22688
  # * **master**: The tunnel is an active tunnel.
22580
22689
  # * **slave**: The tunnel is a standby tunnel.
@@ -22674,7 +22783,7 @@ class CreateVpnConnectionRequest(TeaModel):
22674
22783
  # * **true** (default)
22675
22784
  # * **false**\
22676
22785
  self.auto_config_route = auto_config_route
22677
- # This parameter is supported when you create an IPsec-VPN connection in single-tunnel mode.
22786
+ # This parameter is supported if you create an IPsec-VPN connection in single-tunnel mode.
22678
22787
  #
22679
22788
  # BGP configuration:
22680
22789
  #
@@ -22686,14 +22795,14 @@ class CreateVpnConnectionRequest(TeaModel):
22686
22795
  #
22687
22796
  # For example, if you enter 123.456, the ASN is 8061384. The ASN is calculated by using the following formula: 123 × 65536 + 456 = 8061384.
22688
22797
  #
22689
- # * **BgpConfig.TunnelCidr**: The CIDR block of the IPsec tunnel. The CIDR block must belong to 169.254.0.0/16 and the subnet mask is 30 bits in length.
22798
+ # * **BgpConfig.TunnelCidr**: The CIDR block of the IPsec tunnel. The CIDR block must fall within 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
22690
22799
  #
22691
- # >The CIDR block of the IPsec tunnel for each IPsec-VPN connection on a VPN gateway must be unique.
22800
+ # > The CIDR block of the IPsec tunnel for each IPsec-VPN connection on a VPN gateway must be unique.
22692
22801
  #
22693
22802
  # * **LocalBgpIp**: the BGP address on the Alibaba Cloud side. It must be an IP address that falls within the CIDR block of the IPsec tunnel.
22694
22803
  #
22695
- # > * Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [VPN Gateway supports BGP dynamic routing](https://help.aliyun.com/document_detail/170235.html).
22696
- # > * We recommend that you use private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
22804
+ # > - Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/2638220.html).
22805
+ # > - We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
22697
22806
  self.bgp_config = bgp_config
22698
22807
  # The client token that is used to ensure the idempotence of the request.
22699
22808
  #
@@ -22744,13 +22853,11 @@ class CreateVpnConnectionRequest(TeaModel):
22744
22853
  #
22745
22854
  # * **IkeConfig.Psk**: the pre-shared key that is used for identity authentication between the VPN gateway and the on-premises data center.
22746
22855
  #
22747
- # * The key must be 1 to 100 characters in length and can contain digits, letters, and the following special characters: ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
22856
+ # * The key cannot contain spaces. The key must be 1 to 100 characters in length, and can contain digits, letters, and the following special characters: ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
22748
22857
  #
22749
22858
  # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/2526951.html) operation to query the pre-shared key that is automatically generated by the system.
22750
22859
  #
22751
- # **\
22752
- #
22753
- # **Note** The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
22860
+ # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
22754
22861
  #
22755
22862
  # * **IkeConfig.IkeVersion**: the version of the Internet Key Exchange (IKE) protocol. Valid values: **ikev1** and **ikev2**. Default value: **ikev1**.
22756
22863
  #
@@ -22759,7 +22866,7 @@ class CreateVpnConnectionRequest(TeaModel):
22759
22866
  # * **IkeConfig.IkeMode**: the negotiation mode of IKE. Valid values: **main** and **aggressive**. Default value: **main**.
22760
22867
  #
22761
22868
  # * **main:** This mode offers higher security during negotiations.
22762
- # * **aggressive**: This mode supports faster negotiations and a higher success rate.
22869
+ # * **aggressive:** This mode is faster and has a higher success rate.
22763
22870
  #
22764
22871
  # * **IkeConfig.IkeEncAlg**: the encryption algorithm that is used in Phase 1 negotiations.
22765
22872
  #
@@ -22771,11 +22878,11 @@ class CreateVpnConnectionRequest(TeaModel):
22771
22878
  #
22772
22879
  # * **IkeConfig.IkePfs**: the Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**. Default value: **group2**.
22773
22880
  #
22774
- # * **IkeConfig.IkeLifetime**: the SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: **0** to **86400**. Default value: **86400**.
22881
+ # * **IkeConfig.IkeLifetime**: the SA lifetime as a result of Phase 1 negotiations. Unit: seconds Valid values: **0** to **86400**. Default value: **86400**.
22775
22882
  #
22776
- # * **IkeConfig.LocalId**: the identifier of the VPN gateway. It can contain at most 100 characters. The default value is the IP address of the VPN gateway.
22883
+ # * **IkeConfig.LocalId**: the identifier of the VPN gateway. It can be up to 100 characters in length and cannot contain space characters. The default value is the IP address of the VPN gateway.
22777
22884
  #
22778
- # * **IkeConfig.RemoteId**: the identifier of the customer gateway. It can contain at most 100 characters. The default value is the IP address of the customer gateway.
22885
+ # * **IkeConfig.RemoteId**: the identifier of the customer gateway. It can be up to 100 characters in length and cannot contain space characters. The default value is the IP address of the customer gateway.
22779
22886
  self.ike_config = ike_config
22780
22887
  # This parameter is available if you create an IPsec-VPN connection in single-tunnel mode.
22781
22888
  #
@@ -27282,7 +27389,16 @@ class DeleteIpv6GatewayRequest(TeaModel):
27282
27389
  resource_owner_account: str = None,
27283
27390
  resource_owner_id: int = None,
27284
27391
  ):
27392
+ # The client token that is used to ensure the idempotence of the request.
27393
+ #
27394
+ # You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters.
27395
+ #
27396
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
27285
27397
  self.client_token = client_token
27398
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
27399
+ #
27400
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
27401
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
27286
27402
  self.dry_run = dry_run
27287
27403
  # The ID of the IPv6 gateway that you want to delete.
27288
27404
  #
@@ -27427,7 +27543,12 @@ class DeleteIpv6InternetBandwidthRequest(TeaModel):
27427
27543
  resource_owner_account: str = None,
27428
27544
  resource_owner_id: int = None,
27429
27545
  ):
27546
+ # The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters. If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID may be different for each request.
27430
27547
  self.client_token = client_token
27548
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
27549
+ #
27550
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
27551
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
27431
27552
  self.dry_run = dry_run
27432
27553
  # The ID of the IPv6 address.
27433
27554
  #
@@ -30777,7 +30898,7 @@ class DeleteVcoRouteEntryRequest(TeaModel):
30777
30898
  # The tunneling protocol. Set the value to **Ipsec**, which specifies the IPsec tunneling protocol.
30778
30899
  self.overlay_mode = overlay_mode
30779
30900
  self.owner_account = owner_account
30780
- # The ID of the region where the IPsec-VPN connection is established.
30901
+ # The region ID of the IPsec-VPN connection.
30781
30902
  #
30782
30903
  # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
30783
30904
  #
@@ -35084,9 +35205,9 @@ class DescribeCustomerGatewayResponseBodyTagsTag(TeaModel):
35084
35205
  key: str = None,
35085
35206
  value: str = None,
35086
35207
  ):
35087
- # The key of tag N.
35208
+ # The tag key.
35088
35209
  self.key = key
35089
- # The value of tag N.
35210
+ # The tag value.
35090
35211
  self.value = value
35091
35212
 
35092
35213
  def validate(self):
@@ -35174,7 +35295,7 @@ class DescribeCustomerGatewayResponseBody(TeaModel):
35174
35295
  self.customer_gateway_id = customer_gateway_id
35175
35296
  # The description of the customer gateway.
35176
35297
  self.description = description
35177
- # The public IP address of the gateway device in the data center.
35298
+ # The IP address of the gateway device in the data center.
35178
35299
  self.ip_address = ip_address
35179
35300
  # The name of the customer gateway.
35180
35301
  self.name = name
@@ -36554,6 +36675,7 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddress(TeaModel):
36554
36675
  second_limited: bool = None,
36555
36676
  security_protection_types: DescribeEipAddressesResponseBodyEipAddressesEipAddressSecurityProtectionTypes = None,
36556
36677
  segment_instance_id: str = None,
36678
+ service_id: int = None,
36557
36679
  service_managed: int = None,
36558
36680
  status: str = None,
36559
36681
  tags: DescribeEipAddressesResponseBodyEipAddressesEipAddressTags = None,
@@ -36694,6 +36816,7 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddress(TeaModel):
36694
36816
  #
36695
36817
  # This value is returned only when you query contiguous EIPs.
36696
36818
  self.segment_instance_id = segment_instance_id
36819
+ self.service_id = service_id
36697
36820
  # Indicates whether the resource is created by the service account. Valid values:
36698
36821
  #
36699
36822
  # * **0**\
@@ -36806,6 +36929,8 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddress(TeaModel):
36806
36929
  result['SecurityProtectionTypes'] = self.security_protection_types.to_map()
36807
36930
  if self.segment_instance_id is not None:
36808
36931
  result['SegmentInstanceId'] = self.segment_instance_id
36932
+ if self.service_id is not None:
36933
+ result['ServiceID'] = self.service_id
36809
36934
  if self.service_managed is not None:
36810
36935
  result['ServiceManaged'] = self.service_managed
36811
36936
  if self.status is not None:
@@ -36894,6 +37019,8 @@ class DescribeEipAddressesResponseBodyEipAddressesEipAddress(TeaModel):
36894
37019
  self.security_protection_types = temp_model.from_map(m['SecurityProtectionTypes'])
36895
37020
  if m.get('SegmentInstanceId') is not None:
36896
37021
  self.segment_instance_id = m.get('SegmentInstanceId')
37022
+ if m.get('ServiceID') is not None:
37023
+ self.service_id = m.get('ServiceID')
36897
37024
  if m.get('ServiceManaged') is not None:
36898
37025
  self.service_managed = m.get('ServiceManaged')
36899
37026
  if m.get('Status') is not None:
@@ -40171,6 +40298,7 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLog(TeaModel):
40171
40298
  service_type: str = None,
40172
40299
  status: str = None,
40173
40300
  tags: DescribeFlowLogsResponseBodyFlowLogsFlowLogTags = None,
40301
+ traffic_analyzer_id: str = None,
40174
40302
  traffic_path: DescribeFlowLogsResponseBodyFlowLogsFlowLogTrafficPath = None,
40175
40303
  traffic_type: str = None,
40176
40304
  ):
@@ -40231,6 +40359,7 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLog(TeaModel):
40231
40359
  self.status = status
40232
40360
  # The list of tags.
40233
40361
  self.tags = tags
40362
+ self.traffic_analyzer_id = traffic_analyzer_id
40234
40363
  # The sampling scope of the traffic that is collected. Valid values:
40235
40364
  #
40236
40365
  # * **all** (default value): all traffic
@@ -40293,6 +40422,8 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLog(TeaModel):
40293
40422
  result['Status'] = self.status
40294
40423
  if self.tags is not None:
40295
40424
  result['Tags'] = self.tags.to_map()
40425
+ if self.traffic_analyzer_id is not None:
40426
+ result['TrafficAnalyzerId'] = self.traffic_analyzer_id
40296
40427
  if self.traffic_path is not None:
40297
40428
  result['TrafficPath'] = self.traffic_path.to_map()
40298
40429
  if self.traffic_type is not None:
@@ -40338,6 +40469,8 @@ class DescribeFlowLogsResponseBodyFlowLogsFlowLog(TeaModel):
40338
40469
  if m.get('Tags') is not None:
40339
40470
  temp_model = DescribeFlowLogsResponseBodyFlowLogsFlowLogTags()
40340
40471
  self.tags = temp_model.from_map(m['Tags'])
40472
+ if m.get('TrafficAnalyzerId') is not None:
40473
+ self.traffic_analyzer_id = m.get('TrafficAnalyzerId')
40341
40474
  if m.get('TrafficPath') is not None:
40342
40475
  temp_model = DescribeFlowLogsResponseBodyFlowLogsFlowLogTrafficPath()
40343
40476
  self.traffic_path = temp_model.from_map(m['TrafficPath'])
@@ -44646,9 +44779,10 @@ class DescribeIpv6EgressOnlyRulesRequest(TeaModel):
44646
44779
  ):
44647
44780
  # The ID of the instance that is associated with the IPv6 address to which the egress-only rule is applied.
44648
44781
  self.instance_id = instance_id
44649
- # The type of the instance to which you want to apply the egress-only rule. Set the value to
44782
+ # The type of the instance to which you want to apply the egress-only rule. Valid values:
44650
44783
  #
44651
- # **Ipv6Address**, which specifies that the egress-only rule applies to an IPv6 address.
44784
+ # * IPv6Address (default)
44785
+ # * IPv6Prefix
44652
44786
  self.instance_type = instance_type
44653
44787
  # The ID of the egress-only rule that you want to query.
44654
44788
  self.ipv_6egress_only_rule_id = ipv_6egress_only_rule_id
@@ -44660,9 +44794,9 @@ class DescribeIpv6EgressOnlyRulesRequest(TeaModel):
44660
44794
  self.name = name
44661
44795
  self.owner_account = owner_account
44662
44796
  self.owner_id = owner_id
44663
- # The number of the page to return. Default value: **1**.
44797
+ # The page number. Default value: **1**.
44664
44798
  self.page_number = page_number
44665
- # The number of entries to return on each page. Maximum value: **50**. Default value: **10**.
44799
+ # The number of entries per page. Maximum value: **50**. Default value: **10**.
44666
44800
  self.page_size = page_size
44667
44801
  # The ID of the region where the IPv6 gateway is deployed. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
44668
44802
  #
@@ -50938,9 +51072,13 @@ class DescribeRouteTableListRequestTag(TeaModel):
50938
51072
  key: str = None,
50939
51073
  value: str = None,
50940
51074
  ):
50941
- # The detailed information about the route tables.
51075
+ # The value of tag N to add to the resource. You can specify up to 20 tag values. The tag value can be an empty string.
51076
+ #
51077
+ # The tag value can be up to 128 characters in length. It cannot start with `aliyun` or `acs:` and cannot contain `http://` or `https://`.
50942
51078
  self.key = key
50943
- # The ID of the VPC to which the route table belongs.
51079
+ # The value of tag N to add to the resource. You can specify up to 20 tag values. The tag value can be an empty string.
51080
+ #
51081
+ # The tag value can be up to 128 characters in length. It cannot start with `aliyun` or `acs:` and cannot contain `http://` or `https://`.
50944
51082
  self.value = value
50945
51083
 
50946
51084
  def validate(self):
@@ -50988,40 +51126,41 @@ class DescribeRouteTableListRequest(TeaModel):
50988
51126
  ):
50989
51127
  self.owner_account = owner_account
50990
51128
  self.owner_id = owner_id
50991
- # The value of tag N to add to the resource. You can specify up to 20 tag values. The tag value can be an empty string.
50992
- #
50993
- # The tag value can be up to 128 characters in length. It cannot start with `aliyun` or `acs:` and cannot contain `http://` or `https://`.
51129
+ # The number of the returned page. Default value: **1**.
50994
51130
  self.page_number = page_number
50995
- # The type of the route table.
50996
- #
50997
- # * **System**\
50998
- # * **Custom**\
51131
+ # The number of entries per page. Maximum value: **50**. Default value: **10**.
50999
51132
  self.page_size = page_size
51000
- # The number of entries per page.
51133
+ # The region ID of the VPC to which the route table belongs.
51134
+ #
51135
+ # You can call [DescribeRegions](https://www.alibabacloud.com/help/vpc/developer-reference/api-vpc-2016-04-28-describeregions) to query the most recent region list.
51001
51136
  #
51002
51137
  # This parameter is required.
51003
51138
  self.region_id = region_id
51004
- # The details of the route table.
51139
+ # The ID of the resource group to which the route table belongs.
51005
51140
  self.resource_group_id = resource_group_id
51006
51141
  self.resource_owner_account = resource_owner_account
51007
51142
  self.resource_owner_id = resource_owner_id
51008
- # The tags.
51143
+ # The ID of the route table.
51009
51144
  self.route_table_id = route_table_id
51010
- # The key of tag N to add to the resource. You can specify up to 20 tag keys. The tag key cannot be an empty string.
51011
- #
51012
- # The tag key can be up to 128 characters in length. It cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.
51145
+ # The name of the route table.
51013
51146
  self.route_table_name = route_table_name
51014
- # The time when the route table was created.
51015
- self.route_table_type = route_table_type
51016
- # The region ID of the VPC to which the route table belongs.
51147
+ # The type of the route table.
51017
51148
  #
51018
- # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
51149
+ # * **System**\
51150
+ # * **Custom**\
51151
+ self.route_table_type = route_table_type
51152
+ # The ID of vRouter to which the route table belongs.
51019
51153
  self.router_id = router_id
51020
- # The ID of the resource group to which the route table to be queried belongs.
51154
+ # The type of the router to which the route table belongs. Valid value:
51155
+ #
51156
+ # * **VRouter** (default): a vRouter
51157
+ # * **VBR**: a VBR
51021
51158
  self.router_type = router_type
51022
- # The page number.
51023
- self.tag = tag
51024
51159
  # The tags of the resource.
51160
+ self.tag = tag
51161
+ # The ID of the VPC to which the route table belongs.
51162
+ #
51163
+ # When this parameter is set, the value of **RouterType** is automatically assigned to **VRouter**.
51025
51164
  self.vpc_id = vpc_id
51026
51165
 
51027
51166
  def validate(self):
@@ -51141,13 +51280,9 @@ class DescribeRouteTableListResponseBodyRouterTableListRouterTableListTypeTagsTa
51141
51280
  key: str = None,
51142
51281
  value: str = None,
51143
51282
  ):
51144
- # The key of tag N to add to the resource. You can specify up to 20 tag keys. The tag key cannot be an empty string.
51145
- #
51146
- # The tag key can be up to 128 characters in length. It cannot start with aliyun or acs:, and cannot contain http:// or https://.
51283
+ # The key of the tag that is added to the route table.
51147
51284
  self.key = key
51148
- # The value of tag N to add to the resource. You can specify up to 20 tag values. The tag value can be an empty string.
51149
- #
51150
- # The tag value can be up to 128 characters in length. It cannot start with aliyun or acs: and cannot contain http:// or https://.
51285
+ # The value of the tag that is added to the route table.
51151
51286
  self.value = value
51152
51287
 
51153
51288
  def validate(self):
@@ -51256,44 +51391,55 @@ class DescribeRouteTableListResponseBodyRouterTableListRouterTableListType(TeaMo
51256
51391
  v_switch_ids: DescribeRouteTableListResponseBodyRouterTableListRouterTableListTypeVSwitchIds = None,
51257
51392
  vpc_id: str = None,
51258
51393
  ):
51259
- # The tags.
51260
- self.associate_type = associate_type
51261
- # The type of the router to which the route table belongs. Valid values:
51394
+ # The type of the cloud resource with which the route table is associated. Valid values:
51262
51395
  #
51263
- # * **VRouter**\
51264
- # * **VBR**\
51396
+ # * **VSwitch**: vSwitch
51397
+ # * **Gateway**: IPv4 gateway
51398
+ self.associate_type = associate_type
51399
+ # The time when the route table was created.
51265
51400
  self.creation_time = creation_time
51266
- # The information about the vSwitches.
51401
+ # The information about the route table.
51267
51402
  self.description = description
51268
51403
  # The detailed information about the IPv4 gateway.
51269
51404
  self.gateway_ids = gateway_ids
51270
- # The value of tag N added to the resource.
51405
+ # The ID of the Alibaba Cloud account to which the route table belongs.
51271
51406
  self.owner_id = owner_id
51272
- # The detailed information about the IPv4 gateway.
51407
+ # The ID of the resource group to which the route table belongs.
51273
51408
  self.resource_group_id = resource_group_id
51274
51409
  # Whether to receive the propagation routes. Valid Values:
51275
51410
  #
51276
- # * **True**: The propagation route is received.
51411
+ # * **true**: received.
51277
51412
  #
51278
- # * **False**: The propagation route is not received.
51413
+ # * **false**: not received.
51279
51414
  self.route_propagation_enable = route_propagation_enable
51280
- # The key of tag N added to the resource.
51415
+ # The ID of the route table.
51281
51416
  self.route_table_id = route_table_id
51282
51417
  # The name of the route table.
51283
51418
  self.route_table_name = route_table_name
51284
- # The ID of the vSwitch.
51419
+ # The type of the route table. Valid values:
51420
+ #
51421
+ # * **Custom**\
51422
+ # * **System**\
51285
51423
  self.route_table_type = route_table_type
51286
- # The tag added to the route table.
51424
+ # The ID of the vRouter to which the route table belongs.
51287
51425
  self.router_id = router_id
51288
- # The detailed information about the IPv4 gateway.
51426
+ # The type of the vRouter to which the route table belongs. Valid values:
51427
+ #
51428
+ # - **VRouter**: a vRouter.
51429
+ #
51430
+ # - **VBR**: a VBR.
51289
51431
  self.router_type = router_type
51290
- # The name of the route table.
51432
+ # The status of the route table. Valid values:
51433
+ #
51434
+ # * **Pending**\
51435
+ # * **Available**\
51436
+ # * **Deleting**\
51291
51437
  self.status = status
51292
51438
  # The tags.
51293
51439
  self.tags = tags
51294
51440
  # The vSwitch IDs.
51295
51441
  self.v_switch_ids = v_switch_ids
51296
- # The ID of the resource group to which the route table belongs.
51442
+ # The ID of the VPC to which the route table belongs.
51297
51443
  self.vpc_id = vpc_id
51298
51444
 
51299
51445
  def validate(self):
@@ -51428,18 +51574,15 @@ class DescribeRouteTableListResponseBody(TeaModel):
51428
51574
  router_table_list: DescribeRouteTableListResponseBodyRouterTableList = None,
51429
51575
  total_count: int = None,
51430
51576
  ):
51431
- # The ID of the route table.
51577
+ # The page number.
51432
51578
  self.page_number = page_number
51433
- # The type of the cloud resource with which the route table is associated. Valid values:
51434
- #
51435
- # * **VSwitch**: vSwitch
51436
- # * **Gateway**: IPv4 gateway
51579
+ # The number of entries per page.
51437
51580
  self.page_size = page_size
51438
- # The ID of the vRouter to which the route table belongs.
51581
+ # The request ID.
51439
51582
  self.request_id = request_id
51440
- # The description of the route table.
51583
+ # The detailed information about the route tables.
51441
51584
  self.router_table_list = router_table_list
51442
- # The ID of the Alibaba Cloud account to which the route table belongs.
51585
+ # The total number of entries returned.
51443
51586
  self.total_count = total_count
51444
51587
 
51445
51588
  def validate(self):
@@ -54353,8 +54496,7 @@ class DescribeSslVpnClientCertsRequest(TeaModel):
54353
54496
  self.region_id = region_id
54354
54497
  # The ID of the resource group to which the SSL client certificate belongs.
54355
54498
  #
54356
- # The SSL client certificate is the same as the resource group of the SSL server associated with it.
54357
- # You can call the [DescribeSslVpnServers](https://help.aliyun.com/document_detail/2794078.html) operation to query the ID of the resource group to which the SSL server belongs.
54499
+ # The SSL client certificate and its associated SSL server belong to the same resource group. You can call the [DescribeSslVpnServers](https://help.aliyun.com/document_detail/2794078.html) operation to query the ID of the resource group to which the SSL server belongs.
54358
54500
  self.resource_group_id = resource_group_id
54359
54501
  self.resource_owner_account = resource_owner_account
54360
54502
  self.resource_owner_id = resource_owner_id
@@ -54435,21 +54577,21 @@ class DescribeSslVpnClientCertsResponseBodySslVpnClientCertKeysSslVpnClientCertK
54435
54577
  ssl_vpn_server_id: str = None,
54436
54578
  status: str = None,
54437
54579
  ):
54438
- # The timestamp that indicates when the SSL client certificate was created. Unit: millisecond.
54580
+ # The timestamp generated when the SSL client certificate was created. Unit: milliseconds.
54439
54581
  #
54440
- # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
54582
+ # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.
54441
54583
  self.create_time = create_time
54442
- # The timestamp that indicates when the SSL client certificate expires. Unit: millisecond.
54584
+ # The timestamp generated when the SSL client certificate expires. Unit: milliseconds.
54443
54585
  #
54444
- # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
54586
+ # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.
54445
54587
  self.end_time = end_time
54446
54588
  # The name of the SSL client certificate.
54447
54589
  self.name = name
54448
- # The region where the SSL client certificate is created.
54590
+ # The region ID of the SSL client certificate.
54449
54591
  self.region_id = region_id
54450
54592
  # The ID of the resource group to which the SSL client certificate belongs.
54451
54593
  #
54452
- # You can call the [ListResourceGroups](https://help.aliyun.com/document_detail/158855.html) operation to query the resource group information.
54594
+ # You can call the [ListResourceGroups](https://help.aliyun.com/document_detail/158855.html) operation to query resource groups.
54453
54595
  self.resource_group_id = resource_group_id
54454
54596
  # The ID of the SSL client certificate.
54455
54597
  self.ssl_vpn_client_cert_id = ssl_vpn_client_cert_id
@@ -54457,7 +54599,7 @@ class DescribeSslVpnClientCertsResponseBodySslVpnClientCertKeysSslVpnClientCertK
54457
54599
  self.ssl_vpn_server_id = ssl_vpn_server_id
54458
54600
  # The status of the SSL client certificate. Valid values:
54459
54601
  #
54460
- # * **expiring-soon**\
54602
+ # * **expiring-soon**: The certificate expires in one week.
54461
54603
  # * **normal**\
54462
54604
  # * **expired**\
54463
54605
  self.status = status
@@ -54956,11 +55098,9 @@ class DescribeSslVpnServersRequest(TeaModel):
54956
55098
  #
54957
55099
  # This parameter is required.
54958
55100
  self.region_id = region_id
54959
- # The ID of the resource group to which the SSL server belongs.
54960
- #
54961
- # The SSL server has the same resource group as its associated VPN gateway instance.
55101
+ # The resource group ID of the SSL server.
54962
55102
  #
54963
- # You can call the [DescribeVpnGateway](https://help.aliyun.com/document_detail/2526915.html) operation to query the ID of the resource group to which the VPN gateway instance belongs.
55103
+ # The SSL server and its associated VPN gateway belong to the same resource group. You can call the [DescribeVpnGateway](https://help.aliyun.com/document_detail/2794055.html) operation to query the ID of the resource group to which the VPN gateway belongs.
54964
55104
  self.resource_group_id = resource_group_id
54965
55105
  self.resource_owner_account = resource_owner_account
54966
55106
  self.resource_owner_id = resource_owner_id
@@ -55071,11 +55211,16 @@ class DescribeSslVpnServersResponseBodySslVpnServersSslVpnServer(TeaModel):
55071
55211
  # * **true**\
55072
55212
  # * **false** (default)
55073
55213
  self.enable_multi_factor_auth = enable_multi_factor_auth
55214
+ # The ID of the IDaaS application.
55074
55215
  self.idaa_sapplication_id = idaa_sapplication_id
55075
- # The ID of the IDaaS instance.
55216
+ # The ID of the IDaaS EIAM instance.
55076
55217
  self.idaa_sinstance_id = idaa_sinstance_id
55218
+ # The version of the IDaaS EIAM instance.
55219
+ #
55220
+ # * This parameter is returned only if the SSL server is associated with an IDaaS EIAM 2.0 instance. Only **EIAM 2.0** is returned.
55221
+ # * If the SSL server is associated with an IDaaS EIAM 1.0 instance, no value is returned.
55077
55222
  self.idaa_sinstance_version = idaa_sinstance_version
55078
- # The region ID of the IDaaS instance.
55223
+ # The region ID of the IDaaS EIAM instance.
55079
55224
  self.idaa_sregion_id = idaa_sregion_id
55080
55225
  # The public IP address of the VPN gateway.
55081
55226
  self.internet_ip = internet_ip
@@ -55083,19 +55228,19 @@ class DescribeSslVpnServersResponseBodySslVpnServersSslVpnServer(TeaModel):
55083
55228
  self.local_subnet = local_subnet
55084
55229
  # The maximum number of connections.
55085
55230
  self.max_connections = max_connections
55086
- # The name of the SSL-VPN server.
55231
+ # The name of the SSL server.
55087
55232
  self.name = name
55088
55233
  # The port that is used by the SSL-VPN server.
55089
55234
  self.port = port
55090
- # The protocol that is used by the SSL-VPN server.
55235
+ # The protocol that is used by the SSL server.
55091
55236
  self.proto = proto
55092
- # The region ID of the SSL-VPN server.
55237
+ # The region ID of the SSL server.
55093
55238
  self.region_id = region_id
55094
- # The resource group ID of the SSL-VPN server.
55239
+ # The resource group ID of the SSL server.
55095
55240
  #
55096
55241
  # You can call the [ListResourceGroups](https://help.aliyun.com/document_detail/158855.html) operation to query resource groups.
55097
55242
  self.resource_group_id = resource_group_id
55098
- # The ID of the SSL-VPN server.
55243
+ # The ID of the SSL server.
55099
55244
  self.ssl_vpn_server_id = ssl_vpn_server_id
55100
55245
  # The ID of the VPN gateway.
55101
55246
  self.vpn_gateway_id = vpn_gateway_id
@@ -55246,7 +55391,7 @@ class DescribeSslVpnServersResponseBody(TeaModel):
55246
55391
  self.page_size = page_size
55247
55392
  # The request ID.
55248
55393
  self.request_id = request_id
55249
- # The detailed information about the SSL-VPN server.
55394
+ # The detailed information about the SSL-VPN servers.
55250
55395
  self.ssl_vpn_servers = ssl_vpn_servers
55251
55396
  # The number of entries returned.
55252
55397
  self.total_count = total_count
@@ -57807,6 +57952,10 @@ class DescribeVcoRouteEntriesResponseBodyVcoRouteEntries(TeaModel):
57807
57952
  self.create_time = create_time
57808
57953
  # The next hop of the route.
57809
57954
  self.next_hop = next_hop
57955
+ # The list of next hops.
57956
+ #
57957
+ # > - This parameter is returned only by dual-tunnel IPsec connections.
57958
+ # > - This parameter is returned only when the tunnel status is **Phase 2 Negotiation Successful**.
57810
57959
  self.next_hop_tunnel_id_list = next_hop_tunnel_id_list
57811
57960
  # The destination CIDR block of the route.
57812
57961
  self.route_dest = route_dest
@@ -57827,10 +57976,9 @@ class DescribeVcoRouteEntriesResponseBodyVcoRouteEntries(TeaModel):
57827
57976
  self.state = state
57828
57977
  # The ID of the IPsec-VPN connection.
57829
57978
  self.vpn_connection_id = vpn_connection_id
57830
- # The weight of the destination-based route. Valid values:
57979
+ # The weight of the destination-based route.
57831
57980
  #
57832
- # * **0**: a low priority
57833
- # * **100**: a high priority
57981
+ # > The current parameter has no effect.
57834
57982
  self.weight = weight
57835
57983
 
57836
57984
  def validate(self):
@@ -57900,8 +58048,17 @@ class DescribeVcoRouteEntriesResponseBodyVpnRouteCounts(TeaModel):
57900
58048
  route_entry_type: str = None,
57901
58049
  source: str = None,
57902
58050
  ):
58051
+ # The number of route entries.
57903
58052
  self.route_count = route_count
58053
+ # The route type. Valid values:
58054
+ #
58055
+ # * **custom**: destination-based route.
58056
+ # * **bgp**: BGP route.
57904
58057
  self.route_entry_type = route_entry_type
58058
+ # The source of the BGP route. Valid values:
58059
+ #
58060
+ # * **CLOUD**: The current BGP route is learned by the IPsec connection from the transit router.
58061
+ # * **VPN_BGP**: The current BGP route is learned by the IPsec connection from the data center.
57905
58062
  self.source = source
57906
58063
 
57907
58064
  def validate(self):
@@ -57950,8 +58107,11 @@ class DescribeVcoRouteEntriesResponseBody(TeaModel):
57950
58107
  self.request_id = request_id
57951
58108
  # The number of entries returned.
57952
58109
  self.total_count = total_count
57953
- # The list of routes.
58110
+ # The list of route entries.
57954
58111
  self.vco_route_entries = vco_route_entries
58112
+ # The information on route entries of the dual-tunnel IPsec connection.
58113
+ #
58114
+ # > This parameter is returned only for IPsec connections in dual-tunnel mode.
57955
58115
  self.vpn_route_counts = vpn_route_counts
57956
58116
 
57957
58117
  def validate(self):
@@ -61351,7 +61511,9 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachmentsTags(TeaModel):
61351
61511
  key: str = None,
61352
61512
  value: str = None,
61353
61513
  ):
61514
+ # The tag key of the IPsec-VPN connection.
61354
61515
  self.key = key
61516
+ # The tag value of the IPsec-VPN connection.
61355
61517
  self.value = value
61356
61518
 
61357
61519
  def validate(self):
@@ -61404,7 +61566,16 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachments(TeaModel):
61404
61566
  self.instance_id = instance_id
61405
61567
  # The name of the IPsec-VPN connection.
61406
61568
  self.name = name
61569
+ # The system tags of the IPsec-VPN connection.
61570
+ #
61571
+ # You can check whether an IPsec-VPN connection supports BGP based on the system tags.
61572
+ #
61573
+ # **BGPSupport**: indicates whether the IPsec-VPN connection supports BGP.
61574
+ #
61575
+ # * **true**\
61576
+ # * **false**\
61407
61577
  self.tag = tag
61578
+ # The list of tags to be added to the IPsec-VPN connection.
61408
61579
  self.tags = tags
61409
61580
  # The ID of the transit router with which the IPsec-VPN connection is associated.
61410
61581
  self.transit_router_id = transit_router_id
@@ -62114,6 +62285,12 @@ class DescribeVpnConnectionResponseBodyTunnelOptionsSpecificationTunnelOptions(T
62114
62285
  self.tunnel_id = tunnel_id
62115
62286
  # The configuration of Phase 1 negotiations.
62116
62287
  self.tunnel_ike_config = tunnel_ike_config
62288
+ # The order in which the tunnel is created.
62289
+ #
62290
+ # * **1**: Tunnel 1.
62291
+ # * **2**: Tunnel 2.
62292
+ #
62293
+ # > This parameter is returned only if the IPsec-VPN connection is associated with a transit router.
62117
62294
  self.tunnel_index = tunnel_index
62118
62295
  # The configurations of Phase 2 negotiations.
62119
62296
  self.tunnel_ipsec_config = tunnel_ipsec_config
@@ -62534,9 +62711,9 @@ class DescribeVpnConnectionResponseBody(TeaModel):
62534
62711
  self.transit_router_id = transit_router_id
62535
62712
  # The name of the transit router.
62536
62713
  self.transit_router_name = transit_router_name
62537
- # The tunnel configuration of the IPsec-VPN connection.
62714
+ # The tunnel configurations of the IPsec-VPN connection.
62538
62715
  #
62539
- # Parameters in **TunnelOptionsSpecification** are returned only if you query IPsec-VPN connections in dual-tunnel mode.
62716
+ # Parameters in **TunnelOptionsSpecification** are returned only if you query an IPsec-VPN connection in dual-tunnel mode.
62540
62717
  self.tunnel_options_specification = tunnel_options_specification
62541
62718
  # The health check information about the IPsec-VPN connection.
62542
62719
  self.vco_health_check = vco_health_check
@@ -63063,9 +63240,9 @@ class DescribeVpnConnectionsRequest(TeaModel):
63063
63240
  self.customer_gateway_id = customer_gateway_id
63064
63241
  self.owner_account = owner_account
63065
63242
  self.owner_id = owner_id
63066
- # The number of the page to return. Default value: **1**.
63243
+ # The page number of the page to return. Default value: **1**.
63067
63244
  self.page_number = page_number
63068
- # The number of entries to return on each page. Default value: **10**. Valid values: **1** to **50**.
63245
+ # The number of entries returned on each page. Default value: **10**. Valid values: **1** to **50**.
63069
63246
  self.page_size = page_size
63070
63247
  # The ID of the region where the IPsec-VPN connection is created.
63071
63248
  #
@@ -63635,6 +63812,12 @@ class DescribeVpnConnectionsResponseBodyVpnConnectionsVpnConnectionTunnelOptions
63635
63812
  self.tunnel_id = tunnel_id
63636
63813
  # The configuration of Phase 1 negotiations.
63637
63814
  self.tunnel_ike_config = tunnel_ike_config
63815
+ # The order in which the tunnel is created.
63816
+ #
63817
+ # * **1**: Tunnel 1.
63818
+ # * **2**: Tunnel 2.
63819
+ #
63820
+ # > This parameter is returned only if the IPsec-VPN connection is associated with a transit router.
63638
63821
  self.tunnel_index = tunnel_index
63639
63822
  # The configurations of Phase 2 negotiations.
63640
63823
  self.tunnel_ipsec_config = tunnel_ipsec_config
@@ -64043,9 +64226,9 @@ class DescribeVpnConnectionsResponseBodyVpnConnectionsVpnConnection(TeaModel):
64043
64226
  self.transit_router_id = transit_router_id
64044
64227
  # The name of the transit router.
64045
64228
  self.transit_router_name = transit_router_name
64046
- # The tunnel configuration of the IPsec-VPN connection.
64229
+ # The tunnel configurations of the IPsec-VPN connection.
64047
64230
  #
64048
- # Parameters in **TunnelOptionsSpecification** are returned only if you query IPsec-VPN connections in dual-tunnel mode.
64231
+ # Parameters in **TunnelOptionsSpecification** are returned only if you query an IPsec-VPN connection in dual-tunnel mode.
64049
64232
  self.tunnel_options_specification = tunnel_options_specification
64050
64233
  # The health check configuration of the IPsec-VPN connection.
64051
64234
  self.vco_health_check = vco_health_check
@@ -64257,7 +64440,7 @@ class DescribeVpnConnectionsResponseBody(TeaModel):
64257
64440
  self.request_id = request_id
64258
64441
  # The total number of entries returned.
64259
64442
  self.total_count = total_count
64260
- # The information about the IPsec-VPN connection.
64443
+ # The information about the IPsec-VPN connections.
64261
64444
  self.vpn_connections = vpn_connections
64262
64445
 
64263
64446
  def validate(self):
@@ -64353,18 +64536,18 @@ class DescribeVpnCrossAccountAuthorizationsRequest(TeaModel):
64353
64536
  ):
64354
64537
  # The client token that is used to ensure the idempotence of the request.
64355
64538
  #
64356
- # You can use the client to generate the value, but you must make sure that it is unique among different requests. ClientToken can contain only ASCII characters.
64539
+ # You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters.
64357
64540
  #
64358
- # > If you do not set this parameter, the system automatically uses **RequestId** as **ClientToken**. **RequestId** of each API request may be different.
64541
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
64359
64542
  self.client_token = client_token
64360
64543
  self.owner_account = owner_account
64361
- # The number of the page to return. Default value: **1**.
64544
+ # The page number. Default value: **1**.
64362
64545
  self.page_number = page_number
64363
- # The number of entries to return on each page. Default value: **10**. Valid values: **1** to **50**.
64546
+ # The number of entries to return per page. Default value: **10**. Valid values: **1** to **50**.
64364
64547
  self.page_size = page_size
64365
64548
  # The ID of the region to which the IPsec-VPN connection belongs.
64366
64549
  #
64367
- # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
64550
+ # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the region ID.
64368
64551
  #
64369
64552
  # This parameter is required.
64370
64553
  self.region_id = region_id
@@ -64437,13 +64620,13 @@ class DescribeVpnCrossAccountAuthorizationsResponseBodyCrossAccountAuthorization
64437
64620
  self.ali_uid = ali_uid
64438
64621
  # The ID of the CEN instance.
64439
64622
  self.bind_instance = bind_instance
64440
- # The resource type of the authorization.
64623
+ # The type of resource that can be associated with the IPsec-VPN connection.
64441
64624
  #
64442
- # The value is set to **CEN**, which indicates that the IPsec-VPN connection can be associated with a transit router of a Cloud Enterprise Network (CEN) instance that belongs to another Alibaba Cloud account.
64625
+ # Only **CEN** can be returned, which indicates that the IPsec-VPN connection is authorized to be associated with the transit router of a Cloud Enterprise Network (CEN) instance that belongs to another Alibaba Cloud account.
64443
64626
  self.bind_product = bind_product
64444
- # The ID of the Alibaba Cloud account whose resource the IPsec-VPN connection can be associated with.
64627
+ # The ID of the Alibaba Cloud account whose resources the IPsec-VPN connection is authorized to be associated with.
64445
64628
  self.bind_uid = bind_uid
64446
- # The timestamp when the authorization for the IPsec-VPN connection was created.
64629
+ # The time when the authorization for the IPsec-VPN connection was created.
64447
64630
  #
64448
64631
  # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
64449
64632
  self.creation_time = creation_time
@@ -64501,11 +64684,11 @@ class DescribeVpnCrossAccountAuthorizationsResponseBody(TeaModel):
64501
64684
  ):
64502
64685
  # The cross-account authorization information about the IPsec-VPN connection.
64503
64686
  self.cross_account_authorizations = cross_account_authorizations
64504
- # The page number of the returned page.
64687
+ # The page number.
64505
64688
  self.page_number = page_number
64506
- # The number of entries returned per page.
64689
+ # The number of entries per page.
64507
64690
  self.page_size = page_size
64508
- # The ID of the request.
64691
+ # The request ID.
64509
64692
  self.request_id = request_id
64510
64693
  # The number of entries returned.
64511
64694
  self.total_count = total_count
@@ -65202,13 +65385,35 @@ class DescribeVpnGatewayAvailableZonesRequest(TeaModel):
65202
65385
  resource_owner_id: int = None,
65203
65386
  spec: str = None,
65204
65387
  ):
65388
+ # The language in which the returned results are displayed. Valid values:
65389
+ #
65390
+ # * **zh-CN**: Chinese
65391
+ # * **en-US** (default): English
65205
65392
  self.accept_language = accept_language
65206
65393
  self.owner_account = owner_account
65207
65394
  self.owner_id = owner_id
65395
+ # The region ID.
65396
+ #
65208
65397
  # This parameter is required.
65209
65398
  self.region_id = region_id
65210
65399
  self.resource_owner_account = resource_owner_account
65211
65400
  self.resource_owner_id = resource_owner_id
65401
+ # The bandwidth specification.
65402
+ #
65403
+ # * If an IPsec-VPN connection can be associated with the VPN gateway, this parameter specifies the bandwidth specification of the VPN gateway.
65404
+ # * In scenarios where an IPsec-VPN connection can be associated with a transit router. This parameter specifies the bandwidth specification supported by an IPsec-VPN connection.
65405
+ #
65406
+ # Different bandwidth specifications may affect returned zone information. Valid values:
65407
+ #
65408
+ # * **5M**\
65409
+ # * **10M**\
65410
+ # * **20M**\
65411
+ # * **50M**\
65412
+ # * **100M**\
65413
+ # * **200M**\
65414
+ # * **500M**\
65415
+ # * **1000M**\
65416
+ #
65212
65417
  # This parameter is required.
65213
65418
  self.spec = spec
65214
65419
 
@@ -65262,7 +65467,9 @@ class DescribeVpnGatewayAvailableZonesResponseBodyAvailableZoneIdList(TeaModel):
65262
65467
  zone_id: str = None,
65263
65468
  zone_name: str = None,
65264
65469
  ):
65470
+ # The zone ID.
65265
65471
  self.zone_id = zone_id
65472
+ # The zone name.
65266
65473
  self.zone_name = zone_name
65267
65474
 
65268
65475
  def validate(self):
@@ -65296,8 +65503,11 @@ class DescribeVpnGatewayAvailableZonesResponseBody(TeaModel):
65296
65503
  region_id: str = None,
65297
65504
  request_id: str = None,
65298
65505
  ):
65506
+ # The zones.
65299
65507
  self.available_zone_id_list = available_zone_id_list
65508
+ # The region ID.
65300
65509
  self.region_id = region_id
65510
+ # The request ID.
65301
65511
  self.request_id = request_id
65302
65512
 
65303
65513
  def validate(self):
@@ -66575,8 +66785,17 @@ class DescribeVpnRouteEntriesResponseBodyVpnRouteCountsVpnRouteCount(TeaModel):
66575
66785
  route_entry_type: str = None,
66576
66786
  source: str = None,
66577
66787
  ):
66788
+ # The number of route entries.
66578
66789
  self.route_count = route_count
66790
+ # The route type. Valid values:
66791
+ #
66792
+ # * **custom** (default): destination-based route.
66793
+ # * **bgp** : BGP route entry.
66579
66794
  self.route_entry_type = route_entry_type
66795
+ # The source of the BGP route. Valid values:
66796
+ #
66797
+ # * **CLOUD**: advertised from a cloud service associated with the VPN gateway.
66798
+ # * **VPN_BGP**: indicates that the current route is learned by using BGP of the VPN gateway. For example, the BGP is used to learn the route of the on-premises data center.
66580
66799
  self.source = source
66581
66800
 
66582
66801
  def validate(self):
@@ -66677,7 +66896,10 @@ class DescribeVpnRouteEntriesResponseBodyVpnRouteEntriesVpnRouteEntry(TeaModel):
66677
66896
  # * **Custom**: custom
66678
66897
  # * **System**: system
66679
66898
  self.route_entry_type = route_entry_type
66680
- # The source CIDR block of the route entry.
66899
+ # The source of the BGP route. Valid values:
66900
+ #
66901
+ # * **CLOUD**: advertised from a cloud service associated with the VPN gateway.
66902
+ # * **VPN_BGP**: indicates that the current route is learned by using BGP of the VPN gateway. For example, the BGP is used to learn the route of the on-premises data center.
66681
66903
  self.source = source
66682
66904
  # The status of the route entry. Valid values:
66683
66905
  #
@@ -66805,8 +67027,11 @@ class DescribeVpnRouteEntriesResponseBody(TeaModel):
66805
67027
  self.request_id = request_id
66806
67028
  # The total number of entries returned.
66807
67029
  self.total_count = total_count
67030
+ # The information about route entries of the VPN gateway in dual-tunnel mode.
67031
+ #
67032
+ # > This parameter is returned only if the VPN gateway supports IPsec-VPN connections in dual-tunnel mode.
66808
67033
  self.vpn_route_counts = vpn_route_counts
66809
- # The list of route entries.
67034
+ # The route entry list.
66810
67035
  self.vpn_route_entries = vpn_route_entries
66811
67036
 
66812
67037
  def validate(self):
@@ -67045,9 +67270,7 @@ class DescribeVpnSslServerLogsResponseBody(TeaModel):
67045
67270
  ):
67046
67271
  # The number of log entries.
67047
67272
  self.count = count
67048
- # An array of strings.
67049
- #
67050
- # Each item in the array is a log entry.
67273
+ # Log information list.
67051
67274
  self.data = data
67052
67275
  # Indicates whether the log is accurate. Valid values:
67053
67276
  #
@@ -67818,10 +68041,10 @@ class DiagnoseVpnGatewayRequest(TeaModel):
67818
68041
  #
67819
68042
  # > If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID may be different for each request.
67820
68043
  self.client_token = client_token
67821
- # The configuration when you check the connectivity of the IPsec-VPN connection. Valid values:
68044
+ # Check the connectivity of the destination address. Valid values:
67822
68045
  #
67823
- # * **PrivateSourceIp**: the source IP address used when you check the connectivity of the IPsec-VPN connection. The source IP address must be on the VPC side.
67824
- # * **PrivateDestinationIp**: the destination IP address used when you check the connectivity of the IPsec-VPN connection. The destination IP address must be on the data center side.
68046
+ # * **PrivateSourceIp**: the source IP address. The source IP address must be on the VPC side.
68047
+ # * **PrivateDestinationIp**: the destination IP address. The destination IP address must be on the data center side.
67825
68048
  self.ipsec_extend_info = ipsec_extend_info
67826
68049
  # The region ID of the VPN gateway.
67827
68050
  #
@@ -67890,7 +68113,9 @@ class DiagnoseVpnGatewayResponseBody(TeaModel):
67890
68113
  diagnose_id: str = None,
67891
68114
  request_id: str = None,
67892
68115
  ):
67893
- # The ID of the diagnostic.
68116
+ # The diagnostic ID.
68117
+ #
68118
+ # After a diagnostic ID is returned, you can call [GetVpnGatewayDiagnoseResult](https://help.aliyun.com/document_detail/2521963.html) to query the diagnostic report.
67894
68119
  self.diagnose_id = diagnose_id
67895
68120
  # The request ID.
67896
68121
  self.request_id = request_id
@@ -68567,9 +68792,9 @@ class DissociateVpnGatewayWithCertificateRequest(TeaModel):
68567
68792
  region_id: str = None,
68568
68793
  vpn_gateway_id: str = None,
68569
68794
  ):
68570
- # The certificate ID.
68795
+ # The ID of the certificate.
68571
68796
  #
68572
- # > The certificate ID refers to the ID generated after the SSL certificate is associated with the VPN gateway. It is not the ID of the SSL certificate. You can call the [ListVpnCertificateAssociations](https://help.aliyun.com/document_detail/2521961.html) operation to query certificate IDs.
68797
+ # > The certificate ID refers to the ID generated after the SSL certificate is associated with the VPN gateway. It is not the ID of the SSL certificate.
68573
68798
  #
68574
68799
  # This parameter is required.
68575
68800
  self.certificate_id = certificate_id
@@ -75612,9 +75837,7 @@ class ListIpsecServerLogsResponseBody(TeaModel):
75612
75837
  ):
75613
75838
  # The number of entries on the current page.
75614
75839
  self.count = count
75615
- # An array of strings.
75616
- #
75617
- # Each item in the array is a log entry.
75840
+ # Log information list.
75618
75841
  self.data = data
75619
75842
  # Indicates whether the log is accurate. Valid values:
75620
75843
  #
@@ -75724,7 +75947,7 @@ class ListIpsecServersRequest(TeaModel):
75724
75947
  self.ipsec_server_id = ipsec_server_id
75725
75948
  # The name of the IPsec server.
75726
75949
  #
75727
- # The name must be 1 to 100 characters in length and cannot start with `http://` or `https://`.
75950
+ # The name must be 1 to 100 characters in length.
75728
75951
  self.ipsec_server_name = ipsec_server_name
75729
75952
  # The number of entries to return on each page. Valid values: **1** to **20**. Default value: **10**.
75730
75953
  self.max_results = max_results
@@ -75741,9 +75964,7 @@ class ListIpsecServersRequest(TeaModel):
75741
75964
  self.region_id = region_id
75742
75965
  # The ID of the resource group to which the IPsec server belongs.
75743
75966
  #
75744
- # The IPsec server has the same resource group as its associated VPN gateway instance.
75745
- #
75746
- # You can call the [DescribeVpnGateway](https://help.aliyun.com/document_detail/2526915.html) operation to query the ID of the resource group to which the VPN gateway instance belongs.
75967
+ # The IPsec server and its associated VPN gateway belong to the same resource group. You can call [DescribeVpnGateway](https://help.aliyun.com/document_detail/2794055.html) to query the ID of the resource group to which the VPN gateway belongs.
75747
75968
  self.resource_group_id = resource_group_id
75748
75969
  # The ID of the VPN gateway.
75749
75970
  self.vpn_gateway_id = vpn_gateway_id
@@ -83712,6 +83933,140 @@ class ModifyEipAddressAttributeResponse(TeaModel):
83712
83933
  return self
83713
83934
 
83714
83935
 
83936
+ class ModifyEipForwardModeRequest(TeaModel):
83937
+ def __init__(
83938
+ self,
83939
+ client_token: str = None,
83940
+ instance_id: str = None,
83941
+ mode: str = None,
83942
+ owner_id: int = None,
83943
+ region_id: str = None,
83944
+ resource_owner_account: str = None,
83945
+ resource_owner_id: int = None,
83946
+ ):
83947
+ self.client_token = client_token
83948
+ # This parameter is required.
83949
+ self.instance_id = instance_id
83950
+ # This parameter is required.
83951
+ self.mode = mode
83952
+ self.owner_id = owner_id
83953
+ # This parameter is required.
83954
+ self.region_id = region_id
83955
+ self.resource_owner_account = resource_owner_account
83956
+ self.resource_owner_id = resource_owner_id
83957
+
83958
+ def validate(self):
83959
+ pass
83960
+
83961
+ def to_map(self):
83962
+ _map = super().to_map()
83963
+ if _map is not None:
83964
+ return _map
83965
+
83966
+ result = dict()
83967
+ if self.client_token is not None:
83968
+ result['ClientToken'] = self.client_token
83969
+ if self.instance_id is not None:
83970
+ result['InstanceId'] = self.instance_id
83971
+ if self.mode is not None:
83972
+ result['Mode'] = self.mode
83973
+ if self.owner_id is not None:
83974
+ result['OwnerId'] = self.owner_id
83975
+ if self.region_id is not None:
83976
+ result['RegionId'] = self.region_id
83977
+ if self.resource_owner_account is not None:
83978
+ result['ResourceOwnerAccount'] = self.resource_owner_account
83979
+ if self.resource_owner_id is not None:
83980
+ result['ResourceOwnerId'] = self.resource_owner_id
83981
+ return result
83982
+
83983
+ def from_map(self, m: dict = None):
83984
+ m = m or dict()
83985
+ if m.get('ClientToken') is not None:
83986
+ self.client_token = m.get('ClientToken')
83987
+ if m.get('InstanceId') is not None:
83988
+ self.instance_id = m.get('InstanceId')
83989
+ if m.get('Mode') is not None:
83990
+ self.mode = m.get('Mode')
83991
+ if m.get('OwnerId') is not None:
83992
+ self.owner_id = m.get('OwnerId')
83993
+ if m.get('RegionId') is not None:
83994
+ self.region_id = m.get('RegionId')
83995
+ if m.get('ResourceOwnerAccount') is not None:
83996
+ self.resource_owner_account = m.get('ResourceOwnerAccount')
83997
+ if m.get('ResourceOwnerId') is not None:
83998
+ self.resource_owner_id = m.get('ResourceOwnerId')
83999
+ return self
84000
+
84001
+
84002
+ class ModifyEipForwardModeResponseBody(TeaModel):
84003
+ def __init__(
84004
+ self,
84005
+ request_id: str = None,
84006
+ ):
84007
+ self.request_id = request_id
84008
+
84009
+ def validate(self):
84010
+ pass
84011
+
84012
+ def to_map(self):
84013
+ _map = super().to_map()
84014
+ if _map is not None:
84015
+ return _map
84016
+
84017
+ result = dict()
84018
+ if self.request_id is not None:
84019
+ result['RequestId'] = self.request_id
84020
+ return result
84021
+
84022
+ def from_map(self, m: dict = None):
84023
+ m = m or dict()
84024
+ if m.get('RequestId') is not None:
84025
+ self.request_id = m.get('RequestId')
84026
+ return self
84027
+
84028
+
84029
+ class ModifyEipForwardModeResponse(TeaModel):
84030
+ def __init__(
84031
+ self,
84032
+ headers: Dict[str, str] = None,
84033
+ status_code: int = None,
84034
+ body: ModifyEipForwardModeResponseBody = None,
84035
+ ):
84036
+ self.headers = headers
84037
+ self.status_code = status_code
84038
+ self.body = body
84039
+
84040
+ def validate(self):
84041
+ if self.body:
84042
+ self.body.validate()
84043
+
84044
+ def to_map(self):
84045
+ _map = super().to_map()
84046
+ if _map is not None:
84047
+ return _map
84048
+
84049
+ result = dict()
84050
+ if self.headers is not None:
84051
+ result['headers'] = self.headers
84052
+ if self.status_code is not None:
84053
+ result['statusCode'] = self.status_code
84054
+ if self.body is not None:
84055
+ result['body'] = self.body.to_map()
84056
+ return result
84057
+
84058
+ def from_map(self, m: dict = None):
84059
+ m = m or dict()
84060
+ if m.get('headers') is not None:
84061
+ self.headers = m.get('headers')
84062
+ if m.get('statusCode') is not None:
84063
+ self.status_code = m.get('statusCode')
84064
+ if m.get('body') is not None:
84065
+ temp_model = ModifyEipForwardModeResponseBody()
84066
+ self.body = temp_model.from_map(m['body'])
84067
+ return self
84068
+
84069
+
83715
84070
  class ModifyExpressCloudConnectionAttributeRequest(TeaModel):
83716
84071
  def __init__(
83717
84072
  self,
@@ -84738,6 +85093,8 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84738
85093
  self,
84739
85094
  aggregation_interval: int = None,
84740
85095
  description: str = None,
85096
+ disable_log_delivery: str = None,
85097
+ enable_traffic_analyze: str = None,
84741
85098
  flow_log_id: str = None,
84742
85099
  flow_log_name: str = None,
84743
85100
  ip_version: str = None,
@@ -84746,6 +85103,7 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84746
85103
  region_id: str = None,
84747
85104
  resource_owner_account: str = None,
84748
85105
  resource_owner_id: int = None,
85106
+ traffic_analyzer_id: str = None,
84749
85107
  ):
84750
85108
  # The new sampling interval of the flow log. Unit: minutes. Valid values: **1**, **5**, and **10**.
84751
85109
  self.aggregation_interval = aggregation_interval
@@ -84753,6 +85111,8 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84753
85111
  #
84754
85112
  # The description must be 1 to 256 characters in length and cannot start with `http://` or `https://`.
84755
85113
  self.description = description
85114
+ self.disable_log_delivery = disable_log_delivery
85115
+ self.enable_traffic_analyze = enable_traffic_analyze
84756
85116
  # The ID of the flow log.
84757
85117
  #
84758
85118
  # This parameter is required.
@@ -84772,6 +85132,7 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84772
85132
  self.region_id = region_id
84773
85133
  self.resource_owner_account = resource_owner_account
84774
85134
  self.resource_owner_id = resource_owner_id
85135
+ self.traffic_analyzer_id = traffic_analyzer_id
84775
85136
 
84776
85137
  def validate(self):
84777
85138
  pass
@@ -84786,6 +85147,10 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84786
85147
  result['AggregationInterval'] = self.aggregation_interval
84787
85148
  if self.description is not None:
84788
85149
  result['Description'] = self.description
85150
+ if self.disable_log_delivery is not None:
85151
+ result['DisableLogDelivery'] = self.disable_log_delivery
85152
+ if self.enable_traffic_analyze is not None:
85153
+ result['EnableTrafficAnalyze'] = self.enable_traffic_analyze
84789
85154
  if self.flow_log_id is not None:
84790
85155
  result['FlowLogId'] = self.flow_log_id
84791
85156
  if self.flow_log_name is not None:
@@ -84802,6 +85167,8 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84802
85167
  result['ResourceOwnerAccount'] = self.resource_owner_account
84803
85168
  if self.resource_owner_id is not None:
84804
85169
  result['ResourceOwnerId'] = self.resource_owner_id
85170
+ if self.traffic_analyzer_id is not None:
85171
+ result['TrafficAnalyzerId'] = self.traffic_analyzer_id
84805
85172
  return result
84806
85173
 
84807
85174
  def from_map(self, m: dict = None):
@@ -84810,6 +85177,10 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84810
85177
  self.aggregation_interval = m.get('AggregationInterval')
84811
85178
  if m.get('Description') is not None:
84812
85179
  self.description = m.get('Description')
85180
+ if m.get('DisableLogDelivery') is not None:
85181
+ self.disable_log_delivery = m.get('DisableLogDelivery')
85182
+ if m.get('EnableTrafficAnalyze') is not None:
85183
+ self.enable_traffic_analyze = m.get('EnableTrafficAnalyze')
84813
85184
  if m.get('FlowLogId') is not None:
84814
85185
  self.flow_log_id = m.get('FlowLogId')
84815
85186
  if m.get('FlowLogName') is not None:
@@ -84826,6 +85197,8 @@ class ModifyFlowLogAttributeRequest(TeaModel):
84826
85197
  self.resource_owner_account = m.get('ResourceOwnerAccount')
84827
85198
  if m.get('ResourceOwnerId') is not None:
84828
85199
  self.resource_owner_id = m.get('ResourceOwnerId')
85200
+ if m.get('TrafficAnalyzerId') is not None:
85201
+ self.traffic_analyzer_id = m.get('TrafficAnalyzerId')
84829
85202
  return self
84830
85203
 
84831
85204
 
@@ -86674,11 +87047,20 @@ class ModifyIpv6AddressAttributeRequest(TeaModel):
86674
87047
  resource_owner_account: str = None,
86675
87048
  resource_owner_id: int = None,
86676
87049
  ):
87050
+ # The client token that is used to ensure the idempotence of the request.
87051
+ #
87052
+ # You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters.
87053
+ #
87054
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
86677
87055
  self.client_token = client_token
86678
87056
  # The description of the IPv6 address.
86679
87057
  #
86680
- # It must be 2 to 256 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. The name must start with a letter and cannot start with `http://` or `https://`.
87058
+ # The description must be 0 to 256 characters in length and cannot start with `http://` or `https://`.
86681
87059
  self.description = description
87060
+ # Specifies whether to perform a dry run, without performing the actual request. Valid values:
87061
+ #
87062
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
87063
+ # * **false** (default): performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.
86682
87064
  self.dry_run = dry_run
86683
87065
  # The ID of the IPv6 address.
86684
87066
  #
@@ -86686,7 +87068,7 @@ class ModifyIpv6AddressAttributeRequest(TeaModel):
86686
87068
  self.ipv_6address_id = ipv_6address_id
86687
87069
  # The name of the IPv6 address.
86688
87070
  #
86689
- # The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter. The name must start with a letter and cannot start with `http://` or `https://`.
87071
+ # The name must be 0 to 128 characters in length and cannot start with `http://` or `https://`.
86690
87072
  self.name = name
86691
87073
  self.owner_account = owner_account
86692
87074
  self.owner_id = owner_id
@@ -86836,9 +87218,20 @@ class ModifyIpv6GatewayAttributeRequest(TeaModel):
86836
87218
  resource_owner_account: str = None,
86837
87219
  resource_owner_id: int = None,
86838
87220
  ):
87221
+ # The client token that is used to ensure the idempotence of the request.
87222
+ #
87223
+ # You can use the client to generate the token, but you must make sure that the token is unique among different requests. The client token can contain only ASCII characters.
87224
+ #
87225
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
86839
87226
  self.client_token = client_token
86840
87227
  # The description of the IPv6 gateway.
87228
+ #
87229
+ # The description must be 0 to 256 characters in length and cannot start with `http://` or `https://`.
86841
87230
  self.description = description
87231
+ # Specifies whether to perform only a dry run, without performing the actual request. Valid values:
87232
+ #
87233
+ # * **true**: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes dry run, the `DryRunOperation` error code is returned.
87234
+ # * **false**: sends the API request. After the request passes the check, a 2XX HTTP status code is returned and the gateway endpoint is associated with the route table. This is the default value.
86842
87235
  self.dry_run = dry_run
86843
87236
  # The ID of the IPv6 gateway that you want to modify.
86844
87237
  #
@@ -86846,7 +87239,7 @@ class ModifyIpv6GatewayAttributeRequest(TeaModel):
86846
87239
  self.ipv_6gateway_id = ipv_6gateway_id
86847
87240
  # The name of the IPv6 gateway.
86848
87241
  #
86849
- # It must be 2 to 256 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). It must start with a letter. The name must start with a letter and cannot start with `http://` or `https://`.
87242
+ # The name must be 0 to 128 characters in length and cannot start with `http://` or `https://`.
86850
87243
  self.name = name
86851
87244
  self.owner_account = owner_account
86852
87245
  self.owner_id = owner_id
@@ -87009,6 +87402,10 @@ class ModifyIpv6InternetBandwidthRequest(TeaModel):
87009
87402
  #
87010
87403
  # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** may be different for each request.
87011
87404
  self.client_token = client_token
87405
+ # Specifies whether to perform a dry run, without sending the actual request. Valid values:
87406
+ #
87407
+ # * **true**: pre-checks the request but does not create the IPv4 gateway. The system checks the request for potential issues, including missing parameter values, incorrect request syntax, and service limits. If the request fails the dry run, an error code is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.
87408
+ # * **false** (default): sends the API request. After the request passes the check, an HTTP 2xx status code is returned and the IPv4 gateway is created.
87012
87409
  self.dry_run = dry_run
87013
87410
  # The ID of the IPv6 address.
87014
87411
  #
@@ -89552,7 +89949,45 @@ class ModifySslVpnServerRequest(TeaModel):
89552
89949
  # * **AES-256-CBC**\
89553
89950
  # * **none**\
89554
89951
  self.cipher = cipher
89555
- # The client IP address pool.
89952
+ # The client CIDR block.
89953
+ #
89954
+ # The CIDR block from which an IP address is allocated to the virtual network interface controller (NIC) of the client, rather than the private CIDR block.
89955
+ #
89956
+ # If the client accesses the SSL server over an SSL-VPN connection, the VPN gateway assigns an IP address from the specified client CIDR block for the client to access cloud resources.
89957
+ #
89958
+ # Make sure that the number of IP addresses in the client CIDR block is at least four times the maximum number of SSL-VPN connections supported by the VPN gateway.
89959
+ #
89960
+ # <details>
89961
+ # <summary>Click to view the reason.</summary>
89962
+ #
89963
+ # For example, if you specify 192.168.0.0/24 as the client CIDR block, the system first divides a subnet CIDR block with a subnet mask of 30 from 192.168.0.0/24, such as 192.168.0.4/30. This subnet provides up to four IP addresses. Then, the system allocates an IP address from 192.168.0.4/30 to the client and uses the other three IP addresses to ensure network communication. In this case, one client consumes four IP addresses. Therefore, to ensure that an IP address is assigned to your client, the number of IP addresses in the client CIDR block must be at least four times the maximum number of SSL-VPN connections supported by the VPN gateway with which the SSL server is associated.
89964
+ # </details>
89965
+ # <details>
89966
+ # <summary>Click to view the CIDR blocks that are not supported.</summary>
89967
+ #
89968
+ # * 100.64.0.0~100.127.255.255
89969
+ # * 127.0.0.0~127.255.255.255
89970
+ # * 169.254.0.0~169.254.255.255
89971
+ # * 224.0.0.0~239.255.255.255
89972
+ # * 255.0.0.0~255.255.255.255
89973
+ # </details>
89974
+ # <details>
89975
+ # <summary>Click to view the recommended client CIDR blocks for different numbers of SSL-VPN connections.</summary>
89976
+ #
89977
+ # * If the number of SSL-VPN connections is 5, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 27 bits in length. Examples: 10.0.0.0/27 and 10.0.0.0/26.
89978
+ # * If the number of SSL-VPN connections is 10, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 26 bits in length. Examples: 10.0.0.0/26 and 10.0.0.0/25.
89979
+ # * If the number of SSL-VPN connections is 20, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 25 bits in length. Examples: 10.0.0.0/25 and 10.0.0.0/24.
89980
+ # * If the number of SSL-VPN connections is 50, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 24 bits in length. Examples: 10.0.0.0/24 and 10.0.0.0/23.
89981
+ # * If the number of SSL-VPN connections is 100, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 23 bits in length. Examples: 10.0.0.0/23 and 10.0.0.0/22.
89982
+ # * If the number of SSL-VPN connections is 200, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 22 bits in length. Examples: 10.0.0.0/22 and 10.0.0.0/21.
89983
+ # * If the number of SSL-VPN connections is 500, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 21 bits in length. Examples: 10.0.0.0/21 and 10.0.0.0/20.
89984
+ # * If the number of SSL-VPN connections is 1,000, we recommend that you specify a client CIDR block with a subnet mask that is less than or equal to 20 bits in length. Examples: 10.0.0.0/20 and 10.0.0.0/19.
89985
+ # </details>
89986
+ #
89987
+ # > - The subnet mask of the client CIDR block must be 16 to 29 bits in length.
89988
+ # > - Make sure that the client CIDR block does not overlap with the local CIDR block, the VPC CIDR block, or route CIDR blocks associated with the client.
89989
+ # > - We recommend that you use 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, or one of their subnets as the client CIDR block. If you want to specify a public CIDR block as the client CIDR block, you must specify the public CIDR block as the user CIDR block of the virtual private cloud (VPC). This way, the VPC can access the public CIDR block. For more information, see [VPC FAQs](https://help.aliyun.com/document_detail/185311.html).
89990
+ # > - After you create an SSL server, the system automatically adds routes that point to the client CIDR block to the VPC route table. Do not manually add routes that point to the client CIDR block. Otherwise, SSL-VPN connections cannot work as expected.
89556
89991
  self.client_ip_pool = client_ip_pool
89557
89992
  # The client token that is used to ensure the idempotence of the request.
89558
89993
  #
@@ -89565,13 +90000,14 @@ class ModifySslVpnServerRequest(TeaModel):
89565
90000
  # * **true** (default)
89566
90001
  # * **false**\
89567
90002
  self.compress = compress
89568
- # Specifies whether to enable two-factor authentication. If you enable two-factor authentication, you must also specify an IDaaS EIAM instance ID and an IDaaS application ID. Valid values:
90003
+ # Specifies whether to enable two-factor authentication. To enable two-factor authentication, you need to specify **IDaaSInstanceId**, **IDaaSRegionId**, and **IDaaSApplicationId**. Valid values:
89569
90004
  #
89570
- # * **true**\
89571
- # * **false**\
90005
+ # * **true**: enables the feature.
90006
+ # * **false**: disables the feature.
89572
90007
  #
89573
- # > - If you use two-factor authentication for the first time, you must first complete [authorization](https://ram.console.aliyun.com/role/authorization?request=%7B%22Services%22%3A%5B%7B%22Service%22%3A%22VPN%22%2C%22Roles%22%3A%5B%7B%22RoleName%22%3A%22AliyunVpnAccessingIdaasRole%22%2C%22TemplateId%22%3A%22IdaasRole%22%7D%5D%7D%5D%2C%22ReturnUrl%22%3A%22https%3A%2F%2Fvpc.console.aliyun.com%2Fsslvpn%2Fcn-shanghai%2Fvpn-servers%22%7D).
89574
- # > - IDaaS EIAM 1.0 instances are no longer for purchase. If your Alibaba Cloud account has IDaaS EIAM 1.0 instances, the IDaaS EIAM 1.0 instances can be associated after two-factor authentication is enabled. If your Alibaba Cloud account does not have IDaaS EIAM 1.0 instances, only IDaaS EIAM 2.0 instances can be associated after two-factor authentication is enabled.
90008
+ # > - If you use two-factor authentication for the first time, you must first complete [authorization](https://ram.console.aliyun.com/role/authorization?request=%7B%22Services%22%3A%5B%7B%22Service%22%3A%22VPN%22%2C%22Roles%22%3A%5B%7B%22RoleName%22%3A%22AliyunVpnAccessingIdaasRole%22%2C%22TemplateId%22%3A%22IdaasRole%22%7D%5D%7D%5D%2C%22ReturnUrl%22%3A%22https%3A%2F%2Fvpc.console.aliyun.com%2Fsslvpn%2Fcn-shanghai%2Fvpn-servers%22%7D).
90009
+ # > - When you create an SSL server in the UAE (Dubai) region, we recommend that you associate the SSL server with an IDaaS EIAM 2.0 instance in Singapore to reduce latency.
90010
+ # > - IDaaS EIAM 1.0 instances are no longer available for purchase. If your Alibaba Cloud account has IDaaS EIAM 1.0 instances, the IDaaS EIAM 1.0 instances can be associated after two-factor authentication is enabled. If your Alibaba Cloud account does not have IDaaS EIAM 1.0 instances, only IDaaS EIAM 2.0 instances can be associated after two-factor authentication is enabled.
89575
90011
  self.enable_multi_factor_auth = enable_multi_factor_auth
89576
90012
  # The ID of the IDaaS application.
89577
90013
  #
@@ -89582,7 +90018,18 @@ class ModifySslVpnServerRequest(TeaModel):
89582
90018
  self.idaa_sinstance_id = idaa_sinstance_id
89583
90019
  # The region ID of the IDaaS EIAM instance.
89584
90020
  self.idaa_sregion_id = idaa_sregion_id
89585
- # The CIDR block of the client.
90021
+ # The local CIDR block.
90022
+ #
90023
+ # The CIDR block that your client needs to access by using the SSL-VPN connection.
90024
+ #
90025
+ # This value can be the CIDR block of a VPC, a vSwitch, a data center that is connected to a VPC by using an Express Connect circuit, or an Alibaba Cloud service such as Object Storage Service (OSS).
90026
+ #
90027
+ # The subnet mask of the specified local CIDR block must be 8 to 32 bits in length. You cannot specify the following CIDR blocks as the local CIDR blocks:
90028
+ #
90029
+ # * 127.0.0.0~127.255.255.255
90030
+ # * 169.254.0.0~169.254.255.255
90031
+ # * 224.0.0.0~239.255.255.255
90032
+ # * 255.0.0.0~255.255.255.255
89586
90033
  self.local_subnet = local_subnet
89587
90034
  # The name of the SSL server.
89588
90035
  #
@@ -89726,7 +90173,7 @@ class ModifySslVpnServerResponseBody(TeaModel):
89726
90173
  ):
89727
90174
  # The encryption algorithm.
89728
90175
  self.cipher = cipher
89729
- # The client IP address pool.
90176
+ # The client CIDR block.
89730
90177
  self.client_ip_pool = client_ip_pool
89731
90178
  # Indicates whether data compression is enabled.
89732
90179
  self.compress = compress
@@ -89750,7 +90197,7 @@ class ModifySslVpnServerResponseBody(TeaModel):
89750
90197
  self.idaa_sinstance_version = idaa_sinstance_version
89751
90198
  # The public IP address.
89752
90199
  self.internet_ip = internet_ip
89753
- # The CIDR block of the client.
90200
+ # The local CIDR block.
89754
90201
  self.local_subnet = local_subnet
89755
90202
  # The maximum number of connections.
89756
90203
  self.max_connections = max_connections
@@ -89923,7 +90370,7 @@ class ModifyTunnelAttributeRequestTunnelOptionsSpecificationTunnelBgpConfig(TeaM
89923
90370
  self.local_bgp_ip = local_bgp_ip
89924
90371
  # The CIDR block of the tunnel.
89925
90372
  #
89926
- # The CIDR block must fall into 169.254.0.0/16. The subnet mask of the CIDR block must be 30 bits in length.
90373
+ # The CIDR block must fall within the 169.254.0.0/16 range. The subnet mask of the CIDR block must be 30 bits in length.
89927
90374
  self.tunnel_cidr = tunnel_cidr
89928
90375
 
89929
90376
  def validate(self):
@@ -89974,28 +90421,28 @@ class ModifyTunnelAttributeRequestTunnelOptionsSpecificationTunnelIkeConfig(TeaM
89974
90421
  self.ike_auth_alg = ike_auth_alg
89975
90422
  # The encryption algorithm that is used in IKE Phase 1 negotiations.
89976
90423
  #
89977
- # * Valid values when the IPsec connection is attached to a standard VPN gateway: **aes**, **aes192**, **sha256**, **des**, and **3des**.
89978
- # * Valid values when the IPsec connection is attached to a VPN gateway that uses an SM certificate: **sm4**.
90424
+ # * Valid values when the IPsec connection is attached to a standard VPN gateway: **aes**, **aes192**, **aes256**, **des**, and **3des**.
90425
+ # * If the IPsec connection is attached to a VPN gateway that uses an SM certificate, set the value to **sm4**.
89979
90426
  self.ike_enc_alg = ike_enc_alg
89980
- # The SA lifetime that is used in IKE Phase 1 negotiations. Unit: seconds. Valid values: **0 to 86400**.
90427
+ # The SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: **0 to 86400**.
89981
90428
  self.ike_lifetime = ike_lifetime
89982
- # The IKE negotiation mode. Valid values:
90429
+ # The negotiation mode of IKE. Valid values:
89983
90430
  #
89984
90431
  # * **main:** This mode offers higher security during negotiations.
89985
- # * **aggressive:** This mode is faster and has a higher success rate.
90432
+ # * **aggressive**: This mode is faster and has a higher success rate.
89986
90433
  self.ike_mode = ike_mode
89987
- # The Diffie-Hellman (DH) key exchange algorithm that is used in IKE Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**.
90434
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**.
89988
90435
  self.ike_pfs = ike_pfs
89989
- # The IKE version. Valid values: **ikev1** and **ikev2**.
90436
+ # The version of the IKE protocol. Valid values: **ikev1** and **ikev2**.
89990
90437
  self.ike_version = ike_version
89991
- # The tunnel identifier. The identifier can be up to 100 characters in length, and supports fully qualified domain names (FQDNs) and IP addresses. The default identifier is the tunnel IP address.
90438
+ # The tunnel identifier. The identifier can be up to 100 characters in length, and supports FQDNs and IP addresses. The default value is the IP address of the tunnel.
89992
90439
  self.local_id = local_id
89993
90440
  # The pre-shared key that is used to verify identities between the tunnel and peer.
89994
90441
  #
89995
- # * It must be 1 to 100 characters in length, and can contain letters, digits, and the following characters: ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
89996
- # * If you do not specify a pre-shared key, the system generates a random 16-character string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/120374.html) operation to query the pre-shared key that is generated by the system.
90442
+ # * The key must be 1 to 100 characters in length and can contain digits, letters, and the following special characters: ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
90443
+ # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/120374.html) operation to query the pre-shared key that is automatically generated by the system.
89997
90444
  #
89998
- # > The pre-shared key that is configured for the tunnel and the tunnel peer must be the same. Otherwise, the system cannot establish the tunnel.
90445
+ # > The pre-shared key that is configured for the tunnel and the tunnel peer must be the same. Otherwise, the system cannot establish the tunnel.
89999
90446
  self.psk = psk
90000
90447
  # The peer identifier. The identifier can be up to 100 characters in length, and supports FQDNs and IP addresses. The default identifier is the IP address of the customer gateway associated with the tunnel.
90001
90448
  self.remote_id = remote_id
@@ -90067,12 +90514,12 @@ class ModifyTunnelAttributeRequestTunnelOptionsSpecificationTunnelIpsecConfig(Te
90067
90514
  self.ipsec_auth_alg = ipsec_auth_alg
90068
90515
  # The encryption algorithm that is used in IPsec Phase 2 negotiations.
90069
90516
  #
90070
- # * Valid values when the IPsec connection is attached to a standard VPN gateway: **aes**, **aes192**, **sha256**, **des**, and **3des**.
90071
- # * Valid values when the IPsec connection is attached to a VPN gateway that uses an SM certificate: **sm4**.
90517
+ # * Valid values when the IPsec connection is attached to a standard VPN gateway: **aes**, **aes192**, **aes256**, **des**, and **3des**.
90518
+ # * If the IPsec connection is attached to a VPN gateway that uses an SM certificate, set the value to **sm4**.
90072
90519
  self.ipsec_enc_alg = ipsec_enc_alg
90073
- # The SA lifetime that is used in IPsec Phase 2 negotiations. Unit: seconds. Valid values: **0 to 86400**.
90520
+ # The SA lifetime as a result of Phase 2 negotiations. Unit: seconds. Valid values: **0 to 86400**.
90074
90521
  self.ipsec_lifetime = ipsec_lifetime
90075
- # The DH key exchange algorithm that is used in IPsec Phase 2 negotiations. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
90522
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 2 negotiations. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
90076
90523
  self.ipsec_pfs = ipsec_pfs
90077
90524
 
90078
90525
  def validate(self):
@@ -90119,15 +90566,15 @@ class ModifyTunnelAttributeRequestTunnelOptionsSpecification(TeaModel):
90119
90566
  tunnel_ipsec_config: ModifyTunnelAttributeRequestTunnelOptionsSpecificationTunnelIpsecConfig = None,
90120
90567
  ):
90121
90568
  self.customer_gateway_id = customer_gateway_id
90122
- # Specifies whether to enable the dead peer detection (DPD) feature. Valid values:
90569
+ # Specifies whether to enable dead peer detection (DPD). Valid values: Valid values:
90123
90570
  #
90124
- # * **true**: DPD is enabled. The IPsec initiator sends DPD packets to verify the existence and availability of the IPsec peer. If no response is received from the peer within a specified period of time, the IPsec peer is considered disconnected. Then, the ISAKMP SA, IPsec SA, and IPsec tunnel are deleted.
90571
+ # * **true** The IPsec initiator sends DPD packets to verify the existence and availability of the IPsec peer. If no response is received from the peer within a specified period of time, the IPsec peer is considered disconnected. Then, the ISAKMP SA, IPsec SA, and IPsec tunnel are deleted.
90125
90572
  # * **false**: DPD is disabled. The IPsec initiator does not send DPD packets.
90126
90573
  self.enable_dpd = enable_dpd
90127
90574
  # Specifies whether to enable NAT traversal. Valid values:
90128
90575
  #
90129
- # * **true**: NAT traversal is enabled. After NAT traversal is enabled, the initiator does not check the UDP ports during Internet Key Exchange (IKE) negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
90130
- # * **false**: NAT traversal is disabled.
90576
+ # * **true**: enables NAT traversal. After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
90577
+ # * **false**: disables NAT traversal.
90131
90578
  self.enable_nat_traversal = enable_nat_traversal
90132
90579
  # The peer certificate authority (CA) certificate when you want to attach the IPsec connection to a virtual private network (VPN) gateway that uses a ShangMi (SM) certificate.
90133
90580
  self.remote_ca_certificate = remote_ca_certificate
@@ -91190,7 +91637,7 @@ class ModifyVcoRouteEntryWeightRequest(TeaModel):
91190
91637
  # The tunneling protocol. Set the value to **Ipsec**, which specifies the IPsec tunneling protocol.
91191
91638
  self.overlay_mode = overlay_mode
91192
91639
  self.owner_account = owner_account
91193
- # The ID of the region where the IPsec-VPN connection is established.
91640
+ # The region ID of the IPsec-VPN connection.
91194
91641
  #
91195
91642
  # You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
91196
91643
  #
@@ -92139,8 +92586,15 @@ class ModifyVpnAttachmentAttributeRequestTunnelOptionsSpecificationTunnelBgpConf
92139
92586
  local_bgp_ip: str = None,
92140
92587
  tunnel_cidr: str = None,
92141
92588
  ):
92589
+ # The autonomous system number (ASN) of the tunnel on the Alibaba Cloud side. Valid values: **1** to **4294967295**. Default value: **45104**.
92590
+ #
92591
+ # > We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
92142
92592
  self.local_asn = local_asn
92593
+ # The BGP IP address of the tunnel on the Alibaba Cloud side. The address is an IP address that falls within the BGP CIDR block.
92143
92594
  self.local_bgp_ip = local_bgp_ip
92595
+ # The BGP CIDR block of the tunnel. The CIDR block must fall within 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
92596
+ #
92597
+ # > The two tunnels of an IPsec connection must use different CIDR blocks.
92144
92598
  self.tunnel_cidr = tunnel_cidr
92145
92599
 
92146
92600
  def validate(self):
@@ -92184,14 +92638,39 @@ class ModifyVpnAttachmentAttributeRequestTunnelOptionsSpecificationTunnelIkeConf
92184
92638
  psk: str = None,
92185
92639
  remote_id: str = None,
92186
92640
  ):
92641
+ # The authentication algorithm that is used in Phase 1 negotiations. Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**.
92187
92642
  self.ike_auth_alg = ike_auth_alg
92643
+ # The encryption algorithm that is used in Phase 1 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**.
92188
92644
  self.ike_enc_alg = ike_enc_alg
92645
+ # The SA lifetime as a result of Phase 1 negotiations. Unit: seconds.
92646
+ #
92647
+ # Valid values: **0** to **86400**.
92189
92648
  self.ike_lifetime = ike_lifetime
92649
+ # The negotiation mode of IKE. Valid values: **main** and **aggressive**.
92650
+ #
92651
+ # * **main:** This mode offers higher security during negotiations.
92652
+ # * **aggressive**: This mode is faster with a higher success rate.
92190
92653
  self.ike_mode = ike_mode
92654
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**.
92191
92655
  self.ike_pfs = ike_pfs
92656
+ # The version of the IKE protocol. Valid values: **ikev1** and **ikev2**.
92657
+ #
92658
+ # Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for scenarios with multiple CIDR blocks.
92192
92659
  self.ike_version = ike_version
92660
+ # The identifier of the tunnel on the Alibaba Cloud side, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain spaces.
92661
+ #
92662
+ # **LocalId** supports fully qualified domain names (FQDNs). If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
92193
92663
  self.local_id = local_id
92664
+ # The pre-shared key that is used for identity authentication between the tunnel and the tunnel peer.
92665
+ #
92666
+ # * The key must be 1 to 100 characters in length, and can contain digits, and letters. The key cannot contain spaces. ``~!\\`@#$%^&*()_-+={}[]|;:\\",.<>/?``
92667
+ # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnAttachments](https://help.aliyun.com/document_detail/2526939.html) operation to query the pre-shared key that is automatically generated by the system.
92668
+ #
92669
+ # > The tunnel and the tunnel peer must use the same pre-shared key. Otherwise, the tunnel cannot be established.
92194
92670
  self.psk = psk
92671
+ # The identifier of the tunnel peer, which is used in Phase 1 negotiations. The identifier cannot exceed 100 characters in length and cannot contain spaces.
92672
+ #
92673
+ # **RemoteId** supports FQDNs. If you use an FQDN, we recommend that you set the negotiation mode to **aggressive**.
92195
92674
  self.remote_id = remote_id
92196
92675
 
92197
92676
  def validate(self):
@@ -92254,9 +92733,19 @@ class ModifyVpnAttachmentAttributeRequestTunnelOptionsSpecificationTunnelIpsecCo
92254
92733
  ipsec_lifetime: int = None,
92255
92734
  ipsec_pfs: str = None,
92256
92735
  ):
92736
+ # The authentication algorithm that is used in Phase 2 negotiations.
92737
+ #
92738
+ # Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**.
92257
92739
  self.ipsec_auth_alg = ipsec_auth_alg
92740
+ # The encryption algorithm that is used in Phase 2 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**.
92258
92741
  self.ipsec_enc_alg = ipsec_enc_alg
92742
+ # The SA lifetime as a result of Phase 2 negotiations. Unit: seconds.
92743
+ #
92744
+ # Valid values: **0** to **86400**.
92259
92745
  self.ipsec_lifetime = ipsec_lifetime
92746
+ # The Diffie-Hellman key exchange algorithm that is used in Phase 2 negotiations.
92747
+ #
92748
+ # Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
92260
92749
  self.ipsec_pfs = ipsec_pfs
92261
92750
 
92262
92751
  def validate(self):
@@ -92303,13 +92792,34 @@ class ModifyVpnAttachmentAttributeRequestTunnelOptionsSpecification(TeaModel):
92303
92792
  tunnel_index: int = None,
92304
92793
  tunnel_ipsec_config: ModifyVpnAttachmentAttributeRequestTunnelOptionsSpecificationTunnelIpsecConfig = None,
92305
92794
  ):
92795
+ # The ID of the customer gateway that is associated with the tunnel.
92796
+ #
92797
+ # > This parameter is only supported in dual-tunnel IPsec-VPN connections.
92306
92798
  self.customer_gateway_id = customer_gateway_id
92799
+ # Specifies whether to enable the Dead Peer Detection (DPD) feature for the tunnel. Valid values:
92800
+ #
92801
+ # * **true**: enables DPD. The initiator of the IPsec-VPN connection sends DPD packets to check the existence and availability of the peer. If no feedback is received from the peer within the specified period of time, the connection fails. In this case, ISAKMP SA and IPsec SA are deleted along with the security tunnel.
92802
+ # * **false**: disables DPD. The initiator of the IPsec-VPN connection does not send DPD packets.
92307
92803
  self.enable_dpd = enable_dpd
92804
+ # Specifies whether to enable NAT traversal for the tunnel. Valid values:
92805
+ #
92806
+ # * **true**: enables NAT traversal. After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
92807
+ # * **false**: disables NAT traversal.
92308
92808
  self.enable_nat_traversal = enable_nat_traversal
92809
+ # Add BGP configurations for the tunnel.
92810
+ #
92811
+ # > If you enable BGP for an IPsec-VPN connection, you must set **EnableTunnelsBgp** parameter to **true**.
92309
92812
  self.tunnel_bgp_config = tunnel_bgp_config
92813
+ # The tunnel ID.
92310
92814
  self.tunnel_id = tunnel_id
92815
+ # The configuration of Phase 1 negotiations.
92311
92816
  self.tunnel_ike_config = tunnel_ike_config
92817
+ # The order in which the tunnel was created.
92818
+ #
92819
+ # * **1**: Tunnel 1.
92820
+ # * **2**: Tunnel 2.
92312
92821
  self.tunnel_index = tunnel_index
92822
+ # The configuration of Phase 2 negotiations.
92313
92823
  self.tunnel_ipsec_config = tunnel_ipsec_config
92314
92824
 
92315
92825
  def validate(self):
@@ -92399,7 +92909,9 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92399
92909
  # * **true**\
92400
92910
  # * **false**\
92401
92911
  self.auto_config_route = auto_config_route
92402
- # The Border Gateway Protocol (BGP) configuration:
92912
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
92913
+ #
92914
+ # BGP configuration:
92403
92915
  #
92404
92916
  # * **BgpConfig.EnableBgp**: specifies whether to enable BGP. Valid values:
92405
92917
  #
@@ -92408,16 +92920,16 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92408
92920
  #
92409
92921
  # * **BgpConfig.LocalAsn**: the autonomous system number (ASN) on the Alibaba Cloud side. Valid values: **1** to **4294967295**.
92410
92922
  #
92411
- # You can enter the ASN in two segments. Separate the first 16 bits of the ASN from the remaining 16 bits with a period (.). Enter the number in each segment in decimal format.
92923
+ # You can enter a value in two segments separated by a period (.). Each segment is 16 bits in length. Enter the number in each segment in decimal format.
92412
92924
  #
92413
- # For example, if you enter 123.456, the ASN is: 123 × 65536 + 456 = 8061384.
92925
+ # For example, if you enter 123.456, the ASN is 8061384. The ASN is calculated by using the following formula: 123 × 65536 + 456 = 8061384.
92414
92926
  #
92415
- # * **BgpConfig.TunnelCidr:** the CIDR block of the IPsec tunnel. The CIDR block falls within 169.254.0.0/16. The subnet mask of the CIDR block must be 30 bits in length.
92927
+ # * **BgpConfig.TunnelCidr**: The CIDR block of the IPsec tunnel. The CIDR block must fall into 169.254.0.0/16 and the mask of the CIDR block must be 30 bits in length. The CIDR block cannot be 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, or 169.254.169.252/30.
92416
92928
  #
92417
- # * **LocalBgpIp:** the BGP IP address on the Alibaba Cloud side. This IP address must fall within the CIDR block of the IPsec tunnel.
92929
+ # * **LocalBgpIp**: the BGP address on the Alibaba Cloud side. It must be an IP address that falls within the CIDR block of the IPsec tunnel.
92418
92930
  #
92419
- # > - Before you configure BGP, we recommend that you learn how BGP dynamic routing works and the limits of using BGP dynamic routing. For more information, see [BGP dynamic routing ](https://help.aliyun.com/document_detail/170235.html).
92420
- # > - We recommend that you use a private ASN to establish a connection with Alibaba Cloud over BGP. Refer to the relevant documentation for the private ASN range.
92931
+ # > - Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/445767.html).
92932
+ # > - We recommend that you use a private ASN to establish BGP connections to Alibaba Cloud. Refer to the relevant documentation for the private ASN range.
92421
92933
  self.bgp_config = bgp_config
92422
92934
  # The client token that is used to ensure the idempotence of the request.
92423
92935
  #
@@ -92425,24 +92937,37 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92425
92937
  #
92426
92938
  # > If you do not specify this parameter, the system automatically uses the value of **RequestId** as the value of **ClientToken**. The **request ID** may be different for each request.
92427
92939
  self.client_token = client_token
92428
- # The customer gateway associated with the IPsec-VPN connection.
92940
+ # The customer gateways to be associated with the IPsec-VPN connections.
92941
+ #
92942
+ # > Only single-tunnel IPsec-VPN connections support this parameter.
92429
92943
  self.customer_gateway_id = customer_gateway_id
92430
92944
  # Specifies whether to immediately start IPsec negotiations after the configuration takes effect. Valid values:
92431
92945
  #
92432
92946
  # * **true**: immediately starts IPsec negotiations after the configuration is complete.
92433
92947
  # * **false**: starts IPsec negotiations when inbound traffic is detected.
92434
92948
  self.effect_immediately = effect_immediately
92435
- # Specifies whether to enable the dead peer detection (DPD) feature. Valid values:
92949
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
92436
92950
  #
92437
- # * **true**: enables the DPD feature. The initiator of the IPsec-VPN connection sends DPD packets to check the existence and availability of the peer. If no feedback is received from the peer within a specific period of time, the connection fails. Then, the ISAKMP SA, IPsec SA, and IPsec tunnel are deleted.
92438
- # * **false**: disables the DPD feature. The initiator of the IPsec-VPN connection does not send DPD packets.
92951
+ # Specifies whether to enable dead peer detection (DPD). Valid values:
92952
+ #
92953
+ # * **true**: enables DPD. The initiator of the IPsec-VPN connection sends DPD packets to check the existence and availability of the peer. If no feedback is received from the peer within the specified period of time, the connection fails. In this case, ISAKMP SA and IPsec SA are deleted, along with the security tunnel.
92954
+ # * **false**: disables DPD. The initiator of the IPsec-VPN connection does not send DPD packets.
92439
92955
  self.enable_dpd = enable_dpd
92956
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
92957
+ #
92440
92958
  # Specifies whether to enable NAT traversal. Valid values:
92441
92959
  #
92442
- # * **true** After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec tunnel.
92443
- # * **false**\
92960
+ # * **true**: enables NAT traversal. After NAT traversal is enabled, the initiator does not check the UDP ports during IKE negotiations and can automatically discover NAT gateway devices along the IPsec-VPN tunnel.
92961
+ # * **false**: disables NAT traversal.
92444
92962
  self.enable_nat_traversal = enable_nat_traversal
92963
+ # You can specify this parameter if you modify the configuration of a dual-tunnel IPsec-VPN connection.
92964
+ #
92965
+ # Specifies whether to enable the BGP feature for the tunnel. Valid values: **true** and **false**.
92966
+ #
92967
+ # > Before you add BGP configurations, we recommend that you learn about how BGP works and the limits. For more information, see [Configure BGP dynamic routing](https://help.aliyun.com/document_detail/445767.html).
92445
92968
  self.enable_tunnels_bgp = enable_tunnels_bgp
92969
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
92970
+ #
92446
92971
  # The health check configurations:
92447
92972
  #
92448
92973
  # * **HealthCheckConfig.enable**: specifies whether to enable the health check feature. Valid values:
@@ -92450,9 +92975,9 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92450
92975
  # * **true**\
92451
92976
  # * **false**\
92452
92977
  #
92453
- # * **HealthCheckConfig.dip**: the destination IP address that is used for health checks. Enter the IP address on the data center side that the VPC can communicate with through the IPsec-VPN connection.
92978
+ # * **HealthCheckConfig.dip**: the destination IP address configured for health checks. Specify the IP address of the data center with which the VPC can access through the IPsec-VPN connection.
92454
92979
  #
92455
- # * **HealthCheckConfig.sip**: the source IP address that is used for health checks. Enter the IP address on the VPC side that the data center can communicate with through the IPsec-VPN connection.
92980
+ # * **HealthCheckConfig.sip**: the source IP address configured for health checks. The IP address of the VPC with which the data center can access through the IPsec-VPN connection.
92456
92981
  #
92457
92982
  # * **HealthCheckConfig.interval**: the interval between two consecutive health checks. Unit: seconds.
92458
92983
  #
@@ -92463,37 +92988,41 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92463
92988
  # * **revoke_route**\
92464
92989
  # * **reserve_route**\
92465
92990
  self.health_check_config = health_check_config
92991
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
92992
+ #
92466
92993
  # The configuration of Phase 1 negotiations:
92467
92994
  #
92468
- # * **IkeConfig.Psk**: The pre-shared key that is used for authentication between the VPN gateway and the data center.
92995
+ # * **IkeConfig.Psk**: The pre-shared key that is used for identity authentication between the Alibaba Cloud IPsec connection and the on-premises data center.
92469
92996
  #
92470
- # * The pre-shared key must be 1 to 100 characters in length and can contain letters, digits, and the following characters: ``~ ! ` @ # $ % ^ & * () _ - + = {} [] | ; : \\" , . < > / ?``
92471
- # * If you do not specify a pre-shared key, the system generates a random 16-character string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/120374.html) operation to query the pre-shared key that is generated by the system.
92997
+ # * The key must be 1 to 100 characters in length, and can contain digits, and letters. The key cannot contain spaces. ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
92998
+ # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/120374.html) operation to query the pre-shared key that is automatically generated by the system.
92472
92999
  #
92473
- # >The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the data center. Otherwise, you cannot establish a connection between the data center and the VPN gateway.
93000
+ # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
92474
93001
  #
92475
- # * **IkeConfig.IkeVersion**: the Internet Key Exchange (IKE) version. Valid values: **ikev1** and **ikev2**.
93002
+ # * **IkeConfig.IkeVersion**: the version of the Internet Key Exchange (IKE) protocol. Valid values: **ikev1** and **ikev2**.
92476
93003
  #
92477
93004
  # * **IkeConfig.IkeMode**: the negotiation mode. Valid values: **main** and **aggressive**.
92478
93005
  #
92479
- # * **IkeConfig.IkeEncAlg**: the encryption algorithm that is used in Phase 1 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**.
93006
+ # * **IkeConfig.IkeEncAlg:** the encryption algorithm that is used in Phase 1 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**.
92480
93007
  #
92481
93008
  # * **IkeConfig.IkeAuthAlg**: the authentication algorithm that is used in Phase 1 negotiations. Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**.
92482
93009
  #
92483
- # * **IkeConfig.IkePfs**: the Diffie-Hellman (DH) key exchange algorithm that is used in Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**.
93010
+ # * **IkeConfig.IkePfs**: the Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Valid values: **group1**, **group2**, **group5**, and **group14**.
92484
93011
  #
92485
- # * **IkeConfig.IkeLifetime**: the security association (SA) lifetime determined by Phase 1 negotiations. Unit: seconds. Valid values: **0** to **86400**.
93012
+ # * **IkeConfig.IkeLifetime**: the SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: **0** to **86400**.
92486
93013
  #
92487
- # * **IkeConfig.LocalIdIPsec**: the identifier of the IPsec-VPN connection on the Alibaba Cloud side. The identifier can be up to 100 characters in length.
93014
+ # * **IkeConfig.LocalId**: the identifier on the Alibaba Cloud side. The identifier cannot exceed 100 characters in length and cannot contain spaces.
92488
93015
  #
92489
- # * **IkeConfig.RemoteId**: the identifier of the IPsec-VPN connection on the data center side. The identifier can be up to 100 characters in length.
93016
+ # * **IkeConfig.RemoteId**: the identifier of the data center. It cannot exceed 100 characters in length and cannot contain spaces.
92490
93017
  self.ike_config = ike_config
93018
+ # This parameter is supported if you modify the configurations of an IPsec-VPN connection in single-tunnel mode.
93019
+ #
92491
93020
  # The configuration of Phase 2 negotiations:
92492
93021
  #
92493
93022
  # * **IpsecConfig.IpsecEncAlg:** the encryption algorithm that is used in Phase 2 negotiations. Valid values: **aes**, **aes192**, **aes256**, **des**, and **3des**.
92494
93023
  # * **IpsecConfig. IpsecAuthAlg:** the authentication algorithm that is used in Phase 2 negotiations. Valid values: **md5**, **sha1**, **sha256**, **sha384**, and **sha512**.
92495
- # * **IpsecConfig. IpsecPfs:** the DH key exchange algorithm that is used in Phase 2 negotiations. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
92496
- # * **IpsecConfig. IpsecLifetime**: the SA lifetime determined by Phase 2 negotiations. Unit: seconds. Valid values: **0** to **86400**.
93024
+ # * **IpsecConfig. IpsecPfs:** the Diffie-Hellman key exchange algorithm that is used in Phase 2 negotiations. Valid values: **disabled**, **group1**, **group2**, **group5**, and **group14**.
93025
+ # * **IkeConfig.IkeLifetime**: the SA lifetime determined by Phase 2 negotiations. Unit: seconds. Valid values: **0** to **86400**.
92497
93026
  self.ipsec_config = ipsec_config
92498
93027
  # The CIDR block of the virtual private cloud (VPC) that communicates with the data center. The CIDR block is used in Phase 2 negotiations.
92499
93028
  #
@@ -92533,6 +93062,9 @@ class ModifyVpnAttachmentAttributeRequest(TeaModel):
92533
93062
  self.remote_subnet = remote_subnet
92534
93063
  self.resource_owner_account = resource_owner_account
92535
93064
  self.resource_owner_id = resource_owner_id
93065
+ # The tunnel configurations.
93066
+ #
93067
+ # You can specify parameters in the **TunnelOptionsSpecification** array when you modify the configurations of an IPsec-VPN connection in dual-tunnel mode. You can modify the configurations of the two tunnels of the IPsec-VPN connection.
92536
93068
  self.tunnel_options_specification = tunnel_options_specification
92537
93069
  # The ID of the IPsec-VPN connection.
92538
93070
  #
@@ -92670,17 +93202,25 @@ class ModifyVpnAttachmentAttributeResponseBodyIkeConfig(TeaModel):
92670
93202
  self.ike_enc_alg = ike_enc_alg
92671
93203
  # The SA lifetime that is determined by Phase 1 negotiations. Unit: seconds.
92672
93204
  self.ike_lifetime = ike_lifetime
92673
- # The negotiation mode.
93205
+ # The IKE negotiation mode.
93206
+ #
93207
+ # * **main:** This mode offers higher security during negotiations.
93208
+ # * **aggressive**: This mode is faster with a higher success rate.
92674
93209
  self.ike_mode = ike_mode
92675
93210
  # The DH key exchange algorithm that is used in Phase 1 negotiations.
92676
93211
  self.ike_pfs = ike_pfs
92677
93212
  # The version of the IKE protocol.
93213
+ #
93214
+ # * **ikev1**\
93215
+ # * **ikev2**\
93216
+ #
93217
+ # Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for scenarios with multiple CIDR blocks.
92678
93218
  self.ike_version = ike_version
92679
93219
  # The identifier of the IPsec-VPN connection on the Alibaba Cloud side.
92680
93220
  self.local_id = local_id
92681
- # The pre-shared key that is used for identity authentication between the VPN gateway and the data center.
93221
+ # Enter a pre-shared key that is used for identity authentication between Alibaba Cloud and the data center.
92682
93222
  #
92683
- # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the data center. Otherwise, you cannot establish a connection between the data center and the VPN gateway.
93223
+ # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and Alibaba Cloud cannot be established.
92684
93224
  self.psk = psk
92685
93225
  # The identifier of the IPsec-VPN connection on the data center side.
92686
93226
  self.remote_id = remote_id
@@ -92795,10 +93335,15 @@ class ModifyVpnAttachmentAttributeResponseBodyTunnelOptionsSpecificationTunnelBg
92795
93335
  peer_bgp_ip: str = None,
92796
93336
  tunnel_cidr: str = None,
92797
93337
  ):
93338
+ # The ASN on the Alibaba Cloud side.
92798
93339
  self.local_asn = local_asn
93340
+ # The BGP IP address of the tunnel on the Alibaba Cloud side.
92799
93341
  self.local_bgp_ip = local_bgp_ip
93342
+ # The ASN of the tunnel peer.
92800
93343
  self.peer_asn = peer_asn
93344
+ # The BGP IP address of the tunnel peer.
92801
93345
  self.peer_bgp_ip = peer_bgp_ip
93346
+ # The BGP CIDR block of the tunnel.
92802
93347
  self.tunnel_cidr = tunnel_cidr
92803
93348
 
92804
93349
  def validate(self):
@@ -92850,14 +93395,26 @@ class ModifyVpnAttachmentAttributeResponseBodyTunnelOptionsSpecificationTunnelIk
92850
93395
  psk: str = None,
92851
93396
  remote_id: str = None,
92852
93397
  ):
93398
+ # The authentication algorithm in the IKE phase.
92853
93399
  self.ike_auth_alg = ike_auth_alg
93400
+ # The encryption algorithm in the IKE phase.
92854
93401
  self.ike_enc_alg = ike_enc_alg
93402
+ # The lifetime in the IKE phase. Unit: seconds.
92855
93403
  self.ike_lifetime = ike_lifetime
93404
+ # The negotiation mode of IKE. Valid values:
93405
+ #
93406
+ # * **main:** This mode offers higher security during negotiations.
93407
+ # * **aggressive**: This mode is faster with a higher success rate.
92856
93408
  self.ike_mode = ike_mode
93409
+ # The Diffie-Hellman (DH) group in the IKE phase.
92857
93410
  self.ike_pfs = ike_pfs
93411
+ # The version of the IKE protocol.
92858
93412
  self.ike_version = ike_version
93413
+ # The identifier of the tunnel on the Alibaba Cloud side.
92859
93414
  self.local_id = local_id
93415
+ # The pre-shared key.
92860
93416
  self.psk = psk
93417
+ # The peer identifier.
92861
93418
  self.remote_id = remote_id
92862
93419
 
92863
93420
  def validate(self):
@@ -92920,9 +93477,13 @@ class ModifyVpnAttachmentAttributeResponseBodyTunnelOptionsSpecificationTunnelIp
92920
93477
  ipsec_lifetime: int = None,
92921
93478
  ipsec_pfs: str = None,
92922
93479
  ):
93480
+ # The authentication algorithm in the IPsec phase.
92923
93481
  self.ipsec_auth_alg = ipsec_auth_alg
93482
+ # The encryption algorithm in the IPsec phase.
92924
93483
  self.ipsec_enc_alg = ipsec_enc_alg
93484
+ # The lifetime in the IPsec phase. Unit: seconds.
92925
93485
  self.ipsec_lifetime = ipsec_lifetime
93486
+ # The DH group in the IPsec phase.
92926
93487
  self.ipsec_pfs = ipsec_pfs
92927
93488
 
92928
93489
  def validate(self):
@@ -92972,16 +93533,43 @@ class ModifyVpnAttachmentAttributeResponseBodyTunnelOptionsSpecification(TeaMode
92972
93533
  tunnel_index: int = None,
92973
93534
  tunnel_ipsec_config: ModifyVpnAttachmentAttributeResponseBodyTunnelOptionsSpecificationTunnelIpsecConfig = None,
92974
93535
  ):
93536
+ # The ID of the customer gateway that is associated with the tunnel.
92975
93537
  self.customer_gateway_id = customer_gateway_id
93538
+ # Whether the DPD feature is enabled for the tunnel.
93539
+ #
93540
+ # * **true**: The feature is enabled.
93541
+ # * **false**: The feature is disabled.
92976
93542
  self.enable_dpd = enable_dpd
93543
+ # Indicates whether traversal feature is enabled for the tunnel. Valid values:
93544
+ #
93545
+ # * **true**: The feature is enabled.
93546
+ # * **false**: The feature is disabled.
92977
93547
  self.enable_nat_traversal = enable_nat_traversal
93548
+ # The IP address on the Alibaba Cloud side.
92978
93549
  self.internet_ip = internet_ip
93550
+ # The tunnel role. Valid values:
93551
+ #
93552
+ # * **master**: The tunnel is an active tunnel.
93553
+ # * **slave**: The tunnel is a standby tunnel.
92979
93554
  self.role = role
93555
+ # The status of the tunnel. Valid values:
93556
+ #
93557
+ # * **active**: The tunnel is active.
93558
+ # * **updating**: The tunnel is being updated.
93559
+ # * **deleting:** The tunnel is being deleted.
92980
93560
  self.state = state
93561
+ # BGP configuration.
92981
93562
  self.tunnel_bgp_config = tunnel_bgp_config
93563
+ # The tunnel ID.
92982
93564
  self.tunnel_id = tunnel_id
93565
+ # The configurations of Phase 1 negotiations.
92983
93566
  self.tunnel_ike_config = tunnel_ike_config
93567
+ # The order in which the tunnel was created.
93568
+ #
93569
+ # * **1**: Tunnel 1.
93570
+ # * **2**: Tunnel 2.
92984
93571
  self.tunnel_index = tunnel_index
93572
+ # The configurations of Phase 2 negotiations.
92985
93573
  self.tunnel_ipsec_config = tunnel_ipsec_config
92986
93574
 
92987
93575
  def validate(self):
@@ -93238,6 +93826,8 @@ class ModifyVpnAttachmentAttributeResponseBody(TeaModel):
93238
93826
  # This value is a UNIX timestamp representing the number of milliseconds that have elapsed since the epoch time January 1, 1970, 00:00:00 UTC.
93239
93827
  self.create_time = create_time
93240
93828
  # The ID of the customer gateway associated with the IPsec-VPN connection.
93829
+ #
93830
+ # This parameter is returned only for single-tunnel IPsec-VPN connections.
93241
93831
  self.customer_gateway_id = customer_gateway_id
93242
93832
  # The description of the IPsec-VPN connection.
93243
93833
  self.description = description
@@ -93246,22 +93836,36 @@ class ModifyVpnAttachmentAttributeResponseBody(TeaModel):
93246
93836
  # * **true**\
93247
93837
  # * **false**\
93248
93838
  self.effect_immediately = effect_immediately
93249
- # Indicates whether the DPD feature is enabled for the IPsec-VPN connection. Valid values:
93839
+ # Indicates whether the DPD feature is enabled for the IPsec-VPN connection.
93250
93840
  #
93251
- # * **true**\
93252
- # * **false**\
93841
+ # * **true**: The feature is enabled.
93842
+ # * **false**: The feature is disabled.
93843
+ #
93844
+ # This parameter is returned only for single-tunnel IPsec-VPN connections.
93253
93845
  self.enable_dpd = enable_dpd
93254
- # Indicates whether NAT traversal is enabled for the IPsec-VPN connection. Valid values:
93846
+ # Specifies whether to enable NAT traversal for the IPsec-VPN connection.
93255
93847
  #
93256
- # * **true**\
93257
- # * **false**\
93848
+ # * **true**: The feature is enabled.
93849
+ # * **false**: The feature is disabled.
93850
+ #
93851
+ # This parameter is returned only for single-tunnel IPsec-VPN connections.
93258
93852
  self.enable_nat_traversal = enable_nat_traversal
93853
+ # Specifies whether to enable Border Gateway Protocol (BGP) for tunnels.
93854
+ #
93855
+ # * **true**: The feature is enabled.
93856
+ # * **false**: The feature is disabled.
93857
+ #
93858
+ # This parameter is returned only by dual-tunnel IPsec-VPN connections.
93259
93859
  self.enable_tunnels_bgp = enable_tunnels_bgp
93260
93860
  # The configuration of Phase 1 negotiations.
93861
+ #
93862
+ # **IkeConfig** parameters are returned only for single-tunnel IPsec-VPN connections.
93261
93863
  self.ike_config = ike_config
93262
93864
  # The configuration of Phase 2 negotiations.
93865
+ #
93866
+ # **IpsecConfig** parameters are returned only for single-tunnel IPsec-VPN connections.
93263
93867
  self.ipsec_config = ipsec_config
93264
- # The CIDR block of the VPC with which the data center can communicate.
93868
+ # The CIDR block on the Alibaba Cloud side that communicates with the on-premises data center is required, such as CIDR blocks of VPCs.
93265
93869
  self.local_subnet = local_subnet
93266
93870
  # The name of the IPsec-VPN connection.
93267
93871
  self.name = name
@@ -93270,7 +93874,7 @@ class ModifyVpnAttachmentAttributeResponseBody(TeaModel):
93270
93874
  # * **public**: an encrypted connection over the Internet
93271
93875
  # * **private**: an encrypted connection over private networks
93272
93876
  self.network_type = network_type
93273
- # The CIDR block of the data center with which the VPC can communicate.
93877
+ # The CIDR block of the on-premises data center that communicates with Alibaba Cloud is required.
93274
93878
  self.remote_subnet = remote_subnet
93275
93879
  # The request ID.
93276
93880
  self.request_id = request_id
@@ -93289,14 +93893,23 @@ class ModifyVpnAttachmentAttributeResponseBody(TeaModel):
93289
93893
  # * **ipsec_sa_not_established**: Phase 2 negotiations failed.
93290
93894
  # * **ipsec_sa_established**: Phase 2 negotiations succeeded.
93291
93895
  self.status = status
93896
+ # The tunnel configurations of the IPsec-VPN connection.
93897
+ #
93898
+ # **TunnelOptionsSpecification** parameters are returned only for dual-tunnel IPsec-VPN connections.
93292
93899
  self.tunnel_options_specification = tunnel_options_specification
93293
- # The health check configuration of the IPsec-VPN connection.
93900
+ # The health check configurations of the IPsec-VPN connection.
93901
+ #
93902
+ # **VcoHealthCheck** parameters are returned only for single-tunnel IPsec-VPC connections.
93294
93903
  self.vco_health_check = vco_health_check
93295
- # The BGP configuration of the IPsec-VPN connection.
93904
+ # The BGP configurations of the IPsec-VPN connection.
93905
+ #
93906
+ # **VpnBgpConfig** parameters are returned only for single-tunnel IPsec-VPN connections.
93296
93907
  self.vpn_bgp_config = vpn_bgp_config
93297
93908
  # The ID of the IPsec-VPN connection.
93298
93909
  self.vpn_connection_id = vpn_connection_id
93299
- # The ID of the VPN gateway associated with the IPsec-VPN connection.
93910
+ # The ID of the VPN gateway that is associated with the IPsec-VPN connection.
93911
+ #
93912
+ # **vpn-not-exist**: The IPsec-VPN connection is not associated with a VPN Gateway.
93300
93913
  self.vpn_gateway_id = vpn_gateway_id
93301
93914
 
93302
93915
  def validate(self):
@@ -93884,9 +94497,7 @@ class ModifyVpnConnectionAttributeRequest(TeaModel):
93884
94497
  # * The key cannot contain space characters. The key must be 1 to 100 characters in length, and can contain digits, letters, and the following special characters: ``~!`@#$%^&*()_-+={}[]|;:\\",.<>/?``
93885
94498
  # * If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. You can call the [DescribeVpnConnection](https://help.aliyun.com/document_detail/2526951.html) operation to query the pre-shared key that is automatically generated by the system.
93886
94499
  #
93887
- # **\
93888
- #
93889
- # **Description** The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
94500
+ # > The pre-shared key of the IPsec-VPN connection must be the same as the authentication key of the on-premises data center. Otherwise, connections between the on-premises data center and the VPN gateway cannot be established.
93890
94501
  #
93891
94502
  # * **IkeConfig.IkeVersion**: the version of the Internet Key Exchange (IKE) protocol. Valid values: **ikev1** and **ikev2**.
93892
94503
  #
@@ -94983,9 +95594,9 @@ class ModifyVpnGatewayAttributeRequest(TeaModel):
94983
95594
  #
94984
95595
  # > If you do not specify this parameter, the system automatically uses the request ID as the client token. The request ID may be different for each request.
94985
95596
  self.client_token = client_token
94986
- # The new description of the VPN gateway.
95597
+ # The new description of the VPN connection.
94987
95598
  #
94988
- # The description must be 1 to 100 characters in length and cannot start with `http://` or `https://`.
95599
+ # The description must be 1 to 100 characters in length.
94989
95600
  self.description = description
94990
95601
  # The new name of the VPN gateway.
94991
95602
  #
@@ -95124,15 +95735,12 @@ class ModifyVpnGatewayAttributeResponseBody(TeaModel):
95124
95735
  self.internet_ip = internet_ip
95125
95736
  # The IP address of the VPN gateway.
95126
95737
  #
95127
- # This parameter is returned only when the VPN gateway is a private VPN gateway and supports only the single-tunnel mode.
95738
+ # This parameter is returned only if the VPN gateway supports IPsec-VPN connections in single-tunnel mode.
95128
95739
  self.intranet_ip = intranet_ip
95129
95740
  # The name of the VPN gateway.
95130
95741
  self.name = name
95131
95742
  # The request ID.
95132
95743
  self.request_id = request_id
95133
- # VPN网关实例所属的资源组ID。
95134
- #
95135
- # 您可以调用[ListResourceGroups](https://help.aliyun.com/document_detail/158855.html)接口查询资源组信息。
95136
95744
  self.resource_group_id = resource_group_id
95137
95745
  # The maximum bandwidth of the VPN gateway. Unit: Mbit/s.
95138
95746
  self.spec = spec
@@ -100882,13 +101490,29 @@ class TransformEipSegmentToPublicIpAddressPoolRequest(TeaModel):
100882
101490
  region_id: str = None,
100883
101491
  resource_group_id: str = None,
100884
101492
  ):
101493
+ # The client token that is used to ensure the idempotence of the request.
101494
+ #
101495
+ # You can use the client to generate the token, but you must make sure that the token is unique among all requests. The token can contain only ASCII characters.
101496
+ #
101497
+ # > If you do not specify this parameter, the system automatically uses the **request ID** as the **client token**. The **request ID** is different for each request.
100885
101498
  self.client_token = client_token
101499
+ # The description of the IP address pool.
101500
+ #
101501
+ # The description must be 0 to 256 characters in length and cannot start with `http://` or `https://`.
100886
101502
  self.description = description
101503
+ # The ID of the contiguous EIP group to be migrated.
101504
+ #
100887
101505
  # This parameter is required.
100888
101506
  self.instance_id = instance_id
101507
+ # The name of the IP address pool.
101508
+ #
101509
+ # The name must be 0 to 128 characters in length and cannot start with `http://` or `https://`.
100889
101510
  self.name = name
101511
+ # The ID of the region to which the contiguous EIP group belongs. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
101512
+ #
100890
101513
  # This parameter is required.
100891
101514
  self.region_id = region_id
101515
+ # The ID of the resource group to which the address pool belongs.
100892
101516
  self.resource_group_id = resource_group_id
100893
101517
 
100894
101518
  def validate(self):
@@ -100938,8 +101562,11 @@ class TransformEipSegmentToPublicIpAddressPoolResponseBody(TeaModel):
100938
101562
  request_id: str = None,
100939
101563
  resource_group_id: str = None,
100940
101564
  ):
101565
+ # The ID of the IP address pool.
100941
101566
  self.public_ip_address_pool_id = public_ip_address_pool_id
101567
+ # The request ID.
100942
101568
  self.request_id = request_id
101569
+ # The ID of the resource group to which the IP address pool belongs.
100943
101570
  self.resource_group_id = resource_group_id
100944
101571
 
100945
101572
  def validate(self):
@@ -103184,11 +103811,11 @@ class UpdateIpsecServerRequest(TeaModel):
103184
103811
  self.local_subnet = local_subnet
103185
103812
  # The pre-shared key.
103186
103813
  #
103187
- # The pre-shared key that is used for authentication between the IPsec-VPN server and the client. It must be 1 to 100 characters in length.
103814
+ # The pre-shared key that is used for authentication between the IPsec server and the client. The key must be 1 to 100 characters in length.
103188
103815
  #
103189
103816
  # You can call [ListIpsecServers](https://help.aliyun.com/document_detail/2794120.html) to query keys generated by the system.
103190
103817
  #
103191
- # > The pre-shared key of the IPsec server key must be the same as that of the client. Otherwise, the connection between the IPsec server and the client cannot be established.
103818
+ # > The pre-shared key of the IPsec server key must be the same as that of the client. Otherwise, the connection between the IPsec server and the client cannot be established.
103192
103819
  self.psk = psk
103193
103820
  # Specifies whether to enable pre-shared key authentication. If you set the value to **true**, pre-shared key authentication is enabled.
103194
103821
  self.psk_enabled = psk_enabled