alibabacloud-vpc20160428 6.14.0__py3-none-any.whl → 6.15.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.
Files changed (41) hide show
  1. alibabacloud_vpc20160428/__init__.py +1 -1
  2. alibabacloud_vpc20160428/client.py +220 -0
  3. alibabacloud_vpc20160428/models/__init__.py +12 -0
  4. alibabacloud_vpc20160428/models/_create_forward_entry_request.py +7 -6
  5. alibabacloud_vpc20160428/models/_create_nat_gateway_request.py +2 -0
  6. alibabacloud_vpc20160428/models/_create_nat_gateway_shrink_request.py +2 -0
  7. alibabacloud_vpc20160428/models/_create_nat_ip_request.py +2 -0
  8. alibabacloud_vpc20160428/models/_create_nat_ip_response_body.py +5 -0
  9. alibabacloud_vpc20160428/models/_create_snat_entry_request.py +5 -0
  10. alibabacloud_vpc20160428/models/_create_vpn_attachment_request.py +8 -0
  11. alibabacloud_vpc20160428/models/_delete_nat_ip_request.py +2 -0
  12. alibabacloud_vpc20160428/models/_describe_nat_gateway_associate_network_interfaces_response_body.py +1 -0
  13. alibabacloud_vpc20160428/models/_describe_nat_gateways_request.py +2 -2
  14. alibabacloud_vpc20160428/models/_describe_nat_gateways_response_body.py +11 -0
  15. alibabacloud_vpc20160428/models/_describe_snat_table_entries_request.py +1 -0
  16. alibabacloud_vpc20160428/models/_describe_snat_table_entries_response_body.py +4 -0
  17. alibabacloud_vpc20160428/models/_describe_vpn_attachments_response_body.py +8 -0
  18. alibabacloud_vpc20160428/models/_describe_vpn_connection_response_body.py +8 -0
  19. alibabacloud_vpc20160428/models/_describe_vpn_connections_response_body.py +8 -0
  20. alibabacloud_vpc20160428/models/_describe_vpn_gateway_response_body.py +8 -0
  21. alibabacloud_vpc20160428/models/_describe_vpn_gateways_request.py +8 -0
  22. alibabacloud_vpc20160428/models/_describe_vpn_gateways_response_body.py +8 -0
  23. alibabacloud_vpc20160428/models/_get_nat_gateway_attribute_response_body.py +16 -0
  24. alibabacloud_vpc20160428/models/_get_nat_ip_attribute_request.py +99 -0
  25. alibabacloud_vpc20160428/models/_get_nat_ip_attribute_response.py +54 -0
  26. alibabacloud_vpc20160428/models/_get_nat_ip_attribute_response_body.py +109 -0
  27. alibabacloud_vpc20160428/models/_get_nat_ip_cidr_attribute_request.py +111 -0
  28. alibabacloud_vpc20160428/models/_get_nat_ip_cidr_attribute_response.py +54 -0
  29. alibabacloud_vpc20160428/models/_get_nat_ip_cidr_attribute_response_body.py +91 -0
  30. alibabacloud_vpc20160428/models/_get_route_target_group_response_body.py +9 -1
  31. alibabacloud_vpc20160428/models/_list_nat_ips_request.py +10 -0
  32. alibabacloud_vpc20160428/models/_list_nat_ips_response_body.py +1 -0
  33. alibabacloud_vpc20160428/models/_modify_forward_entry_request.py +5 -0
  34. alibabacloud_vpc20160428/models/_modify_nat_gateway_attribute_request.py +11 -7
  35. alibabacloud_vpc20160428/models/_modify_nat_gateway_attribute_shrink_request.py +9 -7
  36. alibabacloud_vpc20160428/models/_modify_snat_entry_request.py +8 -0
  37. {alibabacloud_vpc20160428-6.14.0.dist-info → alibabacloud_vpc20160428-6.15.0.dist-info}/METADATA +2 -2
  38. {alibabacloud_vpc20160428-6.14.0.dist-info → alibabacloud_vpc20160428-6.15.0.dist-info}/RECORD +41 -35
  39. {alibabacloud_vpc20160428-6.14.0.dist-info → alibabacloud_vpc20160428-6.15.0.dist-info}/LICENSE +0 -0
  40. {alibabacloud_vpc20160428-6.14.0.dist-info → alibabacloud_vpc20160428-6.15.0.dist-info}/WHEEL +0 -0
  41. {alibabacloud_vpc20160428-6.14.0.dist-info → alibabacloud_vpc20160428-6.15.0.dist-info}/top_level.txt +0 -0
@@ -1 +1 @@
1
- __version__ = '6.14.0'
1
+ __version__ = '6.15.0'
@@ -10716,6 +10716,8 @@ class Client(OpenApiClient):
10716
10716
  query['ResourceOwnerId'] = request.resource_owner_id
10717
10717
  if not DaraCore.is_null(request.tags):
10718
10718
  query['Tags'] = request.tags
10719
+ if not DaraCore.is_null(request.tunnel_bandwidth):
10720
+ query['TunnelBandwidth'] = request.tunnel_bandwidth
10719
10721
  body = {}
10720
10722
  body_flat = {}
10721
10723
  if not DaraCore.is_null(request.tunnel_options_specification):
@@ -10794,6 +10796,8 @@ class Client(OpenApiClient):
10794
10796
  query['ResourceOwnerId'] = request.resource_owner_id
10795
10797
  if not DaraCore.is_null(request.tags):
10796
10798
  query['Tags'] = request.tags
10799
+ if not DaraCore.is_null(request.tunnel_bandwidth):
10800
+ query['TunnelBandwidth'] = request.tunnel_bandwidth
10797
10801
  body = {}
10798
10802
  body_flat = {}
10799
10803
  if not DaraCore.is_null(request.tunnel_options_specification):
@@ -24870,6 +24874,8 @@ class Client(OpenApiClient):
24870
24874
  query = {}
24871
24875
  if not DaraCore.is_null(request.business_status):
24872
24876
  query['BusinessStatus'] = request.business_status
24877
+ if not DaraCore.is_null(request.gateway_type):
24878
+ query['GatewayType'] = request.gateway_type
24873
24879
  if not DaraCore.is_null(request.include_reservation_data):
24874
24880
  query['IncludeReservationData'] = request.include_reservation_data
24875
24881
  if not DaraCore.is_null(request.owner_account):
@@ -24924,6 +24930,8 @@ class Client(OpenApiClient):
24924
24930
  query = {}
24925
24931
  if not DaraCore.is_null(request.business_status):
24926
24932
  query['BusinessStatus'] = request.business_status
24933
+ if not DaraCore.is_null(request.gateway_type):
24934
+ query['GatewayType'] = request.gateway_type
24927
24935
  if not DaraCore.is_null(request.include_reservation_data):
24928
24936
  query['IncludeReservationData'] = request.include_reservation_data
24929
24937
  if not DaraCore.is_null(request.owner_account):
@@ -26997,6 +27005,214 @@ class Client(OpenApiClient):
26997
27005
  runtime = RuntimeOptions()
26998
27006
  return await self.get_nat_gateway_attribute_with_options_async(request, runtime)
26999
27007
 
27008
+ def get_nat_ip_attribute_with_options(
27009
+ self,
27010
+ request: main_models.GetNatIpAttributeRequest,
27011
+ runtime: RuntimeOptions,
27012
+ ) -> main_models.GetNatIpAttributeResponse:
27013
+ request.validate()
27014
+ query = {}
27015
+ if not DaraCore.is_null(request.client_token):
27016
+ query['ClientToken'] = request.client_token
27017
+ if not DaraCore.is_null(request.dry_run):
27018
+ query['DryRun'] = request.dry_run
27019
+ if not DaraCore.is_null(request.nat_ip_id):
27020
+ query['NatIpId'] = request.nat_ip_id
27021
+ if not DaraCore.is_null(request.owner_account):
27022
+ query['OwnerAccount'] = request.owner_account
27023
+ if not DaraCore.is_null(request.owner_id):
27024
+ query['OwnerId'] = request.owner_id
27025
+ if not DaraCore.is_null(request.region_id):
27026
+ query['RegionId'] = request.region_id
27027
+ if not DaraCore.is_null(request.region_id):
27028
+ query['RegionId'] = request.region_id
27029
+ if not DaraCore.is_null(request.resource_owner_account):
27030
+ query['ResourceOwnerAccount'] = request.resource_owner_account
27031
+ if not DaraCore.is_null(request.resource_owner_id):
27032
+ query['ResourceOwnerId'] = request.resource_owner_id
27033
+ req = open_api_util_models.OpenApiRequest(
27034
+ query = Utils.query(query)
27035
+ )
27036
+ params = open_api_util_models.Params(
27037
+ action = 'GetNatIpAttribute',
27038
+ version = '2016-04-28',
27039
+ protocol = 'HTTPS',
27040
+ pathname = '/',
27041
+ method = 'POST',
27042
+ auth_type = 'AK',
27043
+ style = 'RPC',
27044
+ req_body_type = 'formData',
27045
+ body_type = 'json'
27046
+ )
27047
+ return DaraCore.from_map(
27048
+ main_models.GetNatIpAttributeResponse(),
27049
+ self.call_api(params, req, runtime)
27050
+ )
27051
+
27052
+ async def get_nat_ip_attribute_with_options_async(
27053
+ self,
27054
+ request: main_models.GetNatIpAttributeRequest,
27055
+ runtime: RuntimeOptions,
27056
+ ) -> main_models.GetNatIpAttributeResponse:
27057
+ request.validate()
27058
+ query = {}
27059
+ if not DaraCore.is_null(request.client_token):
27060
+ query['ClientToken'] = request.client_token
27061
+ if not DaraCore.is_null(request.dry_run):
27062
+ query['DryRun'] = request.dry_run
27063
+ if not DaraCore.is_null(request.nat_ip_id):
27064
+ query['NatIpId'] = request.nat_ip_id
27065
+ if not DaraCore.is_null(request.owner_account):
27066
+ query['OwnerAccount'] = request.owner_account
27067
+ if not DaraCore.is_null(request.owner_id):
27068
+ query['OwnerId'] = request.owner_id
27069
+ if not DaraCore.is_null(request.region_id):
27070
+ query['RegionId'] = request.region_id
27071
+ if not DaraCore.is_null(request.region_id):
27072
+ query['RegionId'] = request.region_id
27073
+ if not DaraCore.is_null(request.resource_owner_account):
27074
+ query['ResourceOwnerAccount'] = request.resource_owner_account
27075
+ if not DaraCore.is_null(request.resource_owner_id):
27076
+ query['ResourceOwnerId'] = request.resource_owner_id
27077
+ req = open_api_util_models.OpenApiRequest(
27078
+ query = Utils.query(query)
27079
+ )
27080
+ params = open_api_util_models.Params(
27081
+ action = 'GetNatIpAttribute',
27082
+ version = '2016-04-28',
27083
+ protocol = 'HTTPS',
27084
+ pathname = '/',
27085
+ method = 'POST',
27086
+ auth_type = 'AK',
27087
+ style = 'RPC',
27088
+ req_body_type = 'formData',
27089
+ body_type = 'json'
27090
+ )
27091
+ return DaraCore.from_map(
27092
+ main_models.GetNatIpAttributeResponse(),
27093
+ await self.call_api_async(params, req, runtime)
27094
+ )
27095
+
27096
+ def get_nat_ip_attribute(
27097
+ self,
27098
+ request: main_models.GetNatIpAttributeRequest,
27099
+ ) -> main_models.GetNatIpAttributeResponse:
27100
+ runtime = RuntimeOptions()
27101
+ return self.get_nat_ip_attribute_with_options(request, runtime)
27102
+
27103
+ async def get_nat_ip_attribute_async(
27104
+ self,
27105
+ request: main_models.GetNatIpAttributeRequest,
27106
+ ) -> main_models.GetNatIpAttributeResponse:
27107
+ runtime = RuntimeOptions()
27108
+ return await self.get_nat_ip_attribute_with_options_async(request, runtime)
27109
+
27110
+ def get_nat_ip_cidr_attribute_with_options(
27111
+ self,
27112
+ request: main_models.GetNatIpCidrAttributeRequest,
27113
+ runtime: RuntimeOptions,
27114
+ ) -> main_models.GetNatIpCidrAttributeResponse:
27115
+ request.validate()
27116
+ query = {}
27117
+ if not DaraCore.is_null(request.client_token):
27118
+ query['ClientToken'] = request.client_token
27119
+ if not DaraCore.is_null(request.dry_run):
27120
+ query['DryRun'] = request.dry_run
27121
+ if not DaraCore.is_null(request.nat_gateway_id):
27122
+ query['NatGatewayId'] = request.nat_gateway_id
27123
+ if not DaraCore.is_null(request.nat_ip_cidr):
27124
+ query['NatIpCidr'] = request.nat_ip_cidr
27125
+ if not DaraCore.is_null(request.owner_account):
27126
+ query['OwnerAccount'] = request.owner_account
27127
+ if not DaraCore.is_null(request.owner_id):
27128
+ query['OwnerId'] = request.owner_id
27129
+ if not DaraCore.is_null(request.region_id):
27130
+ query['RegionId'] = request.region_id
27131
+ if not DaraCore.is_null(request.region_id):
27132
+ query['RegionId'] = request.region_id
27133
+ if not DaraCore.is_null(request.resource_owner_account):
27134
+ query['ResourceOwnerAccount'] = request.resource_owner_account
27135
+ if not DaraCore.is_null(request.resource_owner_id):
27136
+ query['ResourceOwnerId'] = request.resource_owner_id
27137
+ req = open_api_util_models.OpenApiRequest(
27138
+ query = Utils.query(query)
27139
+ )
27140
+ params = open_api_util_models.Params(
27141
+ action = 'GetNatIpCidrAttribute',
27142
+ version = '2016-04-28',
27143
+ protocol = 'HTTPS',
27144
+ pathname = '/',
27145
+ method = 'POST',
27146
+ auth_type = 'AK',
27147
+ style = 'RPC',
27148
+ req_body_type = 'formData',
27149
+ body_type = 'json'
27150
+ )
27151
+ return DaraCore.from_map(
27152
+ main_models.GetNatIpCidrAttributeResponse(),
27153
+ self.call_api(params, req, runtime)
27154
+ )
27155
+
27156
+ async def get_nat_ip_cidr_attribute_with_options_async(
27157
+ self,
27158
+ request: main_models.GetNatIpCidrAttributeRequest,
27159
+ runtime: RuntimeOptions,
27160
+ ) -> main_models.GetNatIpCidrAttributeResponse:
27161
+ request.validate()
27162
+ query = {}
27163
+ if not DaraCore.is_null(request.client_token):
27164
+ query['ClientToken'] = request.client_token
27165
+ if not DaraCore.is_null(request.dry_run):
27166
+ query['DryRun'] = request.dry_run
27167
+ if not DaraCore.is_null(request.nat_gateway_id):
27168
+ query['NatGatewayId'] = request.nat_gateway_id
27169
+ if not DaraCore.is_null(request.nat_ip_cidr):
27170
+ query['NatIpCidr'] = request.nat_ip_cidr
27171
+ if not DaraCore.is_null(request.owner_account):
27172
+ query['OwnerAccount'] = request.owner_account
27173
+ if not DaraCore.is_null(request.owner_id):
27174
+ query['OwnerId'] = request.owner_id
27175
+ if not DaraCore.is_null(request.region_id):
27176
+ query['RegionId'] = request.region_id
27177
+ if not DaraCore.is_null(request.region_id):
27178
+ query['RegionId'] = request.region_id
27179
+ if not DaraCore.is_null(request.resource_owner_account):
27180
+ query['ResourceOwnerAccount'] = request.resource_owner_account
27181
+ if not DaraCore.is_null(request.resource_owner_id):
27182
+ query['ResourceOwnerId'] = request.resource_owner_id
27183
+ req = open_api_util_models.OpenApiRequest(
27184
+ query = Utils.query(query)
27185
+ )
27186
+ params = open_api_util_models.Params(
27187
+ action = 'GetNatIpCidrAttribute',
27188
+ version = '2016-04-28',
27189
+ protocol = 'HTTPS',
27190
+ pathname = '/',
27191
+ method = 'POST',
27192
+ auth_type = 'AK',
27193
+ style = 'RPC',
27194
+ req_body_type = 'formData',
27195
+ body_type = 'json'
27196
+ )
27197
+ return DaraCore.from_map(
27198
+ main_models.GetNatIpCidrAttributeResponse(),
27199
+ await self.call_api_async(params, req, runtime)
27200
+ )
27201
+
27202
+ def get_nat_ip_cidr_attribute(
27203
+ self,
27204
+ request: main_models.GetNatIpCidrAttributeRequest,
27205
+ ) -> main_models.GetNatIpCidrAttributeResponse:
27206
+ runtime = RuntimeOptions()
27207
+ return self.get_nat_ip_cidr_attribute_with_options(request, runtime)
27208
+
27209
+ async def get_nat_ip_cidr_attribute_async(
27210
+ self,
27211
+ request: main_models.GetNatIpCidrAttributeRequest,
27212
+ ) -> main_models.GetNatIpCidrAttributeResponse:
27213
+ runtime = RuntimeOptions()
27214
+ return await self.get_nat_ip_cidr_attribute_with_options_async(request, runtime)
27215
+
27000
27216
  def get_physical_connection_service_status_with_options(
27001
27217
  self,
27002
27218
  request: main_models.GetPhysicalConnectionServiceStatusRequest,
@@ -29208,6 +29424,8 @@ class Client(OpenApiClient):
29208
29424
  query['DryRun'] = request.dry_run
29209
29425
  if not DaraCore.is_null(request.ip_origin):
29210
29426
  query['IpOrigin'] = request.ip_origin
29427
+ if not DaraCore.is_null(request.ipv_4prefix):
29428
+ query['Ipv4Prefix'] = request.ipv_4prefix
29211
29429
  if not DaraCore.is_null(request.max_results):
29212
29430
  query['MaxResults'] = request.max_results
29213
29431
  if not DaraCore.is_null(request.nat_gateway_id):
@@ -29266,6 +29484,8 @@ class Client(OpenApiClient):
29266
29484
  query['DryRun'] = request.dry_run
29267
29485
  if not DaraCore.is_null(request.ip_origin):
29268
29486
  query['IpOrigin'] = request.ip_origin
29487
+ if not DaraCore.is_null(request.ipv_4prefix):
29488
+ query['Ipv4Prefix'] = request.ipv_4prefix
29269
29489
  if not DaraCore.is_null(request.max_results):
29270
29490
  query['MaxResults'] = request.max_results
29271
29491
  if not DaraCore.is_null(request.nat_gateway_id):
@@ -750,6 +750,12 @@ from ._get_ipv_4gateway_attribute_response import GetIpv4GatewayAttributeRespons
750
750
  from ._get_nat_gateway_attribute_request import GetNatGatewayAttributeRequest
751
751
  from ._get_nat_gateway_attribute_response_body import GetNatGatewayAttributeResponseBody
752
752
  from ._get_nat_gateway_attribute_response import GetNatGatewayAttributeResponse
753
+ from ._get_nat_ip_attribute_request import GetNatIpAttributeRequest
754
+ from ._get_nat_ip_attribute_response_body import GetNatIpAttributeResponseBody
755
+ from ._get_nat_ip_attribute_response import GetNatIpAttributeResponse
756
+ from ._get_nat_ip_cidr_attribute_request import GetNatIpCidrAttributeRequest
757
+ from ._get_nat_ip_cidr_attribute_response_body import GetNatIpCidrAttributeResponseBody
758
+ from ._get_nat_ip_cidr_attribute_response import GetNatIpCidrAttributeResponse
753
759
  from ._get_physical_connection_service_status_request import GetPhysicalConnectionServiceStatusRequest
754
760
  from ._get_physical_connection_service_status_response_body import GetPhysicalConnectionServiceStatusResponseBody
755
761
  from ._get_physical_connection_service_status_response import GetPhysicalConnectionServiceStatusResponse
@@ -2471,6 +2477,12 @@ __all__ = [
2471
2477
  GetNatGatewayAttributeRequest,
2472
2478
  GetNatGatewayAttributeResponseBody,
2473
2479
  GetNatGatewayAttributeResponse,
2480
+ GetNatIpAttributeRequest,
2481
+ GetNatIpAttributeResponseBody,
2482
+ GetNatIpAttributeResponse,
2483
+ GetNatIpCidrAttributeRequest,
2484
+ GetNatIpCidrAttributeResponseBody,
2485
+ GetNatIpCidrAttributeResponse,
2474
2486
  GetPhysicalConnectionServiceStatusRequest,
2475
2487
  GetPhysicalConnectionServiceStatusResponseBody,
2476
2488
  GetPhysicalConnectionServiceStatusResponse,
@@ -29,6 +29,9 @@ class CreateForwardEntryRequest(DaraModel):
29
29
  #
30
30
  # > 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.
31
31
  self.client_token = client_token
32
+ # Indicates whether to perform a dry run of the request. Values:
33
+ # - **true**: Sends a check request without creating a DNAT entry. The checks include whether the AccessKey is valid, the RAM user\\"s authorization status, and if all required parameters are filled out. If any check fails, the corresponding error is returned. If all checks pass, an error code `DryRunOperation` is returned.
34
+ # - **false** (default): Sends a normal request. After passing the checks, it returns a 2xx HTTP status code and creates a DNAT entry.
32
35
  self.dry_run = dry_run
33
36
  # * The EIP that can be accessed over the Internet when you configure a DNAT entry for an Internet NAT gateway.
34
37
  # * The NAT IP address that can be accessed by external networks when you configure a DNAT entry for a VPC NAT gateway.
@@ -77,12 +80,10 @@ class CreateForwardEntryRequest(DaraModel):
77
80
  self.ip_protocol = ip_protocol
78
81
  self.owner_account = owner_account
79
82
  self.owner_id = owner_id
80
- # Specifies whether to remove limits on the port range. Valid values:
81
- #
82
- # * **true**
83
- # * **false** (default)
84
- #
85
- # > If a DNAT entry and an SNAT entry have the same public IP address, ou must specify a port that is larger that 1024, and set **PortBreak** to **true**.
83
+ # Whether to enable port breakthrough, with values:
84
+ # - **true**: Enable port breakthrough.
85
+ # - **false** (default): Do not enable port breakthrough.
86
+ # >When both DNAT and SNAT entries use the same public IP address, if you need to configure a port number greater than 1024, you must set **PortBreak** to **true**.
86
87
  self.port_break = port_break
87
88
  # The region ID of the NAT gateway.
88
89
  #
@@ -74,6 +74,7 @@ class CreateNatGatewayRequest(DaraModel):
74
74
  self.instance_charge_type = instance_charge_type
75
75
  # The metering method of the NAT gateway. Set the value to **PayByLcu**, which specifies the pay-by-CU metering method.
76
76
  self.internet_charge_type = internet_charge_type
77
+ # Create an IP prefix address segment for batch creation of NAT IPs. Please use the reserved and unallocated network segments in the VSwitch where the NAT is located.
77
78
  self.ipv_4prefix = ipv_4prefix
78
79
  # The name of the NAT gateway.
79
80
  #
@@ -81,6 +82,7 @@ class CreateNatGatewayRequest(DaraModel):
81
82
  #
82
83
  # If this parameter is not set, the system assigns a default name to the NAT gateway.
83
84
  self.name = name
85
+ # The private IP address occupied by the NAT gateway. Please use an unassigned IP from the subnet where the NAT is located. If left empty, an IP address will be randomly assigned.
84
86
  self.nat_ip = nat_ip
85
87
  # The type of NAT gateway. Set the value to **Enhanced**, which specifies enhanced NAT gateway.
86
88
  self.nat_type = nat_type
@@ -74,6 +74,7 @@ class CreateNatGatewayShrinkRequest(DaraModel):
74
74
  self.instance_charge_type = instance_charge_type
75
75
  # The metering method of the NAT gateway. Set the value to **PayByLcu**, which specifies the pay-by-CU metering method.
76
76
  self.internet_charge_type = internet_charge_type
77
+ # Create an IP prefix address segment for batch creation of NAT IPs. Please use the reserved and unallocated network segments in the VSwitch where the NAT is located.
77
78
  self.ipv_4prefix = ipv_4prefix
78
79
  # The name of the NAT gateway.
79
80
  #
@@ -81,6 +82,7 @@ class CreateNatGatewayShrinkRequest(DaraModel):
81
82
  #
82
83
  # If this parameter is not set, the system assigns a default name to the NAT gateway.
83
84
  self.name = name
85
+ # The private IP address occupied by the NAT gateway. Please use an unassigned IP from the subnet where the NAT is located. If left empty, an IP address will be randomly assigned.
84
86
  self.nat_ip = nat_ip
85
87
  # The type of NAT gateway. Set the value to **Enhanced**, which specifies enhanced NAT gateway.
86
88
  self.nat_type = nat_type
@@ -33,7 +33,9 @@ class CreateNatIpRequest(DaraModel):
33
33
  # * **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.
34
34
  # * **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.
35
35
  self.dry_run = dry_run
36
+ # The created IP prefix address segment must be within the reserved network segment of the switch where the NAT is located, and the reserved network segment cannot be occupied. The IP prefix mask must be /28.
36
37
  self.ipv_4prefix = ipv_4prefix
38
+ # The number of automatically assigned IP prefixes. These are randomly allocated from the unassigned reserved segments of the switch where the NAT is located. Value range: 1 to 10.
37
39
  self.ipv_4prefix_count = ipv_4prefix_count
38
40
  # The ID of the Virtual Private Cloud (VPC) NAT gateway for which you want to create the NAT IP address.
39
41
  #
@@ -16,11 +16,13 @@ class CreateNatIpResponseBody(DaraModel):
16
16
  nat_ips: List[main_models.CreateNatIpResponseBodyNatIps] = None,
17
17
  request_id: str = None,
18
18
  ):
19
+ # The IPv4Prefix returned by the previous API is obsolete.
19
20
  self.ipv_4prefix = ipv_4prefix
20
21
  # The NAT IP address.
21
22
  self.nat_ip = nat_ip
22
23
  # The ID of the NAT IP address.
23
24
  self.nat_ip_id = nat_ip_id
25
+ # The NatIp parameter that is returned after you create a NatIp. If you use IPv4Prefix to create a NatIp, the information about all NatIp is returned. We recommend that you use this parameter to obtain the information about a NatIp when you create a NatIp.
24
26
  self.nat_ips = nat_ips
25
27
  # The request ID.
26
28
  self.request_id = request_id
@@ -84,8 +86,11 @@ class CreateNatIpResponseBodyNatIps(DaraModel):
84
86
  nat_ip: str = None,
85
87
  nat_ip_id: str = None,
86
88
  ):
89
+ # The Ipv4Prefix of the created NatIpList list is returned when Ipv4Preix is created.
87
90
  self.ipv_4prefix = ipv_4prefix
91
+ # Returns the NatIp address of the created NatIpList list when Ipv4Preix is created.
88
92
  self.nat_ip = nat_ip
93
+ # Returns the NatIpId of the created NatIpList list when Ipv4Preix is created.
89
94
  self.nat_ip_id = nat_ip_id
90
95
 
91
96
  def validate(self):
@@ -30,6 +30,9 @@ class CreateSnatEntryRequest(DaraModel):
30
30
  #
31
31
  # **Description** 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.
32
32
  self.client_token = client_token
33
+ # Indicates whether to only precheck this request. Values:
34
+ # - **true**: Sends a precheck request and does not create an SNAT entry. The precheck includes verifying if the AccessKey is valid, checking the RAM user\\"s authorization, and ensuring that all required parameters are filled out. If the precheck fails, the corresponding error is returned. If the precheck passes, the error code `DryRunOperation` is returned.
35
+ # - **false** (default): Sends a normal request. After passing the precheck, it returns a 2xx HTTP status code and creates an SNAT entry.
33
36
  self.dry_run = dry_run
34
37
  # Specifies whether to enable EIP affinity. Valid values:
35
38
  #
@@ -40,6 +43,8 @@ class CreateSnatEntryRequest(DaraModel):
40
43
  #
41
44
  # **Description** After you enable EIP affinity, if multiple EIPs are associated with an SNAT entry, each client uses one EIP to access the Internet. If EIP affinity is disabled, each client uses a random EIP to access the Internet.
42
45
  self.eip_affinity = eip_affinity
46
+ # Elastic Network Interface ID.
47
+ # > The IPv4 address set of the elastic network interface will be used as the SNAT address.
43
48
  self.network_interface_id = network_interface_id
44
49
  self.owner_account = owner_account
45
50
  self.owner_id = owner_id
@@ -33,6 +33,7 @@ class CreateVpnAttachmentRequest(DaraModel):
33
33
  resource_owner_account: str = None,
34
34
  resource_owner_id: int = None,
35
35
  tags: List[main_models.CreateVpnAttachmentRequestTags] = None,
36
+ tunnel_bandwidth: str = None,
36
37
  tunnel_options_specification: List[main_models.CreateVpnAttachmentRequestTunnelOptionsSpecification] = None,
37
38
  ):
38
39
  # Specifies whether to automatically configure routes. Valid values:
@@ -203,6 +204,7 @@ class CreateVpnAttachmentRequest(DaraModel):
203
204
  #
204
205
  # Each tag key corresponds to one tag value. You can specify up to 20 tag values in each call.
205
206
  self.tags = tags
207
+ self.tunnel_bandwidth = tunnel_bandwidth
206
208
  # The tunnel configurations.
207
209
  #
208
210
  # * You can specify parameters in the **TunnelOptionsSpecification** array when you create an IPsec-VPN connection in dual tunnel mode.
@@ -295,6 +297,9 @@ class CreateVpnAttachmentRequest(DaraModel):
295
297
  for k1 in self.tags:
296
298
  result['Tags'].append(k1.to_map() if k1 else None)
297
299
 
300
+ if self.tunnel_bandwidth is not None:
301
+ result['TunnelBandwidth'] = self.tunnel_bandwidth
302
+
298
303
  result['TunnelOptionsSpecification'] = []
299
304
  if self.tunnel_options_specification is not None:
300
305
  for k1 in self.tunnel_options_specification:
@@ -376,6 +381,9 @@ class CreateVpnAttachmentRequest(DaraModel):
376
381
  temp_model = main_models.CreateVpnAttachmentRequestTags()
377
382
  self.tags.append(temp_model.from_map(k1))
378
383
 
384
+ if m.get('TunnelBandwidth') is not None:
385
+ self.tunnel_bandwidth = m.get('TunnelBandwidth')
386
+
379
387
  self.tunnel_options_specification = []
380
388
  if m.get('TunnelOptionsSpecification') is not None:
381
389
  for k1 in m.get('TunnelOptionsSpecification'):
@@ -29,7 +29,9 @@ class DeleteNatIpRequest(DaraModel):
29
29
  # * **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.
30
30
  # * **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.
31
31
  self.dry_run = dry_run
32
+ # The IP prefix address to be deleted.
32
33
  self.ipv_4prefix = ipv_4prefix
34
+ # The ID of the NAT gateway instance to which the IP prefix to be deleted belongs. Required when deleting an IP prefix.
33
35
  self.nat_gateway_id = nat_gateway_id
34
36
  # The ID of the NAT IP address that you want to delete.
35
37
  self.nat_ip_id = nat_ip_id
@@ -150,6 +150,7 @@ class DescribeNatGatewayAssociateNetworkInterfacesResponseBodyAssociateNetworkIn
150
150
  self.resource_owner_id = resource_owner_id
151
151
  # The type of the service resource.
152
152
  self.resource_type = resource_type
153
+ # VPC ID of the service resource
153
154
  self.resource_vpc_id = resource_vpc_id
154
155
  # The ID of the tunnel index.
155
156
  self.tunnel_index = tunnel_index
@@ -54,9 +54,9 @@ class DescribeNatGatewaysRequest(DaraModel):
54
54
  self.network_type = network_type
55
55
  self.owner_account = owner_account
56
56
  self.owner_id = owner_id
57
- # The number of the page to return. Default value: **1**.
57
+ # The page number. Default value: **1**.
58
58
  self.page_number = page_number
59
- # The number of entries to return on each page. Maximum value: **50**. Default value: **10**.
59
+ # The number of entries per page. Maximum value: **50**. Default value: **10**.
60
60
  self.page_size = page_size
61
61
  # The region ID of the NAT gateways that you want to query.
62
62
  #
@@ -144,6 +144,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(DaraModel):
144
144
  tags: main_models.DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayTags = None,
145
145
  vpc_id: str = None,
146
146
  ):
147
+ # Access mode for reverse access to VPC NAT gateway.
147
148
  self.access_mode = access_mode
148
149
  # Indicates whether automatic payment is enabled. Valid values:
149
150
  #
@@ -176,6 +177,9 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(DaraModel):
176
177
  #
177
178
  # > Note: If you use the NAT mode, the EIP occupies one private IP address on the vSwitch of the NAT gateway. Make sure that the vSwitch has sufficient private IP addresses. Otherwise, the NAT gateway fails to be associated with the EIP. In NAT mode, you can associate a NAT gateway with up to 50 EIPs.
178
179
  self.eip_bind_mode = eip_bind_mode
180
+ # Whether to enable session logging, with values:
181
+ # - **true**: Session logging is enabled.
182
+ # - **false**: Session logging is disabled.
179
183
  self.enable_session_log = enable_session_log
180
184
  # The time when the NAT gateway expires.
181
185
  self.expired_time = expired_time
@@ -197,6 +201,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGateway(DaraModel):
197
201
  self.internet_charge_type = internet_charge_type
198
202
  # The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.
199
203
  self.ip_lists = ip_lists
204
+ # List of NAT IP prefix address segments.
200
205
  self.ip_prefix_list = ip_prefix_list
201
206
  # The name of the NAT gateway.
202
207
  self.name = name
@@ -713,6 +718,7 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayIpPrefixListIpPrefixLi
713
718
  self,
714
719
  ip_prefix: str = None,
715
720
  ):
721
+ # NAT IP prefix address range
716
722
  self.ip_prefix = ip_prefix
717
723
 
718
724
  def validate(self):
@@ -902,7 +908,12 @@ class DescribeNatGatewaysResponseBodyNatGatewaysNatGatewayAccessMode(DaraModel):
902
908
  mode_value: str = None,
903
909
  tunnel_type: str = None,
904
910
  ):
911
+ # Access mode, with values:
912
+ # - **route**: Route mode.
913
+ # - **tunnel**: Tunnel mode.
905
914
  self.mode_value = mode_value
915
+ # Tunnel mode type:
916
+ # - **geneve**: Geneve type.
906
917
  self.tunnel_type = tunnel_type
907
918
 
908
919
  def validate(self):
@@ -29,6 +29,7 @@ class DescribeSnatTableEntriesRequest(DaraModel):
29
29
  #
30
30
  # > You must specify at least one of **SnatTableId** and **NatGatewayId**.
31
31
  self.nat_gateway_id = nat_gateway_id
32
+ # The ID of the elastic network interface to be queried.
32
33
  self.network_interface_ids = network_interface_ids
33
34
  self.owner_account = owner_account
34
35
  self.owner_id = owner_id
@@ -122,9 +122,13 @@ class DescribeSnatTableEntriesResponseBodySnatTableEntriesSnatTableEntry(DaraMod
122
122
  source_vswitch_id: str = None,
123
123
  status: str = None,
124
124
  ):
125
+ # Whether to enable IP affinity. Values:
126
+ # - **0**: Disable IP affinity. - **1**: Enable IP affinity.
127
+ # > After enabling the IP affinity switch, if an SNAT entry is bound to multiple EIPs or NAT IPs, the same client will use the same EIP or NAT IP for access. Otherwise, the client will randomly select from the bound EIPs or NAT IPs for access.
125
128
  self.eip_affinity = eip_affinity
126
129
  # The ID of the NAT gateway to which the SNAT entry belongs.
127
130
  self.nat_gateway_id = nat_gateway_id
131
+ # Elastic Network Interface ID
128
132
  self.network_interface_id = network_interface_id
129
133
  # The ID of the SNAT entry.
130
134
  self.snat_entry_id = snat_entry_id
@@ -91,6 +91,7 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachments(DaraModel):
91
91
  tags: List[main_models.DescribeVpnAttachmentsResponseBodyVpnAttachmentsTags] = None,
92
92
  transit_router_id: str = None,
93
93
  transit_router_name: str = None,
94
+ tunnel_bandwidth: str = None,
94
95
  ):
95
96
  # The type of resource that is associated with the IPsec-VPN connection. The value is set to **CEN**, which indicates that the IPsec-VPN connection is associated with a transit router.
96
97
  self.attach_type = attach_type
@@ -120,6 +121,7 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachments(DaraModel):
120
121
  self.transit_router_id = transit_router_id
121
122
  # The name of the transit router.
122
123
  self.transit_router_name = transit_router_name
124
+ self.tunnel_bandwidth = tunnel_bandwidth
123
125
 
124
126
  def validate(self):
125
127
  if self.tags:
@@ -161,6 +163,9 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachments(DaraModel):
161
163
  if self.transit_router_name is not None:
162
164
  result['TransitRouterName'] = self.transit_router_name
163
165
 
166
+ if self.tunnel_bandwidth is not None:
167
+ result['TunnelBandwidth'] = self.tunnel_bandwidth
168
+
164
169
  return result
165
170
 
166
171
  def from_map(self, m: dict = None):
@@ -195,6 +200,9 @@ class DescribeVpnAttachmentsResponseBodyVpnAttachments(DaraModel):
195
200
  if m.get('TransitRouterName') is not None:
196
201
  self.transit_router_name = m.get('TransitRouterName')
197
202
 
203
+ if m.get('TunnelBandwidth') is not None:
204
+ self.tunnel_bandwidth = m.get('TunnelBandwidth')
205
+
198
206
  return self
199
207
 
200
208
  class DescribeVpnAttachmentsResponseBodyVpnAttachmentsTags(DaraModel):
@@ -35,6 +35,7 @@ class DescribeVpnConnectionResponseBody(DaraModel):
35
35
  tags: main_models.DescribeVpnConnectionResponseBodyTags = None,
36
36
  transit_router_id: str = None,
37
37
  transit_router_name: str = None,
38
+ tunnel_bandwidth: str = None,
38
39
  tunnel_options_specification: main_models.DescribeVpnConnectionResponseBodyTunnelOptionsSpecification = None,
39
40
  vco_health_check: main_models.DescribeVpnConnectionResponseBodyVcoHealthCheck = None,
40
41
  vpn_bgp_config: main_models.DescribeVpnConnectionResponseBodyVpnBgpConfig = None,
@@ -142,6 +143,7 @@ class DescribeVpnConnectionResponseBody(DaraModel):
142
143
  self.transit_router_id = transit_router_id
143
144
  # The name of the transit router.
144
145
  self.transit_router_name = transit_router_name
146
+ self.tunnel_bandwidth = tunnel_bandwidth
145
147
  # The tunnel configurations of the IPsec-VPN connection.
146
148
  #
147
149
  # Parameters in **TunnelOptionsSpecification** are returned only if you query an IPsec-VPN connection in dual-tunnel mode.
@@ -253,6 +255,9 @@ class DescribeVpnConnectionResponseBody(DaraModel):
253
255
  if self.transit_router_name is not None:
254
256
  result['TransitRouterName'] = self.transit_router_name
255
257
 
258
+ if self.tunnel_bandwidth is not None:
259
+ result['TunnelBandwidth'] = self.tunnel_bandwidth
260
+
256
261
  if self.tunnel_options_specification is not None:
257
262
  result['TunnelOptionsSpecification'] = self.tunnel_options_specification.to_map()
258
263
 
@@ -353,6 +358,9 @@ class DescribeVpnConnectionResponseBody(DaraModel):
353
358
  if m.get('TransitRouterName') is not None:
354
359
  self.transit_router_name = m.get('TransitRouterName')
355
360
 
361
+ if m.get('TunnelBandwidth') is not None:
362
+ self.tunnel_bandwidth = m.get('TunnelBandwidth')
363
+
356
364
  if m.get('TunnelOptionsSpecification') is not None:
357
365
  temp_model = main_models.DescribeVpnConnectionResponseBodyTunnelOptionsSpecification()
358
366
  self.tunnel_options_specification = temp_model.from_map(m.get('TunnelOptionsSpecification'))