pulumi-alicloud 3.76.0a1743484854__py3-none-any.whl → 3.76.0a1744139894__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.

Potentially problematic release.


This version of pulumi-alicloud might be problematic. Click here for more details.

Files changed (237) hide show
  1. pulumi_alicloud/__init__.py +271 -4
  2. pulumi_alicloud/_inputs.py +20 -0
  3. pulumi_alicloud/actiontrail/global_events_storage_region.py +2 -2
  4. pulumi_alicloud/adb/db_cluster_lake_version.py +458 -49
  5. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +2 -2
  6. pulumi_alicloud/alb/server_group.py +2 -2
  7. pulumi_alicloud/alikafka/sasl_acl.py +7 -7
  8. pulumi_alicloud/apigateway/_inputs.py +134 -0
  9. pulumi_alicloud/apigateway/group.py +117 -5
  10. pulumi_alicloud/apigateway/instance.py +148 -7
  11. pulumi_alicloud/apigateway/outputs.py +107 -0
  12. pulumi_alicloud/arms/alert_contact.py +2 -2
  13. pulumi_alicloud/arms/alert_contact_group.py +2 -2
  14. pulumi_alicloud/arms/get_prometheus.py +2 -6
  15. pulumi_alicloud/arms/grafana_workspace.py +511 -69
  16. pulumi_alicloud/arms/outputs.py +18 -18
  17. pulumi_alicloud/arms/prometheus_alert_rule.py +2 -2
  18. pulumi_alicloud/arms/prometheus_monitoring.py +2 -2
  19. pulumi_alicloud/cdn/domain_new.py +2 -2
  20. pulumi_alicloud/cen/_inputs.py +6 -3
  21. pulumi_alicloud/cen/get_transit_router_vpn_attachments.py +131 -19
  22. pulumi_alicloud/cen/instance.py +101 -59
  23. pulumi_alicloud/cen/inter_region_traffic_qos_policy.py +126 -81
  24. pulumi_alicloud/cen/inter_region_traffic_qos_queue.py +93 -47
  25. pulumi_alicloud/cen/outputs.py +69 -26
  26. pulumi_alicloud/cen/transit_route_table_aggregation.py +171 -55
  27. pulumi_alicloud/cen/transit_router.py +127 -53
  28. pulumi_alicloud/cen/transit_router_cidr.py +53 -35
  29. pulumi_alicloud/cen/transit_router_ecr_attachment.py +2 -2
  30. pulumi_alicloud/cen/transit_router_peer_attachment.py +360 -143
  31. pulumi_alicloud/cen/transit_router_route_table_association.py +33 -43
  32. pulumi_alicloud/cen/transit_router_vpn_attachment.py +438 -109
  33. pulumi_alicloud/clickhouse/db_cluster.py +179 -6
  34. pulumi_alicloud/clickhouseenterprisedbcluster/__init__.py +14 -0
  35. pulumi_alicloud/clickhouseenterprisedbcluster/_inputs.py +167 -0
  36. pulumi_alicloud/clickhouseenterprisedbcluster/account.py +554 -0
  37. pulumi_alicloud/clickhouseenterprisedbcluster/backup_policy.py +407 -0
  38. pulumi_alicloud/clickhouseenterprisedbcluster/click_house_enterprise_db_cluster.py +641 -0
  39. pulumi_alicloud/clickhouseenterprisedbcluster/outputs.py +147 -0
  40. pulumi_alicloud/clickhouseenterprisedbcluster/public_endpoint.py +364 -0
  41. pulumi_alicloud/clickhouseenterprisedbcluster/security_ip.py +357 -0
  42. pulumi_alicloud/cloudsso/scim_server_credential.py +178 -11
  43. pulumi_alicloud/config/outputs.py +12 -0
  44. pulumi_alicloud/cs/__init__.py +1 -0
  45. pulumi_alicloud/cs/get_kubernetes_node_pools.py +147 -0
  46. pulumi_alicloud/cs/managed_kubernetes.py +127 -24
  47. pulumi_alicloud/cs/node_pool.py +42 -42
  48. pulumi_alicloud/cs/outputs.py +1782 -4
  49. pulumi_alicloud/databasefilesystem/service_linked_role.py +2 -2
  50. pulumi_alicloud/dataworks/data_source.py +2 -2
  51. pulumi_alicloud/dataworks/data_source_shared_rule.py +2 -2
  52. pulumi_alicloud/dataworks/di_alarm_rule.py +2 -2
  53. pulumi_alicloud/dataworks/di_job.py +2 -2
  54. pulumi_alicloud/dataworks/dw_resource_group.py +2 -2
  55. pulumi_alicloud/dataworks/network.py +2 -2
  56. pulumi_alicloud/dataworks/project.py +2 -2
  57. pulumi_alicloud/dataworks/project_member.py +2 -2
  58. pulumi_alicloud/dbs/backup_plan.py +2 -2
  59. pulumi_alicloud/ddos/bgp_policy.py +2 -2
  60. pulumi_alicloud/eais/__init__.py +2 -0
  61. pulumi_alicloud/eais/_inputs.py +75 -0
  62. pulumi_alicloud/eais/client_instance_attachment.py +408 -0
  63. pulumi_alicloud/eais/instance.py +365 -118
  64. pulumi_alicloud/eais/outputs.py +32 -0
  65. pulumi_alicloud/ebs/disk_replica_group.py +512 -30
  66. pulumi_alicloud/ebs/disk_replica_pair.py +443 -113
  67. pulumi_alicloud/ebs/enterprise_snapshot_policy.py +2 -2
  68. pulumi_alicloud/ebs/enterprise_snapshot_policy_attachment.py +2 -2
  69. pulumi_alicloud/ecp/instance.py +2 -2
  70. pulumi_alicloud/ecp/key_pair.py +4 -4
  71. pulumi_alicloud/ecs/_inputs.py +33 -0
  72. pulumi_alicloud/ecs/disk.py +1 -1
  73. pulumi_alicloud/ecs/ecs_disk.py +1 -1
  74. pulumi_alicloud/ecs/ecs_launch_template.py +23 -23
  75. pulumi_alicloud/ecs/instance.py +1 -1
  76. pulumi_alicloud/ecs/outputs.py +26 -2
  77. pulumi_alicloud/eflo/__init__.py +5 -0
  78. pulumi_alicloud/eflo/_inputs.py +1717 -0
  79. pulumi_alicloud/eflo/cluster.py +935 -0
  80. pulumi_alicloud/eflo/invocation.py +1114 -0
  81. pulumi_alicloud/eflo/node.py +1013 -0
  82. pulumi_alicloud/eflo/node_group.py +1101 -0
  83. pulumi_alicloud/eflo/outputs.py +1366 -0
  84. pulumi_alicloud/ens/eip_instance_attachment.py +2 -2
  85. pulumi_alicloud/ens/image.py +81 -34
  86. pulumi_alicloud/esa/__init__.py +4 -0
  87. pulumi_alicloud/esa/_inputs.py +640 -18
  88. pulumi_alicloud/esa/cache_reserve_instance.py +522 -0
  89. pulumi_alicloud/esa/cache_rule.py +193 -179
  90. pulumi_alicloud/esa/certificate.py +99 -92
  91. pulumi_alicloud/esa/compression_rule.py +42 -28
  92. pulumi_alicloud/esa/edge_container_app.py +972 -0
  93. pulumi_alicloud/esa/edge_container_app_record.py +376 -0
  94. pulumi_alicloud/esa/http_request_header_modification_rule.py +56 -42
  95. pulumi_alicloud/esa/http_response_header_modification_rule.py +35 -56
  96. pulumi_alicloud/esa/https_application_configuration.py +42 -28
  97. pulumi_alicloud/esa/https_basic_configuration.py +56 -42
  98. pulumi_alicloud/esa/image_transform.py +42 -28
  99. pulumi_alicloud/esa/kv_namespace.py +11 -11
  100. pulumi_alicloud/esa/list.py +28 -28
  101. pulumi_alicloud/esa/network_optimization.py +56 -126
  102. pulumi_alicloud/esa/origin_pool.py +19 -19
  103. pulumi_alicloud/esa/origin_rule.py +67 -39
  104. pulumi_alicloud/esa/outputs.py +536 -12
  105. pulumi_alicloud/esa/page.py +28 -49
  106. pulumi_alicloud/esa/rate_plan_instance.py +86 -159
  107. pulumi_alicloud/esa/redirect_rule.py +42 -28
  108. pulumi_alicloud/esa/rewrite_url_rule.py +49 -63
  109. pulumi_alicloud/esa/site.py +67 -123
  110. pulumi_alicloud/esa/site_delivery_task.py +841 -0
  111. pulumi_alicloud/esa/waiting_room.py +269 -319
  112. pulumi_alicloud/esa/waiting_room_event.py +291 -305
  113. pulumi_alicloud/esa/waiting_room_rule.py +46 -53
  114. pulumi_alicloud/ess/_inputs.py +155 -0
  115. pulumi_alicloud/ess/outputs.py +128 -0
  116. pulumi_alicloud/ess/scaling_group.py +237 -2
  117. pulumi_alicloud/ess/scaling_rule.py +143 -2
  118. pulumi_alicloud/expressconnect/router_grant_association.py +2 -2
  119. pulumi_alicloud/expressconnect/virtual_border_router.py +4 -4
  120. pulumi_alicloud/gpdb/hadoop_data_source.py +2 -2
  121. pulumi_alicloud/gpdb/jdbc_data_source.py +2 -2
  122. pulumi_alicloud/gpdb/remote_adb_data_source.py +6 -6
  123. pulumi_alicloud/gpdb/streaming_data_source.py +2 -2
  124. pulumi_alicloud/gpdb/streaming_job.py +2 -2
  125. pulumi_alicloud/ims/oidc_provider.py +24 -13
  126. pulumi_alicloud/kvstore/account.py +9 -9
  127. pulumi_alicloud/kvstore/connection.py +2 -2
  128. pulumi_alicloud/kvstore/get_instance_classes.py +2 -2
  129. pulumi_alicloud/kvstore/get_instance_engines.py +2 -2
  130. pulumi_alicloud/kvstore/instance.py +7 -7
  131. pulumi_alicloud/kvstore/outputs.py +2 -2
  132. pulumi_alicloud/live/caster.py +2 -2
  133. pulumi_alicloud/maxcompute/__init__.py +1 -0
  134. pulumi_alicloud/maxcompute/_inputs.py +232 -3
  135. pulumi_alicloud/maxcompute/outputs.py +183 -2
  136. pulumi_alicloud/maxcompute/project.py +2 -2
  137. pulumi_alicloud/maxcompute/quota.py +438 -0
  138. pulumi_alicloud/nas/mount_target.py +149 -54
  139. pulumi_alicloud/nlb/__init__.py +1 -0
  140. pulumi_alicloud/nlb/_inputs.py +43 -6
  141. pulumi_alicloud/nlb/load_balancer.py +212 -24
  142. pulumi_alicloud/nlb/load_balancer_zone_shifted_attachment.py +397 -0
  143. pulumi_alicloud/nlb/outputs.py +30 -4
  144. pulumi_alicloud/nlb/server_group_server_attachment.py +118 -65
  145. pulumi_alicloud/oss/__init__.py +1 -0
  146. pulumi_alicloud/oss/_inputs.py +20 -0
  147. pulumi_alicloud/oss/access_point.py +2 -2
  148. pulumi_alicloud/oss/bucket_cname.py +2 -2
  149. pulumi_alicloud/oss/bucket_cors.py +2 -2
  150. pulumi_alicloud/oss/bucket_style.py +402 -0
  151. pulumi_alicloud/oss/bucket_website.py +2 -2
  152. pulumi_alicloud/oss/outputs.py +14 -0
  153. pulumi_alicloud/pai/service.py +59 -67
  154. pulumi_alicloud/polardb/cluster.py +75 -28
  155. pulumi_alicloud/privatelink/vpc_endpoint_zone.py +1 -1
  156. pulumi_alicloud/pulumi-plugin.json +1 -1
  157. pulumi_alicloud/ram/__init__.py +3 -0
  158. pulumi_alicloud/ram/_inputs.py +9 -9
  159. pulumi_alicloud/ram/access_key.py +77 -31
  160. pulumi_alicloud/ram/account_alias.py +18 -45
  161. pulumi_alicloud/ram/get_system_policys.py +189 -0
  162. pulumi_alicloud/ram/group.py +156 -35
  163. pulumi_alicloud/ram/group_policy_attachment.py +51 -29
  164. pulumi_alicloud/ram/login_profile.py +92 -38
  165. pulumi_alicloud/ram/outputs.py +91 -6
  166. pulumi_alicloud/ram/password_policy.py +779 -0
  167. pulumi_alicloud/ram/policy.py +199 -88
  168. pulumi_alicloud/ram/role_policy_attachment.py +51 -29
  169. pulumi_alicloud/ram/saml_provider.py +44 -37
  170. pulumi_alicloud/ram/user_group_attachment.py +273 -0
  171. pulumi_alicloud/ram/user_policy_attachment.py +49 -27
  172. pulumi_alicloud/rds/__init__.py +1 -0
  173. pulumi_alicloud/rds/custom_disk.py +1053 -0
  174. pulumi_alicloud/rds/instance.py +110 -14
  175. pulumi_alicloud/redis/tair_instance.py +14 -14
  176. pulumi_alicloud/resourcemanager/__init__.py +1 -0
  177. pulumi_alicloud/resourcemanager/_inputs.py +53 -0
  178. pulumi_alicloud/resourcemanager/auto_grouping_rule.py +796 -0
  179. pulumi_alicloud/resourcemanager/outputs.py +50 -0
  180. pulumi_alicloud/resourcemanager/shared_resource.py +7 -0
  181. pulumi_alicloud/rocketmq/__init__.py +1 -1
  182. pulumi_alicloud/rocketmq/_inputs.py +146 -4
  183. pulumi_alicloud/rocketmq/account.py +452 -0
  184. pulumi_alicloud/rocketmq/acl.py +473 -47
  185. pulumi_alicloud/rocketmq/client_user.py +8 -2
  186. pulumi_alicloud/rocketmq/consumer_group.py +121 -24
  187. pulumi_alicloud/rocketmq/dnat_entry.py +8 -2
  188. pulumi_alicloud/rocketmq/outputs.py +113 -4
  189. pulumi_alicloud/rocketmq/qos.py +8 -2
  190. pulumi_alicloud/rocketmq/qos_car.py +10 -4
  191. pulumi_alicloud/rocketmq/qos_policy.py +6 -0
  192. pulumi_alicloud/rocketmq/rocket_mq_instance.py +136 -7
  193. pulumi_alicloud/rocketmq/rocket_mq_topic.py +121 -24
  194. pulumi_alicloud/rocketmq/snat_entry.py +8 -2
  195. pulumi_alicloud/sag/__init__.py +8 -0
  196. pulumi_alicloud/sag/acl.py +200 -0
  197. pulumi_alicloud/{rocketmq → sag}/acl_rule.py +7 -7
  198. pulumi_alicloud/sag/client_user.py +560 -0
  199. pulumi_alicloud/sag/dnat_entry.py +512 -0
  200. pulumi_alicloud/sag/get_acls.py +2 -2
  201. pulumi_alicloud/sag/qos.py +202 -0
  202. pulumi_alicloud/sag/qos_car.py +654 -0
  203. pulumi_alicloud/sag/qos_policy.py +659 -0
  204. pulumi_alicloud/sag/snat_entry.py +313 -0
  205. pulumi_alicloud/securitycenter/group.py +2 -2
  206. pulumi_alicloud/selectdb/db_instance.py +60 -11
  207. pulumi_alicloud/slb/server_group_server_attachment.py +101 -111
  208. pulumi_alicloud/sls/oss_export_sink.py +2 -2
  209. pulumi_alicloud/threatdetection/__init__.py +3 -0
  210. pulumi_alicloud/threatdetection/anti_brute_force_rule.py +41 -65
  211. pulumi_alicloud/threatdetection/asset_bind.py +209 -0
  212. pulumi_alicloud/threatdetection/asset_selection_config.py +258 -0
  213. pulumi_alicloud/threatdetection/instance.py +271 -54
  214. pulumi_alicloud/threatdetection/log_meta.py +351 -0
  215. pulumi_alicloud/vpc/__init__.py +1 -0
  216. pulumi_alicloud/vpc/_inputs.py +281 -0
  217. pulumi_alicloud/vpc/gateway_endpoint.py +85 -27
  218. pulumi_alicloud/vpc/get_ipam_ipam_pool_allocations.py +2 -2
  219. pulumi_alicloud/vpc/get_ipam_ipam_pool_cidrs.py +2 -2
  220. pulumi_alicloud/vpc/get_ipam_ipam_pools.py +2 -2
  221. pulumi_alicloud/vpc/get_ipam_ipam_scopes.py +2 -2
  222. pulumi_alicloud/vpc/get_ipam_ipams.py +2 -2
  223. pulumi_alicloud/vpc/ipv6_address.py +85 -5
  224. pulumi_alicloud/vpc/outputs.py +232 -0
  225. pulumi_alicloud/vpc/peer_connection.py +84 -42
  226. pulumi_alicloud/vpc/peer_connection_accepter.py +7 -21
  227. pulumi_alicloud/vpc/route_table.py +100 -45
  228. pulumi_alicloud/vpc/vpc_route_entry.py +724 -0
  229. pulumi_alicloud/vpn/_inputs.py +716 -71
  230. pulumi_alicloud/vpn/gateway_vpn_attachment.py +622 -128
  231. pulumi_alicloud/vpn/get_gateway_vpn_attachments.py +20 -63
  232. pulumi_alicloud/vpn/ipsec_server.py +2 -2
  233. pulumi_alicloud/vpn/outputs.py +1963 -998
  234. {pulumi_alicloud-3.76.0a1743484854.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/METADATA +1 -1
  235. {pulumi_alicloud-3.76.0a1743484854.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/RECORD +237 -197
  236. {pulumi_alicloud-3.76.0a1743484854.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/WHEEL +0 -0
  237. {pulumi_alicloud-3.76.0a1743484854.dist-info → pulumi_alicloud-3.76.0a1744139894.dist-info}/top_level.txt +0 -0
@@ -28,6 +28,10 @@ __all__ = [
28
28
  'GatewayVpnAttachmentHealthCheckConfig',
29
29
  'GatewayVpnAttachmentIkeConfig',
30
30
  'GatewayVpnAttachmentIpsecConfig',
31
+ 'GatewayVpnAttachmentTunnelOptionsSpecification',
32
+ 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig',
33
+ 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig',
34
+ 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig',
31
35
  'IpsecServerIkeConfig',
32
36
  'IpsecServerIpsecConfig',
33
37
  'GetConnectionsConnectionResult',
@@ -46,6 +50,10 @@ __all__ = [
46
50
  'GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult',
47
51
  'GetGatewayVpnAttachmentsAttachmentIkeConfigResult',
48
52
  'GetGatewayVpnAttachmentsAttachmentIpsecConfigResult',
53
+ 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationResult',
54
+ 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelBgpConfigResult',
55
+ 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIkeConfigResult',
56
+ 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIpsecConfigResult',
49
57
  'GetGatewayZonesZoneResult',
50
58
  'GetGatewaysGatewayResult',
51
59
  ]
@@ -928,12 +936,16 @@ class GatewayVpnAttachmentBgpConfig(dict):
928
936
  enable: Optional[bool] = None,
929
937
  local_asn: Optional[int] = None,
930
938
  local_bgp_ip: Optional[str] = None,
939
+ status: Optional[str] = None,
931
940
  tunnel_cidr: Optional[str] = None):
932
941
  """
933
- :param bool enable: Whether to enable BGP.
934
- :param int local_asn: The ASN on the Alibaba Cloud side.
935
- :param str local_bgp_ip: The BGP IP address on the Alibaba Cloud side.
936
- :param str tunnel_cidr: The CIDR block of the IPsec tunnel. The CIDR block belongs to 169.254.0.0/16. The mask of the CIDR block is 30 bits in length.
942
+ :param bool enable: Whether to enable the BGP function. Valid values: true or false (default).
943
+ :param int local_asn: The autonomous system number on the Alibaba Cloud side. The value range of autonomous system number is 1~4294967295. Default value: 45104
944
+ :param str local_bgp_ip: The BGP address on the Alibaba Cloud side. This address is an IP address in the IPsec tunnel network segment.
945
+ - Before adding the BGP configuration, we recommend that you understand the working mechanism and usage restrictions of the BGP dynamic routing function. For more information, see BGP Dynamic Routing Bulletin.
946
+ - We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. Please refer to the documentation for the private number range of the autonomous system number.
947
+ :param str status: The negotiation status of Tunnel.
948
+ :param str tunnel_cidr: IPsec tunnel network segment. This network segment must be a network segment with a mask length of 30 within 169.254.0.0/16
937
949
  """
938
950
  if enable is not None:
939
951
  pulumi.set(__self__, "enable", enable)
@@ -941,6 +953,8 @@ class GatewayVpnAttachmentBgpConfig(dict):
941
953
  pulumi.set(__self__, "local_asn", local_asn)
942
954
  if local_bgp_ip is not None:
943
955
  pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
956
+ if status is not None:
957
+ pulumi.set(__self__, "status", status)
944
958
  if tunnel_cidr is not None:
945
959
  pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
946
960
 
@@ -948,7 +962,7 @@ class GatewayVpnAttachmentBgpConfig(dict):
948
962
  @pulumi.getter
949
963
  def enable(self) -> Optional[bool]:
950
964
  """
951
- Whether to enable BGP.
965
+ Whether to enable the BGP function. Valid values: true or false (default).
952
966
  """
953
967
  return pulumi.get(self, "enable")
954
968
 
@@ -956,7 +970,7 @@ class GatewayVpnAttachmentBgpConfig(dict):
956
970
  @pulumi.getter(name="localAsn")
957
971
  def local_asn(self) -> Optional[int]:
958
972
  """
959
- The ASN on the Alibaba Cloud side.
973
+ The autonomous system number on the Alibaba Cloud side. The value range of autonomous system number is 1~4294967295. Default value: 45104
960
974
  """
961
975
  return pulumi.get(self, "local_asn")
962
976
 
@@ -964,15 +978,25 @@ class GatewayVpnAttachmentBgpConfig(dict):
964
978
  @pulumi.getter(name="localBgpIp")
965
979
  def local_bgp_ip(self) -> Optional[str]:
966
980
  """
967
- The BGP IP address on the Alibaba Cloud side.
981
+ The BGP address on the Alibaba Cloud side. This address is an IP address in the IPsec tunnel network segment.
982
+ - Before adding the BGP configuration, we recommend that you understand the working mechanism and usage restrictions of the BGP dynamic routing function. For more information, see BGP Dynamic Routing Bulletin.
983
+ - We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. Please refer to the documentation for the private number range of the autonomous system number.
968
984
  """
969
985
  return pulumi.get(self, "local_bgp_ip")
970
986
 
987
+ @property
988
+ @pulumi.getter
989
+ def status(self) -> Optional[str]:
990
+ """
991
+ The negotiation status of Tunnel.
992
+ """
993
+ return pulumi.get(self, "status")
994
+
971
995
  @property
972
996
  @pulumi.getter(name="tunnelCidr")
973
997
  def tunnel_cidr(self) -> Optional[str]:
974
998
  """
975
- The CIDR block of the IPsec tunnel. The CIDR block belongs to 169.254.0.0/16. The mask of the CIDR block is 30 bits in length.
999
+ IPsec tunnel network segment. This network segment must be a network segment with a mask length of 30 within 169.254.0.0/16
976
1000
  """
977
1001
  return pulumi.get(self, "tunnel_cidr")
978
1002
 
@@ -985,14 +1009,16 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
985
1009
  interval: Optional[int] = None,
986
1010
  policy: Optional[str] = None,
987
1011
  retry: Optional[int] = None,
988
- sip: Optional[str] = None):
1012
+ sip: Optional[str] = None,
1013
+ status: Optional[str] = None):
989
1014
  """
990
- :param str dip: The destination IP address that is used for health checks.
991
- :param bool enable: Specifies whether to enable health checks.
992
- :param int interval: The interval between two consecutive health checks. Unit: seconds.
993
- :param str policy: Whether to revoke the published route when the health check fails. Valid values: `revoke_route` or `reserve_route`.
994
- :param int retry: The maximum number of health check retries.
995
- :param str sip: The source IP address that is used for health checks.
1015
+ :param str dip: Target IP.
1016
+ :param bool enable: Whether health check is enabled:-`false`: not enabled. - `true`: enabled.
1017
+ :param int interval: The health check retry interval, in seconds.
1018
+ :param str policy: Whether to revoke the published route when the health check fails
1019
+ :param int retry: Number of retries for health check.
1020
+ :param str sip: SOURCE IP.
1021
+ :param str status: The negotiation status of Tunnel.
996
1022
  """
997
1023
  if dip is not None:
998
1024
  pulumi.set(__self__, "dip", dip)
@@ -1006,12 +1032,14 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1006
1032
  pulumi.set(__self__, "retry", retry)
1007
1033
  if sip is not None:
1008
1034
  pulumi.set(__self__, "sip", sip)
1035
+ if status is not None:
1036
+ pulumi.set(__self__, "status", status)
1009
1037
 
1010
1038
  @property
1011
1039
  @pulumi.getter
1012
1040
  def dip(self) -> Optional[str]:
1013
1041
  """
1014
- The destination IP address that is used for health checks.
1042
+ Target IP.
1015
1043
  """
1016
1044
  return pulumi.get(self, "dip")
1017
1045
 
@@ -1019,7 +1047,7 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1019
1047
  @pulumi.getter
1020
1048
  def enable(self) -> Optional[bool]:
1021
1049
  """
1022
- Specifies whether to enable health checks.
1050
+ Whether health check is enabled:-`false`: not enabled. - `true`: enabled.
1023
1051
  """
1024
1052
  return pulumi.get(self, "enable")
1025
1053
 
@@ -1027,7 +1055,7 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1027
1055
  @pulumi.getter
1028
1056
  def interval(self) -> Optional[int]:
1029
1057
  """
1030
- The interval between two consecutive health checks. Unit: seconds.
1058
+ The health check retry interval, in seconds.
1031
1059
  """
1032
1060
  return pulumi.get(self, "interval")
1033
1061
 
@@ -1035,7 +1063,7 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1035
1063
  @pulumi.getter
1036
1064
  def policy(self) -> Optional[str]:
1037
1065
  """
1038
- Whether to revoke the published route when the health check fails. Valid values: `revoke_route` or `reserve_route`.
1066
+ Whether to revoke the published route when the health check fails
1039
1067
  """
1040
1068
  return pulumi.get(self, "policy")
1041
1069
 
@@ -1043,7 +1071,7 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1043
1071
  @pulumi.getter
1044
1072
  def retry(self) -> Optional[int]:
1045
1073
  """
1046
- The maximum number of health check retries.
1074
+ Number of retries for health check.
1047
1075
  """
1048
1076
  return pulumi.get(self, "retry")
1049
1077
 
@@ -1051,10 +1079,18 @@ class GatewayVpnAttachmentHealthCheckConfig(dict):
1051
1079
  @pulumi.getter
1052
1080
  def sip(self) -> Optional[str]:
1053
1081
  """
1054
- The source IP address that is used for health checks.
1082
+ SOURCE IP.
1055
1083
  """
1056
1084
  return pulumi.get(self, "sip")
1057
1085
 
1086
+ @property
1087
+ @pulumi.getter
1088
+ def status(self) -> Optional[str]:
1089
+ """
1090
+ The negotiation status of Tunnel.
1091
+ """
1092
+ return pulumi.get(self, "status")
1093
+
1058
1094
 
1059
1095
  @pulumi.output_type
1060
1096
  class GatewayVpnAttachmentIkeConfig(dict):
@@ -1100,15 +1136,17 @@ class GatewayVpnAttachmentIkeConfig(dict):
1100
1136
  psk: Optional[str] = None,
1101
1137
  remote_id: Optional[str] = None):
1102
1138
  """
1103
- :param str ike_auth_alg: IKE authentication algorithm supports sha1 and MD5.
1104
- :param str ike_enc_alg: The encryption algorithm of phase-one negotiation. Valid value: aes | aes192 | aes256 | des | 3des. Default Valid value: aes.
1105
- :param int ike_lifetime: The SA lifecycle as the result of phase-one negotiation. The valid value of n is [0, 86400], the unit is second and the default value is 86400.
1106
- :param str ike_mode: The negotiation mode of IKE V1. Valid value: main (main mode) | aggressive (aggressive mode). Default value: `main`.
1107
- :param str ike_pfs: The Diffie-Hellman key exchange algorithm used by phase-one negotiation. Valid value: group1 | group2 | group5 | group14 | group24. Default value: group2
1108
- :param str ike_version: The version of the IKE protocol. Valid value: `ikev1`, `ikev2`. Default value: `ikev1`.
1109
- :param str local_id: The local ID, which supports the FQDN and IP formats. The current VPN gateway IP address is selected by default.
1110
- :param str psk: Used for authentication between the IPsec VPN gateway and the customer gateway.
1111
- :param str remote_id: The peer ID, which supports FQDN and IP formats. By default, the IP address of the currently selected user gateway.
1139
+ :param str ike_auth_alg: The authentication algorithm negotiated in the first stage. Valid values: md5, sha1, sha256, sha384, sha512. Default value: md5.
1140
+ :param str ike_enc_alg: The encryption algorithm that is used in Phase 1 negotiations. Valid values: aes, aes192, aes256, des, and 3des. Default value: aes.
1141
+ :param int ike_lifetime: The SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: 0 to 86400. Default value: 86400.
1142
+ :param str ike_mode: IKE mode, the negotiation mode. Valid values: main and aggressive. Default value: main.
1143
+ :param str ike_pfs: The Diffie-Hellman key exchange algorithm used in the first stage negotiation. Valid values: group1, group2, group5, or group14. Default value: group2.
1144
+ :param str ike_version: The version of the IKE protocol. Value: ikev1 or ikev2. Default value: ikev1.
1145
+ :param str local_id: The identifier on the Alibaba Cloud side of the IPsec connection. The length is limited to 100 characters. The default value is leftId-not-exist
1146
+ :param str psk: A pre-shared key for authentication between the VPN gateway and the local data center. The key length is 1~100 characters.
1147
+ - If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key.
1148
+ - 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.
1149
+ :param str remote_id: The identifier of the IPsec connection to the local data center. The length is limited to 100 characters. The default value is the IP address of the user gateway.
1112
1150
  """
1113
1151
  if ike_auth_alg is not None:
1114
1152
  pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
@@ -1133,7 +1171,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1133
1171
  @pulumi.getter(name="ikeAuthAlg")
1134
1172
  def ike_auth_alg(self) -> Optional[str]:
1135
1173
  """
1136
- IKE authentication algorithm supports sha1 and MD5.
1174
+ The authentication algorithm negotiated in the first stage. Valid values: md5, sha1, sha256, sha384, sha512. Default value: md5.
1137
1175
  """
1138
1176
  return pulumi.get(self, "ike_auth_alg")
1139
1177
 
@@ -1141,7 +1179,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1141
1179
  @pulumi.getter(name="ikeEncAlg")
1142
1180
  def ike_enc_alg(self) -> Optional[str]:
1143
1181
  """
1144
- The encryption algorithm of phase-one negotiation. Valid value: aes | aes192 | aes256 | des | 3des. Default Valid value: aes.
1182
+ The encryption algorithm that is used in Phase 1 negotiations. Valid values: aes, aes192, aes256, des, and 3des. Default value: aes.
1145
1183
  """
1146
1184
  return pulumi.get(self, "ike_enc_alg")
1147
1185
 
@@ -1149,7 +1187,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1149
1187
  @pulumi.getter(name="ikeLifetime")
1150
1188
  def ike_lifetime(self) -> Optional[int]:
1151
1189
  """
1152
- The SA lifecycle as the result of phase-one negotiation. The valid value of n is [0, 86400], the unit is second and the default value is 86400.
1190
+ The SA lifetime as a result of Phase 1 negotiations. Unit: seconds. Valid values: 0 to 86400. Default value: 86400.
1153
1191
  """
1154
1192
  return pulumi.get(self, "ike_lifetime")
1155
1193
 
@@ -1157,7 +1195,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1157
1195
  @pulumi.getter(name="ikeMode")
1158
1196
  def ike_mode(self) -> Optional[str]:
1159
1197
  """
1160
- The negotiation mode of IKE V1. Valid value: main (main mode) | aggressive (aggressive mode). Default value: `main`.
1198
+ IKE mode, the negotiation mode. Valid values: main and aggressive. Default value: main.
1161
1199
  """
1162
1200
  return pulumi.get(self, "ike_mode")
1163
1201
 
@@ -1165,7 +1203,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1165
1203
  @pulumi.getter(name="ikePfs")
1166
1204
  def ike_pfs(self) -> Optional[str]:
1167
1205
  """
1168
- The Diffie-Hellman key exchange algorithm used by phase-one negotiation. Valid value: group1 | group2 | group5 | group14 | group24. Default value: group2
1206
+ The Diffie-Hellman key exchange algorithm used in the first stage negotiation. Valid values: group1, group2, group5, or group14. Default value: group2.
1169
1207
  """
1170
1208
  return pulumi.get(self, "ike_pfs")
1171
1209
 
@@ -1173,7 +1211,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1173
1211
  @pulumi.getter(name="ikeVersion")
1174
1212
  def ike_version(self) -> Optional[str]:
1175
1213
  """
1176
- The version of the IKE protocol. Valid value: `ikev1`, `ikev2`. Default value: `ikev1`.
1214
+ The version of the IKE protocol. Value: ikev1 or ikev2. Default value: ikev1.
1177
1215
  """
1178
1216
  return pulumi.get(self, "ike_version")
1179
1217
 
@@ -1181,7 +1219,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1181
1219
  @pulumi.getter(name="localId")
1182
1220
  def local_id(self) -> Optional[str]:
1183
1221
  """
1184
- The local ID, which supports the FQDN and IP formats. The current VPN gateway IP address is selected by default.
1222
+ The identifier on the Alibaba Cloud side of the IPsec connection. The length is limited to 100 characters. The default value is leftId-not-exist
1185
1223
  """
1186
1224
  return pulumi.get(self, "local_id")
1187
1225
 
@@ -1189,7 +1227,9 @@ class GatewayVpnAttachmentIkeConfig(dict):
1189
1227
  @pulumi.getter
1190
1228
  def psk(self) -> Optional[str]:
1191
1229
  """
1192
- Used for authentication between the IPsec VPN gateway and the customer gateway.
1230
+ A pre-shared key for authentication between the VPN gateway and the local data center. The key length is 1~100 characters.
1231
+ - If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key.
1232
+ - 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.
1193
1233
  """
1194
1234
  return pulumi.get(self, "psk")
1195
1235
 
@@ -1197,7 +1237,7 @@ class GatewayVpnAttachmentIkeConfig(dict):
1197
1237
  @pulumi.getter(name="remoteId")
1198
1238
  def remote_id(self) -> Optional[str]:
1199
1239
  """
1200
- The peer ID, which supports FQDN and IP formats. By default, the IP address of the currently selected user gateway.
1240
+ The identifier of the IPsec connection to the local data center. The length is limited to 100 characters. The default value is the IP address of the user gateway.
1201
1241
  """
1202
1242
  return pulumi.get(self, "remote_id")
1203
1243
 
@@ -1233,10 +1273,10 @@ class GatewayVpnAttachmentIpsecConfig(dict):
1233
1273
  ipsec_lifetime: Optional[int] = None,
1234
1274
  ipsec_pfs: Optional[str] = None):
1235
1275
  """
1236
- :param str ipsec_auth_alg: The authentication algorithm of phase-two negotiation. Valid value: md5 | sha1 | sha256 | sha384 | sha512 |. Default value: sha1
1237
- :param str ipsec_enc_alg: The encryption algorithm of phase-two negotiation. Valid value: aes | aes192 | aes256 | des | 3des. Default value: aes
1238
- :param int ipsec_lifetime: The SA lifecycle as the result of phase-two negotiation. The valid value is [0, 86400], the unit is second and the default value is 86400.
1239
- :param str ipsec_pfs: The Diffie-Hellman key exchange algorithm used by phase-two negotiation. Valid value: group1 | group2 | group5 | group14 | group24| disabled. Default value: group2
1276
+ :param str ipsec_auth_alg: The authentication algorithm negotiated in the second stage. Valid values: md5, sha1, sha256, sha384, sha512. Default value: MD5.
1277
+ :param str ipsec_enc_alg: The encryption algorithm negotiated in the second stage. Valid values: aes, aes192, aes256, des, or 3des. Default value: aes.
1278
+ :param int ipsec_lifetime: The life cycle of SA negotiated in the second stage. Unit: seconds. Value range: 0~86400. Default value: 86400.
1279
+ :param str ipsec_pfs: Diffie-Hellman Key Exchange Algorithm Used in Second Stage Negotiation
1240
1280
  """
1241
1281
  if ipsec_auth_alg is not None:
1242
1282
  pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
@@ -1251,7 +1291,7 @@ class GatewayVpnAttachmentIpsecConfig(dict):
1251
1291
  @pulumi.getter(name="ipsecAuthAlg")
1252
1292
  def ipsec_auth_alg(self) -> Optional[str]:
1253
1293
  """
1254
- The authentication algorithm of phase-two negotiation. Valid value: md5 | sha1 | sha256 | sha384 | sha512 |. Default value: sha1
1294
+ The authentication algorithm negotiated in the second stage. Valid values: md5, sha1, sha256, sha384, sha512. Default value: MD5.
1255
1295
  """
1256
1296
  return pulumi.get(self, "ipsec_auth_alg")
1257
1297
 
@@ -1259,7 +1299,7 @@ class GatewayVpnAttachmentIpsecConfig(dict):
1259
1299
  @pulumi.getter(name="ipsecEncAlg")
1260
1300
  def ipsec_enc_alg(self) -> Optional[str]:
1261
1301
  """
1262
- The encryption algorithm of phase-two negotiation. Valid value: aes | aes192 | aes256 | des | 3des. Default value: aes
1302
+ The encryption algorithm negotiated in the second stage. Valid values: aes, aes192, aes256, des, or 3des. Default value: aes.
1263
1303
  """
1264
1304
  return pulumi.get(self, "ipsec_enc_alg")
1265
1305
 
@@ -1267,7 +1307,7 @@ class GatewayVpnAttachmentIpsecConfig(dict):
1267
1307
  @pulumi.getter(name="ipsecLifetime")
1268
1308
  def ipsec_lifetime(self) -> Optional[int]:
1269
1309
  """
1270
- The SA lifecycle as the result of phase-two negotiation. The valid value is [0, 86400], the unit is second and the default value is 86400.
1310
+ The life cycle of SA negotiated in the second stage. Unit: seconds. Value range: 0~86400. Default value: 86400.
1271
1311
  """
1272
1312
  return pulumi.get(self, "ipsec_lifetime")
1273
1313
 
@@ -1275,176 +1315,644 @@ class GatewayVpnAttachmentIpsecConfig(dict):
1275
1315
  @pulumi.getter(name="ipsecPfs")
1276
1316
  def ipsec_pfs(self) -> Optional[str]:
1277
1317
  """
1278
- The Diffie-Hellman key exchange algorithm used by phase-two negotiation. Valid value: group1 | group2 | group5 | group14 | group24| disabled. Default value: group2
1318
+ Diffie-Hellman Key Exchange Algorithm Used in Second Stage Negotiation
1279
1319
  """
1280
1320
  return pulumi.get(self, "ipsec_pfs")
1281
1321
 
1282
1322
 
1283
1323
  @pulumi.output_type
1284
- class IpsecServerIkeConfig(dict):
1324
+ class GatewayVpnAttachmentTunnelOptionsSpecification(dict):
1285
1325
  @staticmethod
1286
1326
  def __key_warning(key: str):
1287
1327
  suggest = None
1288
- if key == "ikeAuthAlg":
1289
- suggest = "ike_auth_alg"
1290
- elif key == "ikeEncAlg":
1291
- suggest = "ike_enc_alg"
1292
- elif key == "ikeLifetime":
1293
- suggest = "ike_lifetime"
1294
- elif key == "ikeMode":
1295
- suggest = "ike_mode"
1296
- elif key == "ikePfs":
1297
- suggest = "ike_pfs"
1298
- elif key == "ikeVersion":
1299
- suggest = "ike_version"
1300
- elif key == "localId":
1301
- suggest = "local_id"
1302
- elif key == "remoteId":
1303
- suggest = "remote_id"
1328
+ if key == "customerGatewayId":
1329
+ suggest = "customer_gateway_id"
1330
+ elif key == "tunnelIndex":
1331
+ suggest = "tunnel_index"
1332
+ elif key == "enableDpd":
1333
+ suggest = "enable_dpd"
1334
+ elif key == "enableNatTraversal":
1335
+ suggest = "enable_nat_traversal"
1336
+ elif key == "internetIp":
1337
+ suggest = "internet_ip"
1338
+ elif key == "tunnelBgpConfig":
1339
+ suggest = "tunnel_bgp_config"
1340
+ elif key == "tunnelId":
1341
+ suggest = "tunnel_id"
1342
+ elif key == "tunnelIkeConfig":
1343
+ suggest = "tunnel_ike_config"
1344
+ elif key == "tunnelIpsecConfig":
1345
+ suggest = "tunnel_ipsec_config"
1346
+ elif key == "zoneNo":
1347
+ suggest = "zone_no"
1304
1348
 
1305
1349
  if suggest:
1306
- pulumi.log.warn(f"Key '{key}' not found in IpsecServerIkeConfig. Access the value via the '{suggest}' property getter instead.")
1350
+ pulumi.log.warn(f"Key '{key}' not found in GatewayVpnAttachmentTunnelOptionsSpecification. Access the value via the '{suggest}' property getter instead.")
1307
1351
 
1308
1352
  def __getitem__(self, key: str) -> Any:
1309
- IpsecServerIkeConfig.__key_warning(key)
1353
+ GatewayVpnAttachmentTunnelOptionsSpecification.__key_warning(key)
1310
1354
  return super().__getitem__(key)
1311
1355
 
1312
1356
  def get(self, key: str, default = None) -> Any:
1313
- IpsecServerIkeConfig.__key_warning(key)
1357
+ GatewayVpnAttachmentTunnelOptionsSpecification.__key_warning(key)
1314
1358
  return super().get(key, default)
1315
1359
 
1316
1360
  def __init__(__self__, *,
1317
- ike_auth_alg: Optional[str] = None,
1318
- ike_enc_alg: Optional[str] = None,
1319
- ike_lifetime: Optional[int] = None,
1320
- ike_mode: Optional[str] = None,
1321
- ike_pfs: Optional[str] = None,
1322
- ike_version: Optional[str] = None,
1323
- local_id: Optional[str] = None,
1324
- remote_id: Optional[str] = None):
1361
+ customer_gateway_id: str,
1362
+ tunnel_index: int,
1363
+ enable_dpd: Optional[bool] = None,
1364
+ enable_nat_traversal: Optional[bool] = None,
1365
+ internet_ip: Optional[str] = None,
1366
+ role: Optional[str] = None,
1367
+ state: Optional[str] = None,
1368
+ status: Optional[str] = None,
1369
+ tunnel_bgp_config: Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig'] = None,
1370
+ tunnel_id: Optional[str] = None,
1371
+ tunnel_ike_config: Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig'] = None,
1372
+ tunnel_ipsec_config: Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig'] = None,
1373
+ zone_no: Optional[str] = None):
1325
1374
  """
1326
- :param str ike_auth_alg: The authentication algorithm that is used in Phase 1 negotiations. Default value: `sha1`.
1327
- :param str ike_enc_alg: The encryption algorithm that is used in Phase 1 negotiations. Default value: `aes`.
1328
- :param int ike_lifetime: IkeLifetime: the SA lifetime determined by Phase 1 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
1329
- :param str ike_mode: The IKE negotiation mode. Default value: `main`.
1330
- :param str ike_pfs: The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: `group2`.
1331
- :param str ike_version: The IKE version. Valid values: `ikev1` and `ikev2`. Default value: `ikev2`.
1332
- :param str local_id: The identifier of the IPsec server. The value can be a fully qualified domain name (FQDN) or an IP address. The default value is the public IP address of the VPN gateway.
1333
- :param str remote_id: The identifier of the customer gateway. The value can be an FQDN or an IP address. By default, this parameter is not specified.
1375
+ :param str customer_gateway_id: The ID of the user gateway associated with the tunnel.
1376
+
1377
+ > **NOTE:** This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
1378
+ :param int tunnel_index: The order in which the tunnel was created.
1379
+ :param bool enable_dpd: Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:
1380
+ :param bool enable_nat_traversal: Whether the NAT crossing function is enabled for the tunnel. Value:
1381
+ :param str internet_ip: The local internet IP in Tunnel.
1382
+ :param str role: The role of Tunnel.
1383
+ :param str state: The state of Tunnel.
1384
+ :param str status: The negotiation status of Tunnel.
1385
+ :param 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfigArgs' tunnel_bgp_config: Add the BGP configuration for the tunnel.
1386
+
1387
+ > **NOTE:** After you enable the BGP function for IPsec connections (that is, specify `EnableTunnelsBgp` as `true`), you must configure this parameter.
1388
+ See `tunnel_bgp_config` below.
1389
+ :param str tunnel_id: The tunnel ID of IPsec-VPN connection.
1390
+ :param 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs' tunnel_ike_config: Configuration information for the first phase negotiation. See `tunnel_ike_config` below.
1391
+ :param 'GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs' tunnel_ipsec_config: Configuration information for the second-stage negotiation. See `tunnel_ipsec_config` below.
1392
+ :param str zone_no: The zoneNo of tunnel.
1334
1393
  """
1335
- if ike_auth_alg is not None:
1336
- pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
1337
- if ike_enc_alg is not None:
1338
- pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
1339
- if ike_lifetime is not None:
1340
- pulumi.set(__self__, "ike_lifetime", ike_lifetime)
1341
- if ike_mode is not None:
1342
- pulumi.set(__self__, "ike_mode", ike_mode)
1343
- if ike_pfs is not None:
1344
- pulumi.set(__self__, "ike_pfs", ike_pfs)
1345
- if ike_version is not None:
1346
- pulumi.set(__self__, "ike_version", ike_version)
1347
- if local_id is not None:
1348
- pulumi.set(__self__, "local_id", local_id)
1349
- if remote_id is not None:
1350
- pulumi.set(__self__, "remote_id", remote_id)
1394
+ pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
1395
+ pulumi.set(__self__, "tunnel_index", tunnel_index)
1396
+ if enable_dpd is not None:
1397
+ pulumi.set(__self__, "enable_dpd", enable_dpd)
1398
+ if enable_nat_traversal is not None:
1399
+ pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
1400
+ if internet_ip is not None:
1401
+ pulumi.set(__self__, "internet_ip", internet_ip)
1402
+ if role is not None:
1403
+ pulumi.set(__self__, "role", role)
1404
+ if state is not None:
1405
+ pulumi.set(__self__, "state", state)
1406
+ if status is not None:
1407
+ pulumi.set(__self__, "status", status)
1408
+ if tunnel_bgp_config is not None:
1409
+ pulumi.set(__self__, "tunnel_bgp_config", tunnel_bgp_config)
1410
+ if tunnel_id is not None:
1411
+ pulumi.set(__self__, "tunnel_id", tunnel_id)
1412
+ if tunnel_ike_config is not None:
1413
+ pulumi.set(__self__, "tunnel_ike_config", tunnel_ike_config)
1414
+ if tunnel_ipsec_config is not None:
1415
+ pulumi.set(__self__, "tunnel_ipsec_config", tunnel_ipsec_config)
1416
+ if zone_no is not None:
1417
+ pulumi.set(__self__, "zone_no", zone_no)
1351
1418
 
1352
1419
  @property
1353
- @pulumi.getter(name="ikeAuthAlg")
1354
- def ike_auth_alg(self) -> Optional[str]:
1420
+ @pulumi.getter(name="customerGatewayId")
1421
+ def customer_gateway_id(self) -> str:
1355
1422
  """
1356
- The authentication algorithm that is used in Phase 1 negotiations. Default value: `sha1`.
1423
+ The ID of the user gateway associated with the tunnel.
1424
+
1425
+ > **NOTE:** This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
1357
1426
  """
1358
- return pulumi.get(self, "ike_auth_alg")
1427
+ return pulumi.get(self, "customer_gateway_id")
1359
1428
 
1360
1429
  @property
1361
- @pulumi.getter(name="ikeEncAlg")
1362
- def ike_enc_alg(self) -> Optional[str]:
1430
+ @pulumi.getter(name="tunnelIndex")
1431
+ def tunnel_index(self) -> int:
1363
1432
  """
1364
- The encryption algorithm that is used in Phase 1 negotiations. Default value: `aes`.
1433
+ The order in which the tunnel was created.
1365
1434
  """
1366
- return pulumi.get(self, "ike_enc_alg")
1435
+ return pulumi.get(self, "tunnel_index")
1367
1436
 
1368
1437
  @property
1369
- @pulumi.getter(name="ikeLifetime")
1370
- def ike_lifetime(self) -> Optional[int]:
1438
+ @pulumi.getter(name="enableDpd")
1439
+ def enable_dpd(self) -> Optional[bool]:
1371
1440
  """
1372
- IkeLifetime: the SA lifetime determined by Phase 1 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
1441
+ Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:
1373
1442
  """
1374
- return pulumi.get(self, "ike_lifetime")
1443
+ return pulumi.get(self, "enable_dpd")
1375
1444
 
1376
1445
  @property
1377
- @pulumi.getter(name="ikeMode")
1378
- def ike_mode(self) -> Optional[str]:
1446
+ @pulumi.getter(name="enableNatTraversal")
1447
+ def enable_nat_traversal(self) -> Optional[bool]:
1379
1448
  """
1380
- The IKE negotiation mode. Default value: `main`.
1449
+ Whether the NAT crossing function is enabled for the tunnel. Value:
1381
1450
  """
1382
- return pulumi.get(self, "ike_mode")
1451
+ return pulumi.get(self, "enable_nat_traversal")
1383
1452
 
1384
1453
  @property
1385
- @pulumi.getter(name="ikePfs")
1386
- def ike_pfs(self) -> Optional[str]:
1454
+ @pulumi.getter(name="internetIp")
1455
+ def internet_ip(self) -> Optional[str]:
1387
1456
  """
1388
- The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: `group2`.
1457
+ The local internet IP in Tunnel.
1389
1458
  """
1390
- return pulumi.get(self, "ike_pfs")
1459
+ return pulumi.get(self, "internet_ip")
1391
1460
 
1392
1461
  @property
1393
- @pulumi.getter(name="ikeVersion")
1394
- def ike_version(self) -> Optional[str]:
1462
+ @pulumi.getter
1463
+ def role(self) -> Optional[str]:
1395
1464
  """
1396
- The IKE version. Valid values: `ikev1` and `ikev2`. Default value: `ikev2`.
1465
+ The role of Tunnel.
1397
1466
  """
1398
- return pulumi.get(self, "ike_version")
1467
+ return pulumi.get(self, "role")
1399
1468
 
1400
1469
  @property
1401
- @pulumi.getter(name="localId")
1402
- def local_id(self) -> Optional[str]:
1470
+ @pulumi.getter
1471
+ def state(self) -> Optional[str]:
1403
1472
  """
1404
- The identifier of the IPsec server. The value can be a fully qualified domain name (FQDN) or an IP address. The default value is the public IP address of the VPN gateway.
1473
+ The state of Tunnel.
1405
1474
  """
1406
- return pulumi.get(self, "local_id")
1475
+ return pulumi.get(self, "state")
1407
1476
 
1408
1477
  @property
1409
- @pulumi.getter(name="remoteId")
1410
- def remote_id(self) -> Optional[str]:
1478
+ @pulumi.getter
1479
+ def status(self) -> Optional[str]:
1411
1480
  """
1412
- The identifier of the customer gateway. The value can be an FQDN or an IP address. By default, this parameter is not specified.
1481
+ The negotiation status of Tunnel.
1413
1482
  """
1414
- return pulumi.get(self, "remote_id")
1483
+ return pulumi.get(self, "status")
1484
+
1485
+ @property
1486
+ @pulumi.getter(name="tunnelBgpConfig")
1487
+ def tunnel_bgp_config(self) -> Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig']:
1488
+ """
1489
+ Add the BGP configuration for the tunnel.
1490
+
1491
+ > **NOTE:** After you enable the BGP function for IPsec connections (that is, specify `EnableTunnelsBgp` as `true`), you must configure this parameter.
1492
+ See `tunnel_bgp_config` below.
1493
+ """
1494
+ return pulumi.get(self, "tunnel_bgp_config")
1495
+
1496
+ @property
1497
+ @pulumi.getter(name="tunnelId")
1498
+ def tunnel_id(self) -> Optional[str]:
1499
+ """
1500
+ The tunnel ID of IPsec-VPN connection.
1501
+ """
1502
+ return pulumi.get(self, "tunnel_id")
1503
+
1504
+ @property
1505
+ @pulumi.getter(name="tunnelIkeConfig")
1506
+ def tunnel_ike_config(self) -> Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig']:
1507
+ """
1508
+ Configuration information for the first phase negotiation. See `tunnel_ike_config` below.
1509
+ """
1510
+ return pulumi.get(self, "tunnel_ike_config")
1511
+
1512
+ @property
1513
+ @pulumi.getter(name="tunnelIpsecConfig")
1514
+ def tunnel_ipsec_config(self) -> Optional['outputs.GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig']:
1515
+ """
1516
+ Configuration information for the second-stage negotiation. See `tunnel_ipsec_config` below.
1517
+ """
1518
+ return pulumi.get(self, "tunnel_ipsec_config")
1519
+
1520
+ @property
1521
+ @pulumi.getter(name="zoneNo")
1522
+ def zone_no(self) -> Optional[str]:
1523
+ """
1524
+ The zoneNo of tunnel.
1525
+ """
1526
+ return pulumi.get(self, "zone_no")
1415
1527
 
1416
1528
 
1417
1529
  @pulumi.output_type
1418
- class IpsecServerIpsecConfig(dict):
1530
+ class GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig(dict):
1419
1531
  @staticmethod
1420
1532
  def __key_warning(key: str):
1421
1533
  suggest = None
1422
- if key == "ipsecAuthAlg":
1423
- suggest = "ipsec_auth_alg"
1424
- elif key == "ipsecEncAlg":
1425
- suggest = "ipsec_enc_alg"
1426
- elif key == "ipsecLifetime":
1427
- suggest = "ipsec_lifetime"
1428
- elif key == "ipsecPfs":
1429
- suggest = "ipsec_pfs"
1534
+ if key == "bgpStatus":
1535
+ suggest = "bgp_status"
1536
+ elif key == "localAsn":
1537
+ suggest = "local_asn"
1538
+ elif key == "localBgpIp":
1539
+ suggest = "local_bgp_ip"
1540
+ elif key == "peerAsn":
1541
+ suggest = "peer_asn"
1542
+ elif key == "peerBgpIp":
1543
+ suggest = "peer_bgp_ip"
1544
+ elif key == "tunnelCidr":
1545
+ suggest = "tunnel_cidr"
1430
1546
 
1431
1547
  if suggest:
1432
- pulumi.log.warn(f"Key '{key}' not found in IpsecServerIpsecConfig. Access the value via the '{suggest}' property getter instead.")
1548
+ pulumi.log.warn(f"Key '{key}' not found in GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig. Access the value via the '{suggest}' property getter instead.")
1433
1549
 
1434
1550
  def __getitem__(self, key: str) -> Any:
1435
- IpsecServerIpsecConfig.__key_warning(key)
1551
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig.__key_warning(key)
1436
1552
  return super().__getitem__(key)
1437
1553
 
1438
1554
  def get(self, key: str, default = None) -> Any:
1439
- IpsecServerIpsecConfig.__key_warning(key)
1555
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelBgpConfig.__key_warning(key)
1440
1556
  return super().get(key, default)
1441
1557
 
1442
1558
  def __init__(__self__, *,
1443
- ipsec_auth_alg: Optional[str] = None,
1444
- ipsec_enc_alg: Optional[str] = None,
1445
- ipsec_lifetime: Optional[int] = None,
1446
- ipsec_pfs: Optional[str] = None):
1447
- """
1559
+ bgp_status: Optional[str] = None,
1560
+ local_asn: Optional[int] = None,
1561
+ local_bgp_ip: Optional[str] = None,
1562
+ peer_asn: Optional[str] = None,
1563
+ peer_bgp_ip: Optional[str] = None,
1564
+ tunnel_cidr: Optional[str] = None):
1565
+ """
1566
+ :param str bgp_status: BGP status.
1567
+ :param str peer_asn: Peer asn.
1568
+ :param str peer_bgp_ip: Peer bgp ip.
1569
+ """
1570
+ if bgp_status is not None:
1571
+ pulumi.set(__self__, "bgp_status", bgp_status)
1572
+ if local_asn is not None:
1573
+ pulumi.set(__self__, "local_asn", local_asn)
1574
+ if local_bgp_ip is not None:
1575
+ pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
1576
+ if peer_asn is not None:
1577
+ pulumi.set(__self__, "peer_asn", peer_asn)
1578
+ if peer_bgp_ip is not None:
1579
+ pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
1580
+ if tunnel_cidr is not None:
1581
+ pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
1582
+
1583
+ @property
1584
+ @pulumi.getter(name="bgpStatus")
1585
+ def bgp_status(self) -> Optional[str]:
1586
+ """
1587
+ BGP status.
1588
+ """
1589
+ return pulumi.get(self, "bgp_status")
1590
+
1591
+ @property
1592
+ @pulumi.getter(name="localAsn")
1593
+ def local_asn(self) -> Optional[int]:
1594
+ return pulumi.get(self, "local_asn")
1595
+
1596
+ @property
1597
+ @pulumi.getter(name="localBgpIp")
1598
+ def local_bgp_ip(self) -> Optional[str]:
1599
+ return pulumi.get(self, "local_bgp_ip")
1600
+
1601
+ @property
1602
+ @pulumi.getter(name="peerAsn")
1603
+ def peer_asn(self) -> Optional[str]:
1604
+ """
1605
+ Peer asn.
1606
+ """
1607
+ return pulumi.get(self, "peer_asn")
1608
+
1609
+ @property
1610
+ @pulumi.getter(name="peerBgpIp")
1611
+ def peer_bgp_ip(self) -> Optional[str]:
1612
+ """
1613
+ Peer bgp ip.
1614
+ """
1615
+ return pulumi.get(self, "peer_bgp_ip")
1616
+
1617
+ @property
1618
+ @pulumi.getter(name="tunnelCidr")
1619
+ def tunnel_cidr(self) -> Optional[str]:
1620
+ return pulumi.get(self, "tunnel_cidr")
1621
+
1622
+
1623
+ @pulumi.output_type
1624
+ class GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig(dict):
1625
+ @staticmethod
1626
+ def __key_warning(key: str):
1627
+ suggest = None
1628
+ if key == "ikeAuthAlg":
1629
+ suggest = "ike_auth_alg"
1630
+ elif key == "ikeEncAlg":
1631
+ suggest = "ike_enc_alg"
1632
+ elif key == "ikeLifetime":
1633
+ suggest = "ike_lifetime"
1634
+ elif key == "ikeMode":
1635
+ suggest = "ike_mode"
1636
+ elif key == "ikePfs":
1637
+ suggest = "ike_pfs"
1638
+ elif key == "ikeVersion":
1639
+ suggest = "ike_version"
1640
+ elif key == "localId":
1641
+ suggest = "local_id"
1642
+ elif key == "remoteId":
1643
+ suggest = "remote_id"
1644
+
1645
+ if suggest:
1646
+ pulumi.log.warn(f"Key '{key}' not found in GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig. Access the value via the '{suggest}' property getter instead.")
1647
+
1648
+ def __getitem__(self, key: str) -> Any:
1649
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig.__key_warning(key)
1650
+ return super().__getitem__(key)
1651
+
1652
+ def get(self, key: str, default = None) -> Any:
1653
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIkeConfig.__key_warning(key)
1654
+ return super().get(key, default)
1655
+
1656
+ def __init__(__self__, *,
1657
+ ike_auth_alg: Optional[str] = None,
1658
+ ike_enc_alg: Optional[str] = None,
1659
+ ike_lifetime: Optional[int] = None,
1660
+ ike_mode: Optional[str] = None,
1661
+ ike_pfs: Optional[str] = None,
1662
+ ike_version: Optional[str] = None,
1663
+ local_id: Optional[str] = None,
1664
+ psk: Optional[str] = None,
1665
+ remote_id: Optional[str] = None):
1666
+ if ike_auth_alg is not None:
1667
+ pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
1668
+ if ike_enc_alg is not None:
1669
+ pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
1670
+ if ike_lifetime is not None:
1671
+ pulumi.set(__self__, "ike_lifetime", ike_lifetime)
1672
+ if ike_mode is not None:
1673
+ pulumi.set(__self__, "ike_mode", ike_mode)
1674
+ if ike_pfs is not None:
1675
+ pulumi.set(__self__, "ike_pfs", ike_pfs)
1676
+ if ike_version is not None:
1677
+ pulumi.set(__self__, "ike_version", ike_version)
1678
+ if local_id is not None:
1679
+ pulumi.set(__self__, "local_id", local_id)
1680
+ if psk is not None:
1681
+ pulumi.set(__self__, "psk", psk)
1682
+ if remote_id is not None:
1683
+ pulumi.set(__self__, "remote_id", remote_id)
1684
+
1685
+ @property
1686
+ @pulumi.getter(name="ikeAuthAlg")
1687
+ def ike_auth_alg(self) -> Optional[str]:
1688
+ return pulumi.get(self, "ike_auth_alg")
1689
+
1690
+ @property
1691
+ @pulumi.getter(name="ikeEncAlg")
1692
+ def ike_enc_alg(self) -> Optional[str]:
1693
+ return pulumi.get(self, "ike_enc_alg")
1694
+
1695
+ @property
1696
+ @pulumi.getter(name="ikeLifetime")
1697
+ def ike_lifetime(self) -> Optional[int]:
1698
+ return pulumi.get(self, "ike_lifetime")
1699
+
1700
+ @property
1701
+ @pulumi.getter(name="ikeMode")
1702
+ def ike_mode(self) -> Optional[str]:
1703
+ return pulumi.get(self, "ike_mode")
1704
+
1705
+ @property
1706
+ @pulumi.getter(name="ikePfs")
1707
+ def ike_pfs(self) -> Optional[str]:
1708
+ return pulumi.get(self, "ike_pfs")
1709
+
1710
+ @property
1711
+ @pulumi.getter(name="ikeVersion")
1712
+ def ike_version(self) -> Optional[str]:
1713
+ return pulumi.get(self, "ike_version")
1714
+
1715
+ @property
1716
+ @pulumi.getter(name="localId")
1717
+ def local_id(self) -> Optional[str]:
1718
+ return pulumi.get(self, "local_id")
1719
+
1720
+ @property
1721
+ @pulumi.getter
1722
+ def psk(self) -> Optional[str]:
1723
+ return pulumi.get(self, "psk")
1724
+
1725
+ @property
1726
+ @pulumi.getter(name="remoteId")
1727
+ def remote_id(self) -> Optional[str]:
1728
+ return pulumi.get(self, "remote_id")
1729
+
1730
+
1731
+ @pulumi.output_type
1732
+ class GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig(dict):
1733
+ @staticmethod
1734
+ def __key_warning(key: str):
1735
+ suggest = None
1736
+ if key == "ipsecAuthAlg":
1737
+ suggest = "ipsec_auth_alg"
1738
+ elif key == "ipsecEncAlg":
1739
+ suggest = "ipsec_enc_alg"
1740
+ elif key == "ipsecLifetime":
1741
+ suggest = "ipsec_lifetime"
1742
+ elif key == "ipsecPfs":
1743
+ suggest = "ipsec_pfs"
1744
+
1745
+ if suggest:
1746
+ pulumi.log.warn(f"Key '{key}' not found in GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig. Access the value via the '{suggest}' property getter instead.")
1747
+
1748
+ def __getitem__(self, key: str) -> Any:
1749
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig.__key_warning(key)
1750
+ return super().__getitem__(key)
1751
+
1752
+ def get(self, key: str, default = None) -> Any:
1753
+ GatewayVpnAttachmentTunnelOptionsSpecificationTunnelIpsecConfig.__key_warning(key)
1754
+ return super().get(key, default)
1755
+
1756
+ def __init__(__self__, *,
1757
+ ipsec_auth_alg: Optional[str] = None,
1758
+ ipsec_enc_alg: Optional[str] = None,
1759
+ ipsec_lifetime: Optional[int] = None,
1760
+ ipsec_pfs: Optional[str] = None):
1761
+ if ipsec_auth_alg is not None:
1762
+ pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
1763
+ if ipsec_enc_alg is not None:
1764
+ pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
1765
+ if ipsec_lifetime is not None:
1766
+ pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
1767
+ if ipsec_pfs is not None:
1768
+ pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
1769
+
1770
+ @property
1771
+ @pulumi.getter(name="ipsecAuthAlg")
1772
+ def ipsec_auth_alg(self) -> Optional[str]:
1773
+ return pulumi.get(self, "ipsec_auth_alg")
1774
+
1775
+ @property
1776
+ @pulumi.getter(name="ipsecEncAlg")
1777
+ def ipsec_enc_alg(self) -> Optional[str]:
1778
+ return pulumi.get(self, "ipsec_enc_alg")
1779
+
1780
+ @property
1781
+ @pulumi.getter(name="ipsecLifetime")
1782
+ def ipsec_lifetime(self) -> Optional[int]:
1783
+ return pulumi.get(self, "ipsec_lifetime")
1784
+
1785
+ @property
1786
+ @pulumi.getter(name="ipsecPfs")
1787
+ def ipsec_pfs(self) -> Optional[str]:
1788
+ return pulumi.get(self, "ipsec_pfs")
1789
+
1790
+
1791
+ @pulumi.output_type
1792
+ class IpsecServerIkeConfig(dict):
1793
+ @staticmethod
1794
+ def __key_warning(key: str):
1795
+ suggest = None
1796
+ if key == "ikeAuthAlg":
1797
+ suggest = "ike_auth_alg"
1798
+ elif key == "ikeEncAlg":
1799
+ suggest = "ike_enc_alg"
1800
+ elif key == "ikeLifetime":
1801
+ suggest = "ike_lifetime"
1802
+ elif key == "ikeMode":
1803
+ suggest = "ike_mode"
1804
+ elif key == "ikePfs":
1805
+ suggest = "ike_pfs"
1806
+ elif key == "ikeVersion":
1807
+ suggest = "ike_version"
1808
+ elif key == "localId":
1809
+ suggest = "local_id"
1810
+ elif key == "remoteId":
1811
+ suggest = "remote_id"
1812
+
1813
+ if suggest:
1814
+ pulumi.log.warn(f"Key '{key}' not found in IpsecServerIkeConfig. Access the value via the '{suggest}' property getter instead.")
1815
+
1816
+ def __getitem__(self, key: str) -> Any:
1817
+ IpsecServerIkeConfig.__key_warning(key)
1818
+ return super().__getitem__(key)
1819
+
1820
+ def get(self, key: str, default = None) -> Any:
1821
+ IpsecServerIkeConfig.__key_warning(key)
1822
+ return super().get(key, default)
1823
+
1824
+ def __init__(__self__, *,
1825
+ ike_auth_alg: Optional[str] = None,
1826
+ ike_enc_alg: Optional[str] = None,
1827
+ ike_lifetime: Optional[int] = None,
1828
+ ike_mode: Optional[str] = None,
1829
+ ike_pfs: Optional[str] = None,
1830
+ ike_version: Optional[str] = None,
1831
+ local_id: Optional[str] = None,
1832
+ remote_id: Optional[str] = None):
1833
+ """
1834
+ :param str ike_auth_alg: The authentication algorithm that is used in Phase 1 negotiations. Default value: `sha1`.
1835
+ :param str ike_enc_alg: The encryption algorithm that is used in Phase 1 negotiations. Default value: `aes`.
1836
+ :param int ike_lifetime: IkeLifetime: the SA lifetime determined by Phase 1 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
1837
+ :param str ike_mode: The IKE negotiation mode. Default value: `main`.
1838
+ :param str ike_pfs: The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: `group2`.
1839
+ :param str ike_version: The IKE version. Valid values: `ikev1` and `ikev2`. Default value: `ikev2`.
1840
+ :param str local_id: The identifier of the IPsec server. The value can be a fully qualified domain name (FQDN) or an IP address. The default value is the public IP address of the VPN gateway.
1841
+ :param str remote_id: The identifier of the customer gateway. The value can be an FQDN or an IP address. By default, this parameter is not specified.
1842
+ """
1843
+ if ike_auth_alg is not None:
1844
+ pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
1845
+ if ike_enc_alg is not None:
1846
+ pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
1847
+ if ike_lifetime is not None:
1848
+ pulumi.set(__self__, "ike_lifetime", ike_lifetime)
1849
+ if ike_mode is not None:
1850
+ pulumi.set(__self__, "ike_mode", ike_mode)
1851
+ if ike_pfs is not None:
1852
+ pulumi.set(__self__, "ike_pfs", ike_pfs)
1853
+ if ike_version is not None:
1854
+ pulumi.set(__self__, "ike_version", ike_version)
1855
+ if local_id is not None:
1856
+ pulumi.set(__self__, "local_id", local_id)
1857
+ if remote_id is not None:
1858
+ pulumi.set(__self__, "remote_id", remote_id)
1859
+
1860
+ @property
1861
+ @pulumi.getter(name="ikeAuthAlg")
1862
+ def ike_auth_alg(self) -> Optional[str]:
1863
+ """
1864
+ The authentication algorithm that is used in Phase 1 negotiations. Default value: `sha1`.
1865
+ """
1866
+ return pulumi.get(self, "ike_auth_alg")
1867
+
1868
+ @property
1869
+ @pulumi.getter(name="ikeEncAlg")
1870
+ def ike_enc_alg(self) -> Optional[str]:
1871
+ """
1872
+ The encryption algorithm that is used in Phase 1 negotiations. Default value: `aes`.
1873
+ """
1874
+ return pulumi.get(self, "ike_enc_alg")
1875
+
1876
+ @property
1877
+ @pulumi.getter(name="ikeLifetime")
1878
+ def ike_lifetime(self) -> Optional[int]:
1879
+ """
1880
+ IkeLifetime: the SA lifetime determined by Phase 1 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
1881
+ """
1882
+ return pulumi.get(self, "ike_lifetime")
1883
+
1884
+ @property
1885
+ @pulumi.getter(name="ikeMode")
1886
+ def ike_mode(self) -> Optional[str]:
1887
+ """
1888
+ The IKE negotiation mode. Default value: `main`.
1889
+ """
1890
+ return pulumi.get(self, "ike_mode")
1891
+
1892
+ @property
1893
+ @pulumi.getter(name="ikePfs")
1894
+ def ike_pfs(self) -> Optional[str]:
1895
+ """
1896
+ The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: `group2`.
1897
+ """
1898
+ return pulumi.get(self, "ike_pfs")
1899
+
1900
+ @property
1901
+ @pulumi.getter(name="ikeVersion")
1902
+ def ike_version(self) -> Optional[str]:
1903
+ """
1904
+ The IKE version. Valid values: `ikev1` and `ikev2`. Default value: `ikev2`.
1905
+ """
1906
+ return pulumi.get(self, "ike_version")
1907
+
1908
+ @property
1909
+ @pulumi.getter(name="localId")
1910
+ def local_id(self) -> Optional[str]:
1911
+ """
1912
+ The identifier of the IPsec server. The value can be a fully qualified domain name (FQDN) or an IP address. The default value is the public IP address of the VPN gateway.
1913
+ """
1914
+ return pulumi.get(self, "local_id")
1915
+
1916
+ @property
1917
+ @pulumi.getter(name="remoteId")
1918
+ def remote_id(self) -> Optional[str]:
1919
+ """
1920
+ The identifier of the customer gateway. The value can be an FQDN or an IP address. By default, this parameter is not specified.
1921
+ """
1922
+ return pulumi.get(self, "remote_id")
1923
+
1924
+
1925
+ @pulumi.output_type
1926
+ class IpsecServerIpsecConfig(dict):
1927
+ @staticmethod
1928
+ def __key_warning(key: str):
1929
+ suggest = None
1930
+ if key == "ipsecAuthAlg":
1931
+ suggest = "ipsec_auth_alg"
1932
+ elif key == "ipsecEncAlg":
1933
+ suggest = "ipsec_enc_alg"
1934
+ elif key == "ipsecLifetime":
1935
+ suggest = "ipsec_lifetime"
1936
+ elif key == "ipsecPfs":
1937
+ suggest = "ipsec_pfs"
1938
+
1939
+ if suggest:
1940
+ pulumi.log.warn(f"Key '{key}' not found in IpsecServerIpsecConfig. Access the value via the '{suggest}' property getter instead.")
1941
+
1942
+ def __getitem__(self, key: str) -> Any:
1943
+ IpsecServerIpsecConfig.__key_warning(key)
1944
+ return super().__getitem__(key)
1945
+
1946
+ def get(self, key: str, default = None) -> Any:
1947
+ IpsecServerIpsecConfig.__key_warning(key)
1948
+ return super().get(key, default)
1949
+
1950
+ def __init__(__self__, *,
1951
+ ipsec_auth_alg: Optional[str] = None,
1952
+ ipsec_enc_alg: Optional[str] = None,
1953
+ ipsec_lifetime: Optional[int] = None,
1954
+ ipsec_pfs: Optional[str] = None):
1955
+ """
1448
1956
  :param str ipsec_auth_alg: The authentication algorithm that is used in Phase 2 negotiations. Default value: `sha1`.
1449
1957
  :param str ipsec_enc_alg: The encryption algorithm that is used in Phase 2 negotiations. Default value: `aes`.
1450
1958
  :param int ipsec_lifetime: The SA lifetime determined by Phase 2 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
@@ -1463,7 +1971,363 @@ class IpsecServerIpsecConfig(dict):
1463
1971
  @pulumi.getter(name="ipsecAuthAlg")
1464
1972
  def ipsec_auth_alg(self) -> Optional[str]:
1465
1973
  """
1466
- The authentication algorithm that is used in Phase 2 negotiations. Default value: `sha1`.
1974
+ The authentication algorithm that is used in Phase 2 negotiations. Default value: `sha1`.
1975
+ """
1976
+ return pulumi.get(self, "ipsec_auth_alg")
1977
+
1978
+ @property
1979
+ @pulumi.getter(name="ipsecEncAlg")
1980
+ def ipsec_enc_alg(self) -> Optional[str]:
1981
+ """
1982
+ The encryption algorithm that is used in Phase 2 negotiations. Default value: `aes`.
1983
+ """
1984
+ return pulumi.get(self, "ipsec_enc_alg")
1985
+
1986
+ @property
1987
+ @pulumi.getter(name="ipsecLifetime")
1988
+ def ipsec_lifetime(self) -> Optional[int]:
1989
+ """
1990
+ The SA lifetime determined by Phase 2 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
1991
+ """
1992
+ return pulumi.get(self, "ipsec_lifetime")
1993
+
1994
+ @property
1995
+ @pulumi.getter(name="ipsecPfs")
1996
+ def ipsec_pfs(self) -> Optional[str]:
1997
+ """
1998
+ Forwards packets of all protocols. The Diffie-Hellman key exchange algorithm used in Phase 2 negotiations. Default value: `group2`.
1999
+ """
2000
+ return pulumi.get(self, "ipsec_pfs")
2001
+
2002
+
2003
+ @pulumi.output_type
2004
+ class GetConnectionsConnectionResult(dict):
2005
+ def __init__(__self__, *,
2006
+ create_time: str,
2007
+ customer_gateway_id: str,
2008
+ effect_immediately: bool,
2009
+ enable_dpd: bool,
2010
+ enable_nat_traversal: bool,
2011
+ enable_tunnels_bgp: bool,
2012
+ id: str,
2013
+ local_subnet: str,
2014
+ name: str,
2015
+ remote_subnet: str,
2016
+ status: str,
2017
+ tunnel_options_specifications: Sequence['outputs.GetConnectionsConnectionTunnelOptionsSpecificationResult'],
2018
+ vpn_gateway_id: str,
2019
+ ike_configs: Optional[Sequence['outputs.GetConnectionsConnectionIkeConfigResult']] = None,
2020
+ ipsec_configs: Optional[Sequence['outputs.GetConnectionsConnectionIpsecConfigResult']] = None,
2021
+ vco_health_checks: Optional[Sequence['outputs.GetConnectionsConnectionVcoHealthCheckResult']] = None,
2022
+ vpn_bgp_configs: Optional[Sequence['outputs.GetConnectionsConnectionVpnBgpConfigResult']] = None):
2023
+ """
2024
+ :param str customer_gateway_id: Use the VPN customer gateway ID as the search key.
2025
+ :param bool enable_dpd: Wether enable Dpd detection.
2026
+ :param bool enable_nat_traversal: enable nat traversal.
2027
+ :param bool enable_tunnels_bgp: Enable tunnel bgp.
2028
+ :param str id: ID of the VPN connection.
2029
+ :param str local_subnet: The local subnet of the VPN connection.
2030
+ :param str name: The name of the VPN connection.
2031
+ :param str remote_subnet: The remote subnet of the VPN connection.
2032
+ :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2033
+ :param Sequence['GetConnectionsConnectionTunnelOptionsSpecificationArgs'] tunnel_options_specifications: The tunnel_options_specification supports the following:
2034
+ :param str vpn_gateway_id: Use the VPN gateway ID as the search key.
2035
+ :param Sequence['GetConnectionsConnectionIkeConfigArgs'] ike_configs: The ike_config mapping supports the following:
2036
+ :param Sequence['GetConnectionsConnectionIpsecConfigArgs'] ipsec_configs: The ipsec_config mapping supports the following:
2037
+ :param Sequence['GetConnectionsConnectionVpnBgpConfigArgs'] vpn_bgp_configs: The vpn_bgp_config mapping supports the following:
2038
+ """
2039
+ pulumi.set(__self__, "create_time", create_time)
2040
+ pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
2041
+ pulumi.set(__self__, "effect_immediately", effect_immediately)
2042
+ pulumi.set(__self__, "enable_dpd", enable_dpd)
2043
+ pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
2044
+ pulumi.set(__self__, "enable_tunnels_bgp", enable_tunnels_bgp)
2045
+ pulumi.set(__self__, "id", id)
2046
+ pulumi.set(__self__, "local_subnet", local_subnet)
2047
+ pulumi.set(__self__, "name", name)
2048
+ pulumi.set(__self__, "remote_subnet", remote_subnet)
2049
+ pulumi.set(__self__, "status", status)
2050
+ pulumi.set(__self__, "tunnel_options_specifications", tunnel_options_specifications)
2051
+ pulumi.set(__self__, "vpn_gateway_id", vpn_gateway_id)
2052
+ if ike_configs is not None:
2053
+ pulumi.set(__self__, "ike_configs", ike_configs)
2054
+ if ipsec_configs is not None:
2055
+ pulumi.set(__self__, "ipsec_configs", ipsec_configs)
2056
+ if vco_health_checks is not None:
2057
+ pulumi.set(__self__, "vco_health_checks", vco_health_checks)
2058
+ if vpn_bgp_configs is not None:
2059
+ pulumi.set(__self__, "vpn_bgp_configs", vpn_bgp_configs)
2060
+
2061
+ @property
2062
+ @pulumi.getter(name="createTime")
2063
+ def create_time(self) -> str:
2064
+ return pulumi.get(self, "create_time")
2065
+
2066
+ @property
2067
+ @pulumi.getter(name="customerGatewayId")
2068
+ def customer_gateway_id(self) -> str:
2069
+ """
2070
+ Use the VPN customer gateway ID as the search key.
2071
+ """
2072
+ return pulumi.get(self, "customer_gateway_id")
2073
+
2074
+ @property
2075
+ @pulumi.getter(name="effectImmediately")
2076
+ def effect_immediately(self) -> bool:
2077
+ return pulumi.get(self, "effect_immediately")
2078
+
2079
+ @property
2080
+ @pulumi.getter(name="enableDpd")
2081
+ def enable_dpd(self) -> bool:
2082
+ """
2083
+ Wether enable Dpd detection.
2084
+ """
2085
+ return pulumi.get(self, "enable_dpd")
2086
+
2087
+ @property
2088
+ @pulumi.getter(name="enableNatTraversal")
2089
+ def enable_nat_traversal(self) -> bool:
2090
+ """
2091
+ enable nat traversal.
2092
+ """
2093
+ return pulumi.get(self, "enable_nat_traversal")
2094
+
2095
+ @property
2096
+ @pulumi.getter(name="enableTunnelsBgp")
2097
+ def enable_tunnels_bgp(self) -> bool:
2098
+ """
2099
+ Enable tunnel bgp.
2100
+ """
2101
+ return pulumi.get(self, "enable_tunnels_bgp")
2102
+
2103
+ @property
2104
+ @pulumi.getter
2105
+ def id(self) -> str:
2106
+ """
2107
+ ID of the VPN connection.
2108
+ """
2109
+ return pulumi.get(self, "id")
2110
+
2111
+ @property
2112
+ @pulumi.getter(name="localSubnet")
2113
+ def local_subnet(self) -> str:
2114
+ """
2115
+ The local subnet of the VPN connection.
2116
+ """
2117
+ return pulumi.get(self, "local_subnet")
2118
+
2119
+ @property
2120
+ @pulumi.getter
2121
+ def name(self) -> str:
2122
+ """
2123
+ The name of the VPN connection.
2124
+ """
2125
+ return pulumi.get(self, "name")
2126
+
2127
+ @property
2128
+ @pulumi.getter(name="remoteSubnet")
2129
+ def remote_subnet(self) -> str:
2130
+ """
2131
+ The remote subnet of the VPN connection.
2132
+ """
2133
+ return pulumi.get(self, "remote_subnet")
2134
+
2135
+ @property
2136
+ @pulumi.getter
2137
+ def status(self) -> str:
2138
+ """
2139
+ The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2140
+ """
2141
+ return pulumi.get(self, "status")
2142
+
2143
+ @property
2144
+ @pulumi.getter(name="tunnelOptionsSpecifications")
2145
+ def tunnel_options_specifications(self) -> Sequence['outputs.GetConnectionsConnectionTunnelOptionsSpecificationResult']:
2146
+ """
2147
+ The tunnel_options_specification supports the following:
2148
+ """
2149
+ return pulumi.get(self, "tunnel_options_specifications")
2150
+
2151
+ @property
2152
+ @pulumi.getter(name="vpnGatewayId")
2153
+ def vpn_gateway_id(self) -> str:
2154
+ """
2155
+ Use the VPN gateway ID as the search key.
2156
+ """
2157
+ return pulumi.get(self, "vpn_gateway_id")
2158
+
2159
+ @property
2160
+ @pulumi.getter(name="ikeConfigs")
2161
+ def ike_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionIkeConfigResult']]:
2162
+ """
2163
+ The ike_config mapping supports the following:
2164
+ """
2165
+ return pulumi.get(self, "ike_configs")
2166
+
2167
+ @property
2168
+ @pulumi.getter(name="ipsecConfigs")
2169
+ def ipsec_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionIpsecConfigResult']]:
2170
+ """
2171
+ The ipsec_config mapping supports the following:
2172
+ """
2173
+ return pulumi.get(self, "ipsec_configs")
2174
+
2175
+ @property
2176
+ @pulumi.getter(name="vcoHealthChecks")
2177
+ def vco_health_checks(self) -> Optional[Sequence['outputs.GetConnectionsConnectionVcoHealthCheckResult']]:
2178
+ return pulumi.get(self, "vco_health_checks")
2179
+
2180
+ @property
2181
+ @pulumi.getter(name="vpnBgpConfigs")
2182
+ def vpn_bgp_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionVpnBgpConfigResult']]:
2183
+ """
2184
+ The vpn_bgp_config mapping supports the following:
2185
+ """
2186
+ return pulumi.get(self, "vpn_bgp_configs")
2187
+
2188
+
2189
+ @pulumi.output_type
2190
+ class GetConnectionsConnectionIkeConfigResult(dict):
2191
+ def __init__(__self__, *,
2192
+ ike_auth_alg: Optional[str] = None,
2193
+ ike_enc_alg: Optional[str] = None,
2194
+ ike_lifetime: Optional[int] = None,
2195
+ ike_local_id: Optional[str] = None,
2196
+ ike_mode: Optional[str] = None,
2197
+ ike_pfs: Optional[str] = None,
2198
+ ike_remote_id: Optional[str] = None,
2199
+ ike_version: Optional[str] = None,
2200
+ psk: Optional[str] = None):
2201
+ """
2202
+ :param str ike_auth_alg: IKE auth Algorithm.
2203
+ :param str ike_enc_alg: IKE encript algorithm.
2204
+ :param int ike_lifetime: IKE lifetime.
2205
+ :param str ike_local_id: The identification of the VPN gateway.
2206
+ :param str ike_mode: IKE Mode.
2207
+ :param str ike_pfs: DH Group.
2208
+ :param str ike_remote_id: The identification of the customer gateway.
2209
+ :param str ike_version: IKE Version.
2210
+ :param str psk: Preshared secret key.
2211
+ """
2212
+ if ike_auth_alg is not None:
2213
+ pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
2214
+ if ike_enc_alg is not None:
2215
+ pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
2216
+ if ike_lifetime is not None:
2217
+ pulumi.set(__self__, "ike_lifetime", ike_lifetime)
2218
+ if ike_local_id is not None:
2219
+ pulumi.set(__self__, "ike_local_id", ike_local_id)
2220
+ if ike_mode is not None:
2221
+ pulumi.set(__self__, "ike_mode", ike_mode)
2222
+ if ike_pfs is not None:
2223
+ pulumi.set(__self__, "ike_pfs", ike_pfs)
2224
+ if ike_remote_id is not None:
2225
+ pulumi.set(__self__, "ike_remote_id", ike_remote_id)
2226
+ if ike_version is not None:
2227
+ pulumi.set(__self__, "ike_version", ike_version)
2228
+ if psk is not None:
2229
+ pulumi.set(__self__, "psk", psk)
2230
+
2231
+ @property
2232
+ @pulumi.getter(name="ikeAuthAlg")
2233
+ def ike_auth_alg(self) -> Optional[str]:
2234
+ """
2235
+ IKE auth Algorithm.
2236
+ """
2237
+ return pulumi.get(self, "ike_auth_alg")
2238
+
2239
+ @property
2240
+ @pulumi.getter(name="ikeEncAlg")
2241
+ def ike_enc_alg(self) -> Optional[str]:
2242
+ """
2243
+ IKE encript algorithm.
2244
+ """
2245
+ return pulumi.get(self, "ike_enc_alg")
2246
+
2247
+ @property
2248
+ @pulumi.getter(name="ikeLifetime")
2249
+ def ike_lifetime(self) -> Optional[int]:
2250
+ """
2251
+ IKE lifetime.
2252
+ """
2253
+ return pulumi.get(self, "ike_lifetime")
2254
+
2255
+ @property
2256
+ @pulumi.getter(name="ikeLocalId")
2257
+ def ike_local_id(self) -> Optional[str]:
2258
+ """
2259
+ The identification of the VPN gateway.
2260
+ """
2261
+ return pulumi.get(self, "ike_local_id")
2262
+
2263
+ @property
2264
+ @pulumi.getter(name="ikeMode")
2265
+ def ike_mode(self) -> Optional[str]:
2266
+ """
2267
+ IKE Mode.
2268
+ """
2269
+ return pulumi.get(self, "ike_mode")
2270
+
2271
+ @property
2272
+ @pulumi.getter(name="ikePfs")
2273
+ def ike_pfs(self) -> Optional[str]:
2274
+ """
2275
+ DH Group.
2276
+ """
2277
+ return pulumi.get(self, "ike_pfs")
2278
+
2279
+ @property
2280
+ @pulumi.getter(name="ikeRemoteId")
2281
+ def ike_remote_id(self) -> Optional[str]:
2282
+ """
2283
+ The identification of the customer gateway.
2284
+ """
2285
+ return pulumi.get(self, "ike_remote_id")
2286
+
2287
+ @property
2288
+ @pulumi.getter(name="ikeVersion")
2289
+ def ike_version(self) -> Optional[str]:
2290
+ """
2291
+ IKE Version.
2292
+ """
2293
+ return pulumi.get(self, "ike_version")
2294
+
2295
+ @property
2296
+ @pulumi.getter
2297
+ def psk(self) -> Optional[str]:
2298
+ """
2299
+ Preshared secret key.
2300
+ """
2301
+ return pulumi.get(self, "psk")
2302
+
2303
+
2304
+ @pulumi.output_type
2305
+ class GetConnectionsConnectionIpsecConfigResult(dict):
2306
+ def __init__(__self__, *,
2307
+ ipsec_auth_alg: Optional[str] = None,
2308
+ ipsec_enc_alg: Optional[str] = None,
2309
+ ipsec_lifetime: Optional[int] = None,
2310
+ ipsec_pfs: Optional[str] = None):
2311
+ """
2312
+ :param str ipsec_auth_alg: IPsec Auth algorithm.
2313
+ :param str ipsec_enc_alg: IPsec Encript algorithm.
2314
+ :param int ipsec_lifetime: IPsec lifetime.
2315
+ :param str ipsec_pfs: DH Group.
2316
+ """
2317
+ if ipsec_auth_alg is not None:
2318
+ pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
2319
+ if ipsec_enc_alg is not None:
2320
+ pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
2321
+ if ipsec_lifetime is not None:
2322
+ pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
2323
+ if ipsec_pfs is not None:
2324
+ pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
2325
+
2326
+ @property
2327
+ @pulumi.getter(name="ipsecAuthAlg")
2328
+ def ipsec_auth_alg(self) -> Optional[str]:
2329
+ """
2330
+ IPsec Auth algorithm.
1467
2331
  """
1468
2332
  return pulumi.get(self, "ipsec_auth_alg")
1469
2333
 
@@ -1471,7 +2335,7 @@ class IpsecServerIpsecConfig(dict):
1471
2335
  @pulumi.getter(name="ipsecEncAlg")
1472
2336
  def ipsec_enc_alg(self) -> Optional[str]:
1473
2337
  """
1474
- The encryption algorithm that is used in Phase 2 negotiations. Default value: `aes`.
2338
+ IPsec Encript algorithm.
1475
2339
  """
1476
2340
  return pulumi.get(self, "ipsec_enc_alg")
1477
2341
 
@@ -1479,7 +2343,7 @@ class IpsecServerIpsecConfig(dict):
1479
2343
  @pulumi.getter(name="ipsecLifetime")
1480
2344
  def ipsec_lifetime(self) -> Optional[int]:
1481
2345
  """
1482
- The SA lifetime determined by Phase 2 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
2346
+ IPsec lifetime.
1483
2347
  """
1484
2348
  return pulumi.get(self, "ipsec_lifetime")
1485
2349
 
@@ -1487,73 +2351,48 @@ class IpsecServerIpsecConfig(dict):
1487
2351
  @pulumi.getter(name="ipsecPfs")
1488
2352
  def ipsec_pfs(self) -> Optional[str]:
1489
2353
  """
1490
- Forwards packets of all protocols. The Diffie-Hellman key exchange algorithm used in Phase 2 negotiations. Default value: `group2`.
2354
+ DH Group.
1491
2355
  """
1492
2356
  return pulumi.get(self, "ipsec_pfs")
1493
2357
 
1494
2358
 
1495
2359
  @pulumi.output_type
1496
- class GetConnectionsConnectionResult(dict):
2360
+ class GetConnectionsConnectionTunnelOptionsSpecificationResult(dict):
1497
2361
  def __init__(__self__, *,
1498
- create_time: str,
1499
2362
  customer_gateway_id: str,
1500
- effect_immediately: bool,
1501
2363
  enable_dpd: bool,
1502
2364
  enable_nat_traversal: bool,
1503
- enable_tunnels_bgp: bool,
1504
- id: str,
1505
- local_subnet: str,
1506
- name: str,
1507
- remote_subnet: str,
1508
- status: str,
1509
- tunnel_options_specifications: Sequence['outputs.GetConnectionsConnectionTunnelOptionsSpecificationResult'],
1510
- vpn_gateway_id: str,
1511
- ike_configs: Optional[Sequence['outputs.GetConnectionsConnectionIkeConfigResult']] = None,
1512
- ipsec_configs: Optional[Sequence['outputs.GetConnectionsConnectionIpsecConfigResult']] = None,
1513
- vco_health_checks: Optional[Sequence['outputs.GetConnectionsConnectionVcoHealthCheckResult']] = None,
1514
- vpn_bgp_configs: Optional[Sequence['outputs.GetConnectionsConnectionVpnBgpConfigResult']] = None):
2365
+ internet_ip: str,
2366
+ role: str,
2367
+ state: str,
2368
+ status: str,
2369
+ tunnel_bgp_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult',
2370
+ tunnel_id: str,
2371
+ tunnel_ike_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult',
2372
+ tunnel_ipsec_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult',
2373
+ zone_no: str):
1515
2374
  """
1516
2375
  :param str customer_gateway_id: Use the VPN customer gateway ID as the search key.
1517
2376
  :param bool enable_dpd: Wether enable Dpd detection.
1518
2377
  :param bool enable_nat_traversal: enable nat traversal.
1519
- :param bool enable_tunnels_bgp: Enable tunnel bgp.
1520
- :param str id: ID of the VPN connection.
1521
- :param str local_subnet: The local subnet of the VPN connection.
1522
- :param str name: The name of the VPN connection.
1523
- :param str remote_subnet: The remote subnet of the VPN connection.
2378
+ :param str role: The role of Tunnel.
1524
2379
  :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
1525
- :param Sequence['GetConnectionsConnectionTunnelOptionsSpecificationArgs'] tunnel_options_specifications: The tunnel_options_specification supports the following:
1526
- :param str vpn_gateway_id: Use the VPN gateway ID as the search key.
1527
- :param Sequence['GetConnectionsConnectionIkeConfigArgs'] ike_configs: The ike_config mapping supports the following:
1528
- :param Sequence['GetConnectionsConnectionIpsecConfigArgs'] ipsec_configs: The ipsec_config mapping supports the following:
1529
- :param Sequence['GetConnectionsConnectionVpnBgpConfigArgs'] vpn_bgp_configs: The vpn_bgp_config mapping supports the following:
2380
+ :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs' tunnel_bgp_config: The bgp config of Tunnel.
2381
+ :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs' tunnel_ike_config: The configuration of Phase 1 negotiations in Tunnel.
2382
+ :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs' tunnel_ipsec_config: IPsec configuration in Tunnel.
1530
2383
  """
1531
- pulumi.set(__self__, "create_time", create_time)
1532
2384
  pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
1533
- pulumi.set(__self__, "effect_immediately", effect_immediately)
1534
2385
  pulumi.set(__self__, "enable_dpd", enable_dpd)
1535
2386
  pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
1536
- pulumi.set(__self__, "enable_tunnels_bgp", enable_tunnels_bgp)
1537
- pulumi.set(__self__, "id", id)
1538
- pulumi.set(__self__, "local_subnet", local_subnet)
1539
- pulumi.set(__self__, "name", name)
1540
- pulumi.set(__self__, "remote_subnet", remote_subnet)
2387
+ pulumi.set(__self__, "internet_ip", internet_ip)
2388
+ pulumi.set(__self__, "role", role)
2389
+ pulumi.set(__self__, "state", state)
1541
2390
  pulumi.set(__self__, "status", status)
1542
- pulumi.set(__self__, "tunnel_options_specifications", tunnel_options_specifications)
1543
- pulumi.set(__self__, "vpn_gateway_id", vpn_gateway_id)
1544
- if ike_configs is not None:
1545
- pulumi.set(__self__, "ike_configs", ike_configs)
1546
- if ipsec_configs is not None:
1547
- pulumi.set(__self__, "ipsec_configs", ipsec_configs)
1548
- if vco_health_checks is not None:
1549
- pulumi.set(__self__, "vco_health_checks", vco_health_checks)
1550
- if vpn_bgp_configs is not None:
1551
- pulumi.set(__self__, "vpn_bgp_configs", vpn_bgp_configs)
1552
-
1553
- @property
1554
- @pulumi.getter(name="createTime")
1555
- def create_time(self) -> str:
1556
- return pulumi.get(self, "create_time")
2391
+ pulumi.set(__self__, "tunnel_bgp_config", tunnel_bgp_config)
2392
+ pulumi.set(__self__, "tunnel_id", tunnel_id)
2393
+ pulumi.set(__self__, "tunnel_ike_config", tunnel_ike_config)
2394
+ pulumi.set(__self__, "tunnel_ipsec_config", tunnel_ipsec_config)
2395
+ pulumi.set(__self__, "zone_no", zone_no)
1557
2396
 
1558
2397
  @property
1559
2398
  @pulumi.getter(name="customerGatewayId")
@@ -1563,11 +2402,6 @@ class GetConnectionsConnectionResult(dict):
1563
2402
  """
1564
2403
  return pulumi.get(self, "customer_gateway_id")
1565
2404
 
1566
- @property
1567
- @pulumi.getter(name="effectImmediately")
1568
- def effect_immediately(self) -> bool:
1569
- return pulumi.get(self, "effect_immediately")
1570
-
1571
2405
  @property
1572
2406
  @pulumi.getter(name="enableDpd")
1573
2407
  def enable_dpd(self) -> bool:
@@ -1585,144 +2419,171 @@ class GetConnectionsConnectionResult(dict):
1585
2419
  return pulumi.get(self, "enable_nat_traversal")
1586
2420
 
1587
2421
  @property
1588
- @pulumi.getter(name="enableTunnelsBgp")
1589
- def enable_tunnels_bgp(self) -> bool:
1590
- """
1591
- Enable tunnel bgp.
1592
- """
1593
- return pulumi.get(self, "enable_tunnels_bgp")
2422
+ @pulumi.getter(name="internetIp")
2423
+ def internet_ip(self) -> str:
2424
+ return pulumi.get(self, "internet_ip")
1594
2425
 
1595
2426
  @property
1596
2427
  @pulumi.getter
1597
- def id(self) -> str:
2428
+ def role(self) -> str:
1598
2429
  """
1599
- ID of the VPN connection.
2430
+ The role of Tunnel.
1600
2431
  """
1601
- return pulumi.get(self, "id")
2432
+ return pulumi.get(self, "role")
1602
2433
 
1603
2434
  @property
1604
- @pulumi.getter(name="localSubnet")
1605
- def local_subnet(self) -> str:
2435
+ @pulumi.getter
2436
+ def state(self) -> str:
2437
+ return pulumi.get(self, "state")
2438
+
2439
+ @property
2440
+ @pulumi.getter
2441
+ def status(self) -> str:
1606
2442
  """
1607
- The local subnet of the VPN connection.
2443
+ The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
1608
2444
  """
1609
- return pulumi.get(self, "local_subnet")
2445
+ return pulumi.get(self, "status")
1610
2446
 
1611
2447
  @property
1612
- @pulumi.getter
1613
- def name(self) -> str:
2448
+ @pulumi.getter(name="tunnelBgpConfig")
2449
+ def tunnel_bgp_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult':
1614
2450
  """
1615
- The name of the VPN connection.
2451
+ The bgp config of Tunnel.
1616
2452
  """
1617
- return pulumi.get(self, "name")
2453
+ return pulumi.get(self, "tunnel_bgp_config")
1618
2454
 
1619
2455
  @property
1620
- @pulumi.getter(name="remoteSubnet")
1621
- def remote_subnet(self) -> str:
2456
+ @pulumi.getter(name="tunnelId")
2457
+ def tunnel_id(self) -> str:
2458
+ return pulumi.get(self, "tunnel_id")
2459
+
2460
+ @property
2461
+ @pulumi.getter(name="tunnelIkeConfig")
2462
+ def tunnel_ike_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult':
1622
2463
  """
1623
- The remote subnet of the VPN connection.
2464
+ The configuration of Phase 1 negotiations in Tunnel.
1624
2465
  """
1625
- return pulumi.get(self, "remote_subnet")
2466
+ return pulumi.get(self, "tunnel_ike_config")
1626
2467
 
1627
2468
  @property
1628
- @pulumi.getter
1629
- def status(self) -> str:
2469
+ @pulumi.getter(name="tunnelIpsecConfig")
2470
+ def tunnel_ipsec_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult':
1630
2471
  """
1631
- The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2472
+ IPsec configuration in Tunnel.
1632
2473
  """
1633
- return pulumi.get(self, "status")
2474
+ return pulumi.get(self, "tunnel_ipsec_config")
1634
2475
 
1635
2476
  @property
1636
- @pulumi.getter(name="tunnelOptionsSpecifications")
1637
- def tunnel_options_specifications(self) -> Sequence['outputs.GetConnectionsConnectionTunnelOptionsSpecificationResult']:
2477
+ @pulumi.getter(name="zoneNo")
2478
+ def zone_no(self) -> str:
2479
+ return pulumi.get(self, "zone_no")
2480
+
2481
+
2482
+ @pulumi.output_type
2483
+ class GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult(dict):
2484
+ def __init__(__self__, *,
2485
+ bgp_status: str,
2486
+ local_asn: str,
2487
+ local_bgp_ip: str,
2488
+ peer_asn: str,
2489
+ peer_bgp_ip: str,
2490
+ tunnel_cidr: str):
1638
2491
  """
1639
- The tunnel_options_specification supports the following:
2492
+ :param str local_asn: Local asn.
2493
+ :param str local_bgp_ip: Local bgp IP.
2494
+ :param str peer_asn: The counterpart autonomous system number.
2495
+ :param str peer_bgp_ip: The BGP address on the other side.
2496
+ :param str tunnel_cidr: BGP Tunnel CIDR.
1640
2497
  """
1641
- return pulumi.get(self, "tunnel_options_specifications")
2498
+ pulumi.set(__self__, "bgp_status", bgp_status)
2499
+ pulumi.set(__self__, "local_asn", local_asn)
2500
+ pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
2501
+ pulumi.set(__self__, "peer_asn", peer_asn)
2502
+ pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
2503
+ pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
1642
2504
 
1643
2505
  @property
1644
- @pulumi.getter(name="vpnGatewayId")
1645
- def vpn_gateway_id(self) -> str:
2506
+ @pulumi.getter(name="bgpStatus")
2507
+ def bgp_status(self) -> str:
2508
+ return pulumi.get(self, "bgp_status")
2509
+
2510
+ @property
2511
+ @pulumi.getter(name="localAsn")
2512
+ def local_asn(self) -> str:
1646
2513
  """
1647
- Use the VPN gateway ID as the search key.
2514
+ Local asn.
1648
2515
  """
1649
- return pulumi.get(self, "vpn_gateway_id")
2516
+ return pulumi.get(self, "local_asn")
1650
2517
 
1651
2518
  @property
1652
- @pulumi.getter(name="ikeConfigs")
1653
- def ike_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionIkeConfigResult']]:
2519
+ @pulumi.getter(name="localBgpIp")
2520
+ def local_bgp_ip(self) -> str:
1654
2521
  """
1655
- The ike_config mapping supports the following:
2522
+ Local bgp IP.
1656
2523
  """
1657
- return pulumi.get(self, "ike_configs")
2524
+ return pulumi.get(self, "local_bgp_ip")
1658
2525
 
1659
2526
  @property
1660
- @pulumi.getter(name="ipsecConfigs")
1661
- def ipsec_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionIpsecConfigResult']]:
2527
+ @pulumi.getter(name="peerAsn")
2528
+ def peer_asn(self) -> str:
1662
2529
  """
1663
- The ipsec_config mapping supports the following:
2530
+ The counterpart autonomous system number.
1664
2531
  """
1665
- return pulumi.get(self, "ipsec_configs")
2532
+ return pulumi.get(self, "peer_asn")
1666
2533
 
1667
2534
  @property
1668
- @pulumi.getter(name="vcoHealthChecks")
1669
- def vco_health_checks(self) -> Optional[Sequence['outputs.GetConnectionsConnectionVcoHealthCheckResult']]:
1670
- return pulumi.get(self, "vco_health_checks")
2535
+ @pulumi.getter(name="peerBgpIp")
2536
+ def peer_bgp_ip(self) -> str:
2537
+ """
2538
+ The BGP address on the other side.
2539
+ """
2540
+ return pulumi.get(self, "peer_bgp_ip")
1671
2541
 
1672
2542
  @property
1673
- @pulumi.getter(name="vpnBgpConfigs")
1674
- def vpn_bgp_configs(self) -> Optional[Sequence['outputs.GetConnectionsConnectionVpnBgpConfigResult']]:
2543
+ @pulumi.getter(name="tunnelCidr")
2544
+ def tunnel_cidr(self) -> str:
1675
2545
  """
1676
- The vpn_bgp_config mapping supports the following:
2546
+ BGP Tunnel CIDR.
1677
2547
  """
1678
- return pulumi.get(self, "vpn_bgp_configs")
2548
+ return pulumi.get(self, "tunnel_cidr")
1679
2549
 
1680
2550
 
1681
2551
  @pulumi.output_type
1682
- class GetConnectionsConnectionIkeConfigResult(dict):
2552
+ class GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult(dict):
1683
2553
  def __init__(__self__, *,
1684
- ike_auth_alg: Optional[str] = None,
1685
- ike_enc_alg: Optional[str] = None,
1686
- ike_lifetime: Optional[int] = None,
1687
- ike_local_id: Optional[str] = None,
1688
- ike_mode: Optional[str] = None,
1689
- ike_pfs: Optional[str] = None,
1690
- ike_remote_id: Optional[str] = None,
1691
- ike_version: Optional[str] = None,
1692
- psk: Optional[str] = None):
2554
+ ike_auth_alg: str,
2555
+ ike_enc_alg: str,
2556
+ ike_lifetime: int,
2557
+ ike_mode: str,
2558
+ ike_pfs: str,
2559
+ ike_version: str,
2560
+ local_id: str,
2561
+ psk: str,
2562
+ remote_id: str):
1693
2563
  """
1694
2564
  :param str ike_auth_alg: IKE auth Algorithm.
1695
2565
  :param str ike_enc_alg: IKE encript algorithm.
1696
2566
  :param int ike_lifetime: IKE lifetime.
1697
- :param str ike_local_id: The identification of the VPN gateway.
1698
2567
  :param str ike_mode: IKE Mode.
1699
2568
  :param str ike_pfs: DH Group.
1700
- :param str ike_remote_id: The identification of the customer gateway.
1701
2569
  :param str ike_version: IKE Version.
2570
+ :param str local_id: The local Id.
1702
2571
  :param str psk: Preshared secret key.
2572
+ :param str remote_id: Remote ID.
1703
2573
  """
1704
- if ike_auth_alg is not None:
1705
- pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
1706
- if ike_enc_alg is not None:
1707
- pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
1708
- if ike_lifetime is not None:
1709
- pulumi.set(__self__, "ike_lifetime", ike_lifetime)
1710
- if ike_local_id is not None:
1711
- pulumi.set(__self__, "ike_local_id", ike_local_id)
1712
- if ike_mode is not None:
1713
- pulumi.set(__self__, "ike_mode", ike_mode)
1714
- if ike_pfs is not None:
1715
- pulumi.set(__self__, "ike_pfs", ike_pfs)
1716
- if ike_remote_id is not None:
1717
- pulumi.set(__self__, "ike_remote_id", ike_remote_id)
1718
- if ike_version is not None:
1719
- pulumi.set(__self__, "ike_version", ike_version)
1720
- if psk is not None:
1721
- pulumi.set(__self__, "psk", psk)
2574
+ pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
2575
+ pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
2576
+ pulumi.set(__self__, "ike_lifetime", ike_lifetime)
2577
+ pulumi.set(__self__, "ike_mode", ike_mode)
2578
+ pulumi.set(__self__, "ike_pfs", ike_pfs)
2579
+ pulumi.set(__self__, "ike_version", ike_version)
2580
+ pulumi.set(__self__, "local_id", local_id)
2581
+ pulumi.set(__self__, "psk", psk)
2582
+ pulumi.set(__self__, "remote_id", remote_id)
1722
2583
 
1723
2584
  @property
1724
2585
  @pulumi.getter(name="ikeAuthAlg")
1725
- def ike_auth_alg(self) -> Optional[str]:
2586
+ def ike_auth_alg(self) -> str:
1726
2587
  """
1727
2588
  IKE auth Algorithm.
1728
2589
  """
@@ -1730,7 +2591,7 @@ class GetConnectionsConnectionIkeConfigResult(dict):
1730
2591
 
1731
2592
  @property
1732
2593
  @pulumi.getter(name="ikeEncAlg")
1733
- def ike_enc_alg(self) -> Optional[str]:
2594
+ def ike_enc_alg(self) -> str:
1734
2595
  """
1735
2596
  IKE encript algorithm.
1736
2597
  """
@@ -1738,23 +2599,15 @@ class GetConnectionsConnectionIkeConfigResult(dict):
1738
2599
 
1739
2600
  @property
1740
2601
  @pulumi.getter(name="ikeLifetime")
1741
- def ike_lifetime(self) -> Optional[int]:
2602
+ def ike_lifetime(self) -> int:
1742
2603
  """
1743
2604
  IKE lifetime.
1744
2605
  """
1745
2606
  return pulumi.get(self, "ike_lifetime")
1746
2607
 
1747
- @property
1748
- @pulumi.getter(name="ikeLocalId")
1749
- def ike_local_id(self) -> Optional[str]:
1750
- """
1751
- The identification of the VPN gateway.
1752
- """
1753
- return pulumi.get(self, "ike_local_id")
1754
-
1755
2608
  @property
1756
2609
  @pulumi.getter(name="ikeMode")
1757
- def ike_mode(self) -> Optional[str]:
2610
+ def ike_mode(self) -> str:
1758
2611
  """
1759
2612
  IKE Mode.
1760
2613
  """
@@ -1762,62 +2615,66 @@ class GetConnectionsConnectionIkeConfigResult(dict):
1762
2615
 
1763
2616
  @property
1764
2617
  @pulumi.getter(name="ikePfs")
1765
- def ike_pfs(self) -> Optional[str]:
2618
+ def ike_pfs(self) -> str:
1766
2619
  """
1767
2620
  DH Group.
1768
2621
  """
1769
2622
  return pulumi.get(self, "ike_pfs")
1770
2623
 
1771
2624
  @property
1772
- @pulumi.getter(name="ikeRemoteId")
1773
- def ike_remote_id(self) -> Optional[str]:
2625
+ @pulumi.getter(name="ikeVersion")
2626
+ def ike_version(self) -> str:
1774
2627
  """
1775
- The identification of the customer gateway.
2628
+ IKE Version.
1776
2629
  """
1777
- return pulumi.get(self, "ike_remote_id")
2630
+ return pulumi.get(self, "ike_version")
1778
2631
 
1779
2632
  @property
1780
- @pulumi.getter(name="ikeVersion")
1781
- def ike_version(self) -> Optional[str]:
2633
+ @pulumi.getter(name="localId")
2634
+ def local_id(self) -> str:
1782
2635
  """
1783
- IKE Version.
2636
+ The local Id.
1784
2637
  """
1785
- return pulumi.get(self, "ike_version")
2638
+ return pulumi.get(self, "local_id")
1786
2639
 
1787
2640
  @property
1788
2641
  @pulumi.getter
1789
- def psk(self) -> Optional[str]:
2642
+ def psk(self) -> str:
1790
2643
  """
1791
2644
  Preshared secret key.
1792
2645
  """
1793
2646
  return pulumi.get(self, "psk")
1794
2647
 
2648
+ @property
2649
+ @pulumi.getter(name="remoteId")
2650
+ def remote_id(self) -> str:
2651
+ """
2652
+ Remote ID.
2653
+ """
2654
+ return pulumi.get(self, "remote_id")
2655
+
1795
2656
 
1796
2657
  @pulumi.output_type
1797
- class GetConnectionsConnectionIpsecConfigResult(dict):
2658
+ class GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult(dict):
1798
2659
  def __init__(__self__, *,
1799
- ipsec_auth_alg: Optional[str] = None,
1800
- ipsec_enc_alg: Optional[str] = None,
1801
- ipsec_lifetime: Optional[int] = None,
1802
- ipsec_pfs: Optional[str] = None):
2660
+ ipsec_auth_alg: str,
2661
+ ipsec_enc_alg: str,
2662
+ ipsec_lifetime: int,
2663
+ ipsec_pfs: str):
1803
2664
  """
1804
2665
  :param str ipsec_auth_alg: IPsec Auth algorithm.
1805
2666
  :param str ipsec_enc_alg: IPsec Encript algorithm.
1806
2667
  :param int ipsec_lifetime: IPsec lifetime.
1807
2668
  :param str ipsec_pfs: DH Group.
1808
2669
  """
1809
- if ipsec_auth_alg is not None:
1810
- pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
1811
- if ipsec_enc_alg is not None:
1812
- pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
1813
- if ipsec_lifetime is not None:
1814
- pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
1815
- if ipsec_pfs is not None:
1816
- pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
2670
+ pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
2671
+ pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
2672
+ pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
2673
+ pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
1817
2674
 
1818
2675
  @property
1819
2676
  @pulumi.getter(name="ipsecAuthAlg")
1820
- def ipsec_auth_alg(self) -> Optional[str]:
2677
+ def ipsec_auth_alg(self) -> str:
1821
2678
  """
1822
2679
  IPsec Auth algorithm.
1823
2680
  """
@@ -1825,7 +2682,7 @@ class GetConnectionsConnectionIpsecConfigResult(dict):
1825
2682
 
1826
2683
  @property
1827
2684
  @pulumi.getter(name="ipsecEncAlg")
1828
- def ipsec_enc_alg(self) -> Optional[str]:
2685
+ def ipsec_enc_alg(self) -> str:
1829
2686
  """
1830
2687
  IPsec Encript algorithm.
1831
2688
  """
@@ -1833,7 +2690,7 @@ class GetConnectionsConnectionIpsecConfigResult(dict):
1833
2690
 
1834
2691
  @property
1835
2692
  @pulumi.getter(name="ipsecLifetime")
1836
- def ipsec_lifetime(self) -> Optional[int]:
2693
+ def ipsec_lifetime(self) -> int:
1837
2694
  """
1838
2695
  IPsec lifetime.
1839
2696
  """
@@ -1841,7 +2698,7 @@ class GetConnectionsConnectionIpsecConfigResult(dict):
1841
2698
 
1842
2699
  @property
1843
2700
  @pulumi.getter(name="ipsecPfs")
1844
- def ipsec_pfs(self) -> Optional[str]:
2701
+ def ipsec_pfs(self) -> str:
1845
2702
  """
1846
2703
  DH Group.
1847
2704
  """
@@ -1849,860 +2706,998 @@ class GetConnectionsConnectionIpsecConfigResult(dict):
1849
2706
 
1850
2707
 
1851
2708
  @pulumi.output_type
1852
- class GetConnectionsConnectionTunnelOptionsSpecificationResult(dict):
2709
+ class GetConnectionsConnectionVcoHealthCheckResult(dict):
1853
2710
  def __init__(__self__, *,
1854
- customer_gateway_id: str,
1855
- enable_dpd: bool,
1856
- enable_nat_traversal: bool,
1857
- internet_ip: str,
1858
- role: str,
1859
- state: str,
1860
- status: str,
1861
- tunnel_bgp_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult',
1862
- tunnel_id: str,
1863
- tunnel_ike_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult',
1864
- tunnel_ipsec_config: 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult',
1865
- zone_no: str):
2711
+ dip: Optional[str] = None,
2712
+ enable: Optional[str] = None,
2713
+ interval: Optional[int] = None,
2714
+ retry: Optional[int] = None,
2715
+ sip: Optional[str] = None,
2716
+ status: Optional[str] = None):
1866
2717
  """
1867
- :param str customer_gateway_id: Use the VPN customer gateway ID as the search key.
1868
- :param bool enable_dpd: Wether enable Dpd detection.
1869
- :param bool enable_nat_traversal: enable nat traversal.
1870
- :param str role: The role of Tunnel.
2718
+ :param str dip: The destination ip address.
2719
+ :param str enable: The health check on status. Valid values: `true`, `false`.
2720
+ :param int interval: The time interval between health checks.
2721
+ :param int retry: The number of retries for health checks issued.
2722
+ :param str sip: The source ip address.
1871
2723
  :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
1872
- :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs' tunnel_bgp_config: The bgp config of Tunnel.
1873
- :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs' tunnel_ike_config: The configuration of Phase 1 negotiations in Tunnel.
1874
- :param 'GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs' tunnel_ipsec_config: IPsec configuration in Tunnel.
1875
2724
  """
1876
- pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
1877
- pulumi.set(__self__, "enable_dpd", enable_dpd)
1878
- pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
1879
- pulumi.set(__self__, "internet_ip", internet_ip)
1880
- pulumi.set(__self__, "role", role)
1881
- pulumi.set(__self__, "state", state)
1882
- pulumi.set(__self__, "status", status)
1883
- pulumi.set(__self__, "tunnel_bgp_config", tunnel_bgp_config)
1884
- pulumi.set(__self__, "tunnel_id", tunnel_id)
1885
- pulumi.set(__self__, "tunnel_ike_config", tunnel_ike_config)
1886
- pulumi.set(__self__, "tunnel_ipsec_config", tunnel_ipsec_config)
1887
- pulumi.set(__self__, "zone_no", zone_no)
2725
+ if dip is not None:
2726
+ pulumi.set(__self__, "dip", dip)
2727
+ if enable is not None:
2728
+ pulumi.set(__self__, "enable", enable)
2729
+ if interval is not None:
2730
+ pulumi.set(__self__, "interval", interval)
2731
+ if retry is not None:
2732
+ pulumi.set(__self__, "retry", retry)
2733
+ if sip is not None:
2734
+ pulumi.set(__self__, "sip", sip)
2735
+ if status is not None:
2736
+ pulumi.set(__self__, "status", status)
1888
2737
 
1889
2738
  @property
1890
- @pulumi.getter(name="customerGatewayId")
1891
- def customer_gateway_id(self) -> str:
2739
+ @pulumi.getter
2740
+ def dip(self) -> Optional[str]:
2741
+ """
2742
+ The destination ip address.
2743
+ """
2744
+ return pulumi.get(self, "dip")
2745
+
2746
+ @property
2747
+ @pulumi.getter
2748
+ def enable(self) -> Optional[str]:
2749
+ """
2750
+ The health check on status. Valid values: `true`, `false`.
2751
+ """
2752
+ return pulumi.get(self, "enable")
2753
+
2754
+ @property
2755
+ @pulumi.getter
2756
+ def interval(self) -> Optional[int]:
2757
+ """
2758
+ The time interval between health checks.
2759
+ """
2760
+ return pulumi.get(self, "interval")
2761
+
2762
+ @property
2763
+ @pulumi.getter
2764
+ def retry(self) -> Optional[int]:
2765
+ """
2766
+ The number of retries for health checks issued.
2767
+ """
2768
+ return pulumi.get(self, "retry")
2769
+
2770
+ @property
2771
+ @pulumi.getter
2772
+ def sip(self) -> Optional[str]:
2773
+ """
2774
+ The source ip address.
2775
+ """
2776
+ return pulumi.get(self, "sip")
2777
+
2778
+ @property
2779
+ @pulumi.getter
2780
+ def status(self) -> Optional[str]:
2781
+ """
2782
+ The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2783
+ """
2784
+ return pulumi.get(self, "status")
2785
+
2786
+
2787
+ @pulumi.output_type
2788
+ class GetConnectionsConnectionVpnBgpConfigResult(dict):
2789
+ def __init__(__self__, *,
2790
+ auth_key: Optional[str] = None,
2791
+ local_asn: Optional[int] = None,
2792
+ local_bgp_ip: Optional[str] = None,
2793
+ peer_asn: Optional[int] = None,
2794
+ peer_bgp_ip: Optional[str] = None,
2795
+ status: Optional[str] = None,
2796
+ tunnel_cidr: Optional[str] = None):
2797
+ """
2798
+ :param str auth_key: The authentication keys for BGP routing protocols.
2799
+ :param int local_asn: Local asn.
2800
+ :param str local_bgp_ip: Local bgp IP.
2801
+ :param int peer_asn: The counterpart autonomous system number.
2802
+ :param str peer_bgp_ip: The BGP address on the other side.
2803
+ :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2804
+ :param str tunnel_cidr: BGP Tunnel CIDR.
2805
+ """
2806
+ if auth_key is not None:
2807
+ pulumi.set(__self__, "auth_key", auth_key)
2808
+ if local_asn is not None:
2809
+ pulumi.set(__self__, "local_asn", local_asn)
2810
+ if local_bgp_ip is not None:
2811
+ pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
2812
+ if peer_asn is not None:
2813
+ pulumi.set(__self__, "peer_asn", peer_asn)
2814
+ if peer_bgp_ip is not None:
2815
+ pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
2816
+ if status is not None:
2817
+ pulumi.set(__self__, "status", status)
2818
+ if tunnel_cidr is not None:
2819
+ pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
2820
+
2821
+ @property
2822
+ @pulumi.getter(name="authKey")
2823
+ def auth_key(self) -> Optional[str]:
2824
+ """
2825
+ The authentication keys for BGP routing protocols.
2826
+ """
2827
+ return pulumi.get(self, "auth_key")
2828
+
2829
+ @property
2830
+ @pulumi.getter(name="localAsn")
2831
+ def local_asn(self) -> Optional[int]:
2832
+ """
2833
+ Local asn.
2834
+ """
2835
+ return pulumi.get(self, "local_asn")
2836
+
2837
+ @property
2838
+ @pulumi.getter(name="localBgpIp")
2839
+ def local_bgp_ip(self) -> Optional[str]:
2840
+ """
2841
+ Local bgp IP.
2842
+ """
2843
+ return pulumi.get(self, "local_bgp_ip")
2844
+
2845
+ @property
2846
+ @pulumi.getter(name="peerAsn")
2847
+ def peer_asn(self) -> Optional[int]:
2848
+ """
2849
+ The counterpart autonomous system number.
2850
+ """
2851
+ return pulumi.get(self, "peer_asn")
2852
+
2853
+ @property
2854
+ @pulumi.getter(name="peerBgpIp")
2855
+ def peer_bgp_ip(self) -> Optional[str]:
2856
+ """
2857
+ The BGP address on the other side.
2858
+ """
2859
+ return pulumi.get(self, "peer_bgp_ip")
2860
+
2861
+ @property
2862
+ @pulumi.getter
2863
+ def status(self) -> Optional[str]:
2864
+ """
2865
+ The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2866
+ """
2867
+ return pulumi.get(self, "status")
2868
+
2869
+ @property
2870
+ @pulumi.getter(name="tunnelCidr")
2871
+ def tunnel_cidr(self) -> Optional[str]:
2872
+ """
2873
+ BGP Tunnel CIDR.
2874
+ """
2875
+ return pulumi.get(self, "tunnel_cidr")
2876
+
2877
+
2878
+ @pulumi.output_type
2879
+ class GetCustomerGatewaysGatewayResult(dict):
2880
+ def __init__(__self__, *,
2881
+ asn: int,
2882
+ create_time: str,
2883
+ description: str,
2884
+ id: str,
2885
+ ip_address: str,
2886
+ name: str):
1892
2887
  """
1893
- Use the VPN customer gateway ID as the search key.
2888
+ :param int asn: The autonomous system number of the local data center gateway device of the VPN customer gateway.
2889
+ :param str create_time: The creation time of the VPN customer gateway.
2890
+ :param str description: The description of the VPN customer gateway.
2891
+ :param str id: ID of the VPN customer gateway .
2892
+ :param str ip_address: The ip address of the VPN customer gateway.
2893
+ :param str name: The name of the VPN customer gateway.
1894
2894
  """
1895
- return pulumi.get(self, "customer_gateway_id")
2895
+ pulumi.set(__self__, "asn", asn)
2896
+ pulumi.set(__self__, "create_time", create_time)
2897
+ pulumi.set(__self__, "description", description)
2898
+ pulumi.set(__self__, "id", id)
2899
+ pulumi.set(__self__, "ip_address", ip_address)
2900
+ pulumi.set(__self__, "name", name)
1896
2901
 
1897
2902
  @property
1898
- @pulumi.getter(name="enableDpd")
1899
- def enable_dpd(self) -> bool:
2903
+ @pulumi.getter
2904
+ def asn(self) -> int:
1900
2905
  """
1901
- Wether enable Dpd detection.
2906
+ The autonomous system number of the local data center gateway device of the VPN customer gateway.
1902
2907
  """
1903
- return pulumi.get(self, "enable_dpd")
2908
+ return pulumi.get(self, "asn")
1904
2909
 
1905
2910
  @property
1906
- @pulumi.getter(name="enableNatTraversal")
1907
- def enable_nat_traversal(self) -> bool:
2911
+ @pulumi.getter(name="createTime")
2912
+ def create_time(self) -> str:
1908
2913
  """
1909
- enable nat traversal.
2914
+ The creation time of the VPN customer gateway.
1910
2915
  """
1911
- return pulumi.get(self, "enable_nat_traversal")
1912
-
1913
- @property
1914
- @pulumi.getter(name="internetIp")
1915
- def internet_ip(self) -> str:
1916
- return pulumi.get(self, "internet_ip")
2916
+ return pulumi.get(self, "create_time")
1917
2917
 
1918
2918
  @property
1919
2919
  @pulumi.getter
1920
- def role(self) -> str:
2920
+ def description(self) -> str:
1921
2921
  """
1922
- The role of Tunnel.
2922
+ The description of the VPN customer gateway.
1923
2923
  """
1924
- return pulumi.get(self, "role")
2924
+ return pulumi.get(self, "description")
1925
2925
 
1926
2926
  @property
1927
2927
  @pulumi.getter
1928
- def state(self) -> str:
1929
- return pulumi.get(self, "state")
2928
+ def id(self) -> str:
2929
+ """
2930
+ ID of the VPN customer gateway .
2931
+ """
2932
+ return pulumi.get(self, "id")
1930
2933
 
1931
2934
  @property
1932
- @pulumi.getter
1933
- def status(self) -> str:
2935
+ @pulumi.getter(name="ipAddress")
2936
+ def ip_address(self) -> str:
1934
2937
  """
1935
- The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2938
+ The ip address of the VPN customer gateway.
1936
2939
  """
1937
- return pulumi.get(self, "status")
2940
+ return pulumi.get(self, "ip_address")
1938
2941
 
1939
2942
  @property
1940
- @pulumi.getter(name="tunnelBgpConfig")
1941
- def tunnel_bgp_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult':
2943
+ @pulumi.getter
2944
+ def name(self) -> str:
1942
2945
  """
1943
- The bgp config of Tunnel.
2946
+ The name of the VPN customer gateway.
1944
2947
  """
1945
- return pulumi.get(self, "tunnel_bgp_config")
2948
+ return pulumi.get(self, "name")
1946
2949
 
1947
- @property
1948
- @pulumi.getter(name="tunnelId")
1949
- def tunnel_id(self) -> str:
1950
- return pulumi.get(self, "tunnel_id")
1951
2950
 
1952
- @property
1953
- @pulumi.getter(name="tunnelIkeConfig")
1954
- def tunnel_ike_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult':
2951
+ @pulumi.output_type
2952
+ class GetGatewayVcoRoutesRouteResult(dict):
2953
+ def __init__(__self__, *,
2954
+ as_path: str,
2955
+ create_time: str,
2956
+ id: str,
2957
+ next_hop: str,
2958
+ route_dest: str,
2959
+ source: str,
2960
+ status: str,
2961
+ vpn_connection_id: str,
2962
+ weight: int):
1955
2963
  """
1956
- The configuration of Phase 1 negotiations in Tunnel.
2964
+ :param str as_path: List of autonomous system numbers through which BGP routing entries pass.
2965
+ :param str create_time: The creation time of the VPN destination route.
2966
+ :param str id: The ID of the Vpn Gateway Vco Routes.
2967
+ :param str next_hop: The next hop of the destination route.
2968
+ :param str route_dest: The destination network segment of the destination route.
2969
+ :param str source: The source CIDR block of the destination route.
2970
+ :param str status: The status of the vpn route entry. Valid values: `normal`, `published`.
2971
+ :param str vpn_connection_id: The id of the vpn connection.
2972
+ :param int weight: The weight value of the destination route.
1957
2973
  """
1958
- return pulumi.get(self, "tunnel_ike_config")
2974
+ pulumi.set(__self__, "as_path", as_path)
2975
+ pulumi.set(__self__, "create_time", create_time)
2976
+ pulumi.set(__self__, "id", id)
2977
+ pulumi.set(__self__, "next_hop", next_hop)
2978
+ pulumi.set(__self__, "route_dest", route_dest)
2979
+ pulumi.set(__self__, "source", source)
2980
+ pulumi.set(__self__, "status", status)
2981
+ pulumi.set(__self__, "vpn_connection_id", vpn_connection_id)
2982
+ pulumi.set(__self__, "weight", weight)
1959
2983
 
1960
2984
  @property
1961
- @pulumi.getter(name="tunnelIpsecConfig")
1962
- def tunnel_ipsec_config(self) -> 'outputs.GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult':
2985
+ @pulumi.getter(name="asPath")
2986
+ def as_path(self) -> str:
1963
2987
  """
1964
- IPsec configuration in Tunnel.
2988
+ List of autonomous system numbers through which BGP routing entries pass.
1965
2989
  """
1966
- return pulumi.get(self, "tunnel_ipsec_config")
2990
+ return pulumi.get(self, "as_path")
1967
2991
 
1968
2992
  @property
1969
- @pulumi.getter(name="zoneNo")
1970
- def zone_no(self) -> str:
1971
- return pulumi.get(self, "zone_no")
1972
-
2993
+ @pulumi.getter(name="createTime")
2994
+ def create_time(self) -> str:
2995
+ """
2996
+ The creation time of the VPN destination route.
2997
+ """
2998
+ return pulumi.get(self, "create_time")
1973
2999
 
1974
- @pulumi.output_type
1975
- class GetConnectionsConnectionTunnelOptionsSpecificationTunnelBgpConfigResult(dict):
1976
- def __init__(__self__, *,
1977
- bgp_status: str,
1978
- local_asn: str,
1979
- local_bgp_ip: str,
1980
- peer_asn: str,
1981
- peer_bgp_ip: str,
1982
- tunnel_cidr: str):
3000
+ @property
3001
+ @pulumi.getter
3002
+ def id(self) -> str:
1983
3003
  """
1984
- :param str local_asn: Local asn.
1985
- :param str local_bgp_ip: Local bgp IP.
1986
- :param str peer_asn: The counterpart autonomous system number.
1987
- :param str peer_bgp_ip: The BGP address on the other side.
1988
- :param str tunnel_cidr: BGP Tunnel CIDR.
3004
+ The ID of the Vpn Gateway Vco Routes.
1989
3005
  """
1990
- pulumi.set(__self__, "bgp_status", bgp_status)
1991
- pulumi.set(__self__, "local_asn", local_asn)
1992
- pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
1993
- pulumi.set(__self__, "peer_asn", peer_asn)
1994
- pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
1995
- pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
3006
+ return pulumi.get(self, "id")
1996
3007
 
1997
3008
  @property
1998
- @pulumi.getter(name="bgpStatus")
1999
- def bgp_status(self) -> str:
2000
- return pulumi.get(self, "bgp_status")
3009
+ @pulumi.getter(name="nextHop")
3010
+ def next_hop(self) -> str:
3011
+ """
3012
+ The next hop of the destination route.
3013
+ """
3014
+ return pulumi.get(self, "next_hop")
2001
3015
 
2002
3016
  @property
2003
- @pulumi.getter(name="localAsn")
2004
- def local_asn(self) -> str:
3017
+ @pulumi.getter(name="routeDest")
3018
+ def route_dest(self) -> str:
2005
3019
  """
2006
- Local asn.
3020
+ The destination network segment of the destination route.
2007
3021
  """
2008
- return pulumi.get(self, "local_asn")
3022
+ return pulumi.get(self, "route_dest")
2009
3023
 
2010
3024
  @property
2011
- @pulumi.getter(name="localBgpIp")
2012
- def local_bgp_ip(self) -> str:
3025
+ @pulumi.getter
3026
+ def source(self) -> str:
2013
3027
  """
2014
- Local bgp IP.
3028
+ The source CIDR block of the destination route.
2015
3029
  """
2016
- return pulumi.get(self, "local_bgp_ip")
3030
+ return pulumi.get(self, "source")
2017
3031
 
2018
3032
  @property
2019
- @pulumi.getter(name="peerAsn")
2020
- def peer_asn(self) -> str:
3033
+ @pulumi.getter
3034
+ def status(self) -> str:
2021
3035
  """
2022
- The counterpart autonomous system number.
3036
+ The status of the vpn route entry. Valid values: `normal`, `published`.
2023
3037
  """
2024
- return pulumi.get(self, "peer_asn")
3038
+ return pulumi.get(self, "status")
2025
3039
 
2026
3040
  @property
2027
- @pulumi.getter(name="peerBgpIp")
2028
- def peer_bgp_ip(self) -> str:
3041
+ @pulumi.getter(name="vpnConnectionId")
3042
+ def vpn_connection_id(self) -> str:
2029
3043
  """
2030
- The BGP address on the other side.
3044
+ The id of the vpn connection.
2031
3045
  """
2032
- return pulumi.get(self, "peer_bgp_ip")
3046
+ return pulumi.get(self, "vpn_connection_id")
2033
3047
 
2034
3048
  @property
2035
- @pulumi.getter(name="tunnelCidr")
2036
- def tunnel_cidr(self) -> str:
3049
+ @pulumi.getter
3050
+ def weight(self) -> int:
2037
3051
  """
2038
- BGP Tunnel CIDR.
3052
+ The weight value of the destination route.
2039
3053
  """
2040
- return pulumi.get(self, "tunnel_cidr")
3054
+ return pulumi.get(self, "weight")
2041
3055
 
2042
3056
 
2043
3057
  @pulumi.output_type
2044
- class GetConnectionsConnectionTunnelOptionsSpecificationTunnelIkeConfigResult(dict):
3058
+ class GetGatewayVpnAttachmentsAttachmentResult(dict):
2045
3059
  def __init__(__self__, *,
2046
- ike_auth_alg: str,
2047
- ike_enc_alg: str,
2048
- ike_lifetime: int,
2049
- ike_mode: str,
2050
- ike_pfs: str,
2051
- ike_version: str,
2052
- local_id: str,
2053
- psk: str,
2054
- remote_id: str):
3060
+ attach_type: str,
3061
+ bgp_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentBgpConfigResult'],
3062
+ connection_status: str,
3063
+ create_time: str,
3064
+ customer_gateway_id: str,
3065
+ effect_immediately: bool,
3066
+ enable_dpd: bool,
3067
+ enable_nat_traversal: bool,
3068
+ enable_tunnels_bgp: bool,
3069
+ health_check_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult'],
3070
+ id: str,
3071
+ ike_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIkeConfigResult'],
3072
+ internet_ip: str,
3073
+ ipsec_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIpsecConfigResult'],
3074
+ local_subnet: str,
3075
+ network_type: str,
3076
+ remote_subnet: str,
3077
+ resource_group_id: str,
3078
+ status: str,
3079
+ tags: Mapping[str, str],
3080
+ tunnel_options_specifications: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationResult'],
3081
+ vpn_attachment_name: str,
3082
+ vpn_connection_id: str):
3083
+ """
3084
+ :param str attach_type: attach type- **CEN**: indicates that the IPsec-VPN connection is associated with a transit router of a Cloud Enterprise Network (CEN) instance.- **NO_ASSOCIATED**: indicates that the IPsec-VPN connection is not associated with any resource.
3085
+ :param Sequence['GetGatewayVpnAttachmentsAttachmentBgpConfigArgs'] bgp_configs: Bgp configuration information.- This parameter is supported when you create an vpn attachment in single-tunnel mode.
3086
+ :param str connection_status: IPsec connection status- **ike_sa_not_established**: Phase 1 negotiations failed.- **ike_sa_established**: Phase 1 negotiations succeeded.- **ipsec_sa_not_established**: Phase 2 negotiations failed.- **ipsec_sa_established**: Phase 2 negotiations succeeded.
3087
+ :param str create_time: The creation time of the resource
3088
+ :param str customer_gateway_id: The ID of the user gateway associated with the tunnel.> This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
3089
+ :param bool effect_immediately: Specifies whether to immediately start IPsec negotiations after the configuration takes effect. Valid values:- **true**: immediately starts IPsec negotiations after the configuration is complete.- **false** (default): starts IPsec negotiations when inbound traffic is received.
3090
+ :param bool enable_dpd: Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:-**true** (default): enable the DPD function. IPsec initiator will send DPD message to check whether the peer device is alive. If the peer device does not receive a correct response within the set time, it is considered that the peer has been disconnected. IPsec will delete ISAKMP SA and the corresponding IPsec SA, and the security tunnel will also be deleted.-**false**: If the DPD function is disabled, the IPsec initiator does not send DPD detection packets.
3091
+ :param bool enable_nat_traversal: Whether the NAT crossing function is enabled for the tunnel. Value:-**true** (default): Enables the NAT Traversal function. When enabled, the IKE negotiation process deletes the verification process of the UDP port number and realizes the discovery function of the NAT gateway device in the tunnel.-**false**: does not enable the NAT Traversal function.
3092
+ :param bool enable_tunnels_bgp: You can configure this parameter when you create a vpn attachment in dual-tunnel mode.Whether to enable the BGP function for the tunnel. Value: **true** or **false** (default).> before adding BGP configuration, we recommend that you understand the working mechanism and usage restrictions of the BGP dynamic routing function.
3093
+ :param Sequence['GetGatewayVpnAttachmentsAttachmentHealthCheckConfigArgs'] health_check_configs: This parameter is supported if you create an vpn attachment in single-tunnel mode.Health check configuration information.
3094
+ :param str id: The ID of the resource supplied above.
3095
+ :param Sequence['GetGatewayVpnAttachmentsAttachmentIkeConfigArgs'] ike_configs: The configurations of Phase 1 negotiations. - This parameter is supported if you create an vpn attachment in single-tunnel mode.
3096
+ :param str internet_ip: The local internet IP in Tunnel.
3097
+ :param Sequence['GetGatewayVpnAttachmentsAttachmentIpsecConfigArgs'] ipsec_configs: Configuration negotiated in the second stage. - This parameter is supported if you create an vpn attachment in single-tunnel mode.
3098
+ :param str local_subnet: The CIDR block on the VPC side. The CIDR block is used in Phase 2 negotiations.Separate multiple CIDR blocks with commas (,). Example: 192.168.1.0/24,192.168.2.0/24.The following routing modes are supported:- If you set LocalSubnet and RemoteSubnet to 0.0.0.0/0, the routing mode of the IPsec-VPN connection is set to Destination Routing Mode.- If you set LocalSubnet and RemoteSubnet to specific CIDR blocks, the routing mode of the IPsec-VPN connection is set to Protected Data Flows.
3099
+ :param str network_type: network type- **public** (default)- **private**
3100
+ :param str remote_subnet: The CIDR block on the data center side. This CIDR block is used in Phase 2 negotiations.Separate multiple CIDR blocks with commas (,). Example: 192.168.3.0/24,192.168.4.0/24.The following routing modes are supported:- If you set LocalSubnet and RemoteSubnet to 0.0.0.0/0, the routing mode of the IPsec-VPN connection is set to Destination Routing Mode.- If you set LocalSubnet and RemoteSubnet to specific CIDR blocks, the routing mode of the IPsec-VPN connection is set to Protected Data Flows.
3101
+ :param str resource_group_id: The ID of the resource group
3102
+ :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
3103
+ :param Mapping[str, str] tags: Tags
3104
+ :param Sequence['GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationArgs'] tunnel_options_specifications: Configure the tunnel.-You can configure parameters in the **tunnel_options_specification** array when you create a vpn attachment in dual-tunnel mode.-When creating a vpn attachment in dual-tunnel mode, you must add both tunnels for the vpn attachment to ensure that the vpn attachment has link redundancy. Only two tunnels can be added to a vpn attachment.
3105
+ :param str vpn_attachment_name: vpn attachment name
3106
+ :param str vpn_connection_id: The first ID of the resource
3107
+ """
3108
+ pulumi.set(__self__, "attach_type", attach_type)
3109
+ pulumi.set(__self__, "bgp_configs", bgp_configs)
3110
+ pulumi.set(__self__, "connection_status", connection_status)
3111
+ pulumi.set(__self__, "create_time", create_time)
3112
+ pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
3113
+ pulumi.set(__self__, "effect_immediately", effect_immediately)
3114
+ pulumi.set(__self__, "enable_dpd", enable_dpd)
3115
+ pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
3116
+ pulumi.set(__self__, "enable_tunnels_bgp", enable_tunnels_bgp)
3117
+ pulumi.set(__self__, "health_check_configs", health_check_configs)
3118
+ pulumi.set(__self__, "id", id)
3119
+ pulumi.set(__self__, "ike_configs", ike_configs)
3120
+ pulumi.set(__self__, "internet_ip", internet_ip)
3121
+ pulumi.set(__self__, "ipsec_configs", ipsec_configs)
3122
+ pulumi.set(__self__, "local_subnet", local_subnet)
3123
+ pulumi.set(__self__, "network_type", network_type)
3124
+ pulumi.set(__self__, "remote_subnet", remote_subnet)
3125
+ pulumi.set(__self__, "resource_group_id", resource_group_id)
3126
+ pulumi.set(__self__, "status", status)
3127
+ pulumi.set(__self__, "tags", tags)
3128
+ pulumi.set(__self__, "tunnel_options_specifications", tunnel_options_specifications)
3129
+ pulumi.set(__self__, "vpn_attachment_name", vpn_attachment_name)
3130
+ pulumi.set(__self__, "vpn_connection_id", vpn_connection_id)
3131
+
3132
+ @property
3133
+ @pulumi.getter(name="attachType")
3134
+ def attach_type(self) -> str:
2055
3135
  """
2056
- :param str ike_auth_alg: IKE auth Algorithm.
2057
- :param str ike_enc_alg: IKE encript algorithm.
2058
- :param int ike_lifetime: IKE lifetime.
2059
- :param str ike_mode: IKE Mode.
2060
- :param str ike_pfs: DH Group.
2061
- :param str ike_version: IKE Version.
2062
- :param str local_id: The local Id.
2063
- :param str psk: Preshared secret key.
2064
- :param str remote_id: Remote ID.
3136
+ attach type- **CEN**: indicates that the IPsec-VPN connection is associated with a transit router of a Cloud Enterprise Network (CEN) instance.- **NO_ASSOCIATED**: indicates that the IPsec-VPN connection is not associated with any resource.
2065
3137
  """
2066
- pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
2067
- pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
2068
- pulumi.set(__self__, "ike_lifetime", ike_lifetime)
2069
- pulumi.set(__self__, "ike_mode", ike_mode)
2070
- pulumi.set(__self__, "ike_pfs", ike_pfs)
2071
- pulumi.set(__self__, "ike_version", ike_version)
2072
- pulumi.set(__self__, "local_id", local_id)
2073
- pulumi.set(__self__, "psk", psk)
2074
- pulumi.set(__self__, "remote_id", remote_id)
3138
+ return pulumi.get(self, "attach_type")
2075
3139
 
2076
3140
  @property
2077
- @pulumi.getter(name="ikeAuthAlg")
2078
- def ike_auth_alg(self) -> str:
3141
+ @pulumi.getter(name="bgpConfigs")
3142
+ def bgp_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentBgpConfigResult']:
2079
3143
  """
2080
- IKE auth Algorithm.
3144
+ Bgp configuration information.- This parameter is supported when you create an vpn attachment in single-tunnel mode.
2081
3145
  """
2082
- return pulumi.get(self, "ike_auth_alg")
3146
+ return pulumi.get(self, "bgp_configs")
2083
3147
 
2084
3148
  @property
2085
- @pulumi.getter(name="ikeEncAlg")
2086
- def ike_enc_alg(self) -> str:
3149
+ @pulumi.getter(name="connectionStatus")
3150
+ def connection_status(self) -> str:
2087
3151
  """
2088
- IKE encript algorithm.
3152
+ IPsec connection status- **ike_sa_not_established**: Phase 1 negotiations failed.- **ike_sa_established**: Phase 1 negotiations succeeded.- **ipsec_sa_not_established**: Phase 2 negotiations failed.- **ipsec_sa_established**: Phase 2 negotiations succeeded.
2089
3153
  """
2090
- return pulumi.get(self, "ike_enc_alg")
3154
+ return pulumi.get(self, "connection_status")
2091
3155
 
2092
3156
  @property
2093
- @pulumi.getter(name="ikeLifetime")
2094
- def ike_lifetime(self) -> int:
3157
+ @pulumi.getter(name="createTime")
3158
+ def create_time(self) -> str:
2095
3159
  """
2096
- IKE lifetime.
3160
+ The creation time of the resource
2097
3161
  """
2098
- return pulumi.get(self, "ike_lifetime")
3162
+ return pulumi.get(self, "create_time")
2099
3163
 
2100
3164
  @property
2101
- @pulumi.getter(name="ikeMode")
2102
- def ike_mode(self) -> str:
3165
+ @pulumi.getter(name="customerGatewayId")
3166
+ def customer_gateway_id(self) -> str:
2103
3167
  """
2104
- IKE Mode.
3168
+ The ID of the user gateway associated with the tunnel.> This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
2105
3169
  """
2106
- return pulumi.get(self, "ike_mode")
3170
+ return pulumi.get(self, "customer_gateway_id")
2107
3171
 
2108
3172
  @property
2109
- @pulumi.getter(name="ikePfs")
2110
- def ike_pfs(self) -> str:
3173
+ @pulumi.getter(name="effectImmediately")
3174
+ def effect_immediately(self) -> bool:
2111
3175
  """
2112
- DH Group.
3176
+ Specifies whether to immediately start IPsec negotiations after the configuration takes effect. Valid values:- **true**: immediately starts IPsec negotiations after the configuration is complete.- **false** (default): starts IPsec negotiations when inbound traffic is received.
2113
3177
  """
2114
- return pulumi.get(self, "ike_pfs")
3178
+ return pulumi.get(self, "effect_immediately")
2115
3179
 
2116
3180
  @property
2117
- @pulumi.getter(name="ikeVersion")
2118
- def ike_version(self) -> str:
3181
+ @pulumi.getter(name="enableDpd")
3182
+ def enable_dpd(self) -> bool:
2119
3183
  """
2120
- IKE Version.
3184
+ Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:-**true** (default): enable the DPD function. IPsec initiator will send DPD message to check whether the peer device is alive. If the peer device does not receive a correct response within the set time, it is considered that the peer has been disconnected. IPsec will delete ISAKMP SA and the corresponding IPsec SA, and the security tunnel will also be deleted.-**false**: If the DPD function is disabled, the IPsec initiator does not send DPD detection packets.
2121
3185
  """
2122
- return pulumi.get(self, "ike_version")
3186
+ return pulumi.get(self, "enable_dpd")
2123
3187
 
2124
3188
  @property
2125
- @pulumi.getter(name="localId")
2126
- def local_id(self) -> str:
3189
+ @pulumi.getter(name="enableNatTraversal")
3190
+ def enable_nat_traversal(self) -> bool:
2127
3191
  """
2128
- The local Id.
3192
+ Whether the NAT crossing function is enabled for the tunnel. Value:-**true** (default): Enables the NAT Traversal function. When enabled, the IKE negotiation process deletes the verification process of the UDP port number and realizes the discovery function of the NAT gateway device in the tunnel.-**false**: does not enable the NAT Traversal function.
2129
3193
  """
2130
- return pulumi.get(self, "local_id")
3194
+ return pulumi.get(self, "enable_nat_traversal")
2131
3195
 
2132
3196
  @property
2133
- @pulumi.getter
2134
- def psk(self) -> str:
3197
+ @pulumi.getter(name="enableTunnelsBgp")
3198
+ def enable_tunnels_bgp(self) -> bool:
2135
3199
  """
2136
- Preshared secret key.
3200
+ You can configure this parameter when you create a vpn attachment in dual-tunnel mode.Whether to enable the BGP function for the tunnel. Value: **true** or **false** (default).> before adding BGP configuration, we recommend that you understand the working mechanism and usage restrictions of the BGP dynamic routing function.
2137
3201
  """
2138
- return pulumi.get(self, "psk")
3202
+ return pulumi.get(self, "enable_tunnels_bgp")
2139
3203
 
2140
3204
  @property
2141
- @pulumi.getter(name="remoteId")
2142
- def remote_id(self) -> str:
3205
+ @pulumi.getter(name="healthCheckConfigs")
3206
+ def health_check_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult']:
2143
3207
  """
2144
- Remote ID.
3208
+ This parameter is supported if you create an vpn attachment in single-tunnel mode.Health check configuration information.
2145
3209
  """
2146
- return pulumi.get(self, "remote_id")
2147
-
3210
+ return pulumi.get(self, "health_check_configs")
2148
3211
 
2149
- @pulumi.output_type
2150
- class GetConnectionsConnectionTunnelOptionsSpecificationTunnelIpsecConfigResult(dict):
2151
- def __init__(__self__, *,
2152
- ipsec_auth_alg: str,
2153
- ipsec_enc_alg: str,
2154
- ipsec_lifetime: int,
2155
- ipsec_pfs: str):
3212
+ @property
3213
+ @pulumi.getter
3214
+ def id(self) -> str:
2156
3215
  """
2157
- :param str ipsec_auth_alg: IPsec Auth algorithm.
2158
- :param str ipsec_enc_alg: IPsec Encript algorithm.
2159
- :param int ipsec_lifetime: IPsec lifetime.
2160
- :param str ipsec_pfs: DH Group.
3216
+ The ID of the resource supplied above.
2161
3217
  """
2162
- pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
2163
- pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
2164
- pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
2165
- pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
3218
+ return pulumi.get(self, "id")
2166
3219
 
2167
3220
  @property
2168
- @pulumi.getter(name="ipsecAuthAlg")
2169
- def ipsec_auth_alg(self) -> str:
3221
+ @pulumi.getter(name="ikeConfigs")
3222
+ def ike_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIkeConfigResult']:
2170
3223
  """
2171
- IPsec Auth algorithm.
3224
+ The configurations of Phase 1 negotiations. - This parameter is supported if you create an vpn attachment in single-tunnel mode.
2172
3225
  """
2173
- return pulumi.get(self, "ipsec_auth_alg")
3226
+ return pulumi.get(self, "ike_configs")
2174
3227
 
2175
3228
  @property
2176
- @pulumi.getter(name="ipsecEncAlg")
2177
- def ipsec_enc_alg(self) -> str:
3229
+ @pulumi.getter(name="internetIp")
3230
+ def internet_ip(self) -> str:
2178
3231
  """
2179
- IPsec Encript algorithm.
3232
+ The local internet IP in Tunnel.
2180
3233
  """
2181
- return pulumi.get(self, "ipsec_enc_alg")
3234
+ return pulumi.get(self, "internet_ip")
2182
3235
 
2183
3236
  @property
2184
- @pulumi.getter(name="ipsecLifetime")
2185
- def ipsec_lifetime(self) -> int:
3237
+ @pulumi.getter(name="ipsecConfigs")
3238
+ def ipsec_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIpsecConfigResult']:
2186
3239
  """
2187
- IPsec lifetime.
3240
+ Configuration negotiated in the second stage. - This parameter is supported if you create an vpn attachment in single-tunnel mode.
2188
3241
  """
2189
- return pulumi.get(self, "ipsec_lifetime")
3242
+ return pulumi.get(self, "ipsec_configs")
2190
3243
 
2191
3244
  @property
2192
- @pulumi.getter(name="ipsecPfs")
2193
- def ipsec_pfs(self) -> str:
3245
+ @pulumi.getter(name="localSubnet")
3246
+ def local_subnet(self) -> str:
2194
3247
  """
2195
- DH Group.
3248
+ The CIDR block on the VPC side. The CIDR block is used in Phase 2 negotiations.Separate multiple CIDR blocks with commas (,). Example: 192.168.1.0/24,192.168.2.0/24.The following routing modes are supported:- If you set LocalSubnet and RemoteSubnet to 0.0.0.0/0, the routing mode of the IPsec-VPN connection is set to Destination Routing Mode.- If you set LocalSubnet and RemoteSubnet to specific CIDR blocks, the routing mode of the IPsec-VPN connection is set to Protected Data Flows.
2196
3249
  """
2197
- return pulumi.get(self, "ipsec_pfs")
3250
+ return pulumi.get(self, "local_subnet")
2198
3251
 
3252
+ @property
3253
+ @pulumi.getter(name="networkType")
3254
+ def network_type(self) -> str:
3255
+ """
3256
+ network type- **public** (default)- **private**
3257
+ """
3258
+ return pulumi.get(self, "network_type")
2199
3259
 
2200
- @pulumi.output_type
2201
- class GetConnectionsConnectionVcoHealthCheckResult(dict):
2202
- def __init__(__self__, *,
2203
- dip: Optional[str] = None,
2204
- enable: Optional[str] = None,
2205
- interval: Optional[int] = None,
2206
- retry: Optional[int] = None,
2207
- sip: Optional[str] = None,
2208
- status: Optional[str] = None):
3260
+ @property
3261
+ @pulumi.getter(name="remoteSubnet")
3262
+ def remote_subnet(self) -> str:
2209
3263
  """
2210
- :param str dip: The destination ip address.
2211
- :param str enable: The health check on status. Valid values: `true`, `false`.
2212
- :param int interval: The time interval between health checks.
2213
- :param int retry: The number of retries for health checks issued.
2214
- :param str sip: The source ip address.
2215
- :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
3264
+ The CIDR block on the data center side. This CIDR block is used in Phase 2 negotiations.Separate multiple CIDR blocks with commas (,). Example: 192.168.3.0/24,192.168.4.0/24.The following routing modes are supported:- If you set LocalSubnet and RemoteSubnet to 0.0.0.0/0, the routing mode of the IPsec-VPN connection is set to Destination Routing Mode.- If you set LocalSubnet and RemoteSubnet to specific CIDR blocks, the routing mode of the IPsec-VPN connection is set to Protected Data Flows.
2216
3265
  """
2217
- if dip is not None:
2218
- pulumi.set(__self__, "dip", dip)
2219
- if enable is not None:
2220
- pulumi.set(__self__, "enable", enable)
2221
- if interval is not None:
2222
- pulumi.set(__self__, "interval", interval)
2223
- if retry is not None:
2224
- pulumi.set(__self__, "retry", retry)
2225
- if sip is not None:
2226
- pulumi.set(__self__, "sip", sip)
2227
- if status is not None:
2228
- pulumi.set(__self__, "status", status)
3266
+ return pulumi.get(self, "remote_subnet")
2229
3267
 
2230
3268
  @property
2231
- @pulumi.getter
2232
- def dip(self) -> Optional[str]:
3269
+ @pulumi.getter(name="resourceGroupId")
3270
+ def resource_group_id(self) -> str:
2233
3271
  """
2234
- The destination ip address.
3272
+ The ID of the resource group
2235
3273
  """
2236
- return pulumi.get(self, "dip")
3274
+ return pulumi.get(self, "resource_group_id")
2237
3275
 
2238
3276
  @property
2239
3277
  @pulumi.getter
2240
- def enable(self) -> Optional[str]:
3278
+ def status(self) -> str:
2241
3279
  """
2242
- The health check on status. Valid values: `true`, `false`.
3280
+ The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2243
3281
  """
2244
- return pulumi.get(self, "enable")
3282
+ return pulumi.get(self, "status")
2245
3283
 
2246
3284
  @property
2247
3285
  @pulumi.getter
2248
- def interval(self) -> Optional[int]:
3286
+ def tags(self) -> Mapping[str, str]:
2249
3287
  """
2250
- The time interval between health checks.
3288
+ Tags
2251
3289
  """
2252
- return pulumi.get(self, "interval")
3290
+ return pulumi.get(self, "tags")
2253
3291
 
2254
3292
  @property
2255
- @pulumi.getter
2256
- def retry(self) -> Optional[int]:
3293
+ @pulumi.getter(name="tunnelOptionsSpecifications")
3294
+ def tunnel_options_specifications(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationResult']:
2257
3295
  """
2258
- The number of retries for health checks issued.
3296
+ Configure the tunnel.-You can configure parameters in the **tunnel_options_specification** array when you create a vpn attachment in dual-tunnel mode.-When creating a vpn attachment in dual-tunnel mode, you must add both tunnels for the vpn attachment to ensure that the vpn attachment has link redundancy. Only two tunnels can be added to a vpn attachment.
2259
3297
  """
2260
- return pulumi.get(self, "retry")
3298
+ return pulumi.get(self, "tunnel_options_specifications")
2261
3299
 
2262
3300
  @property
2263
- @pulumi.getter
2264
- def sip(self) -> Optional[str]:
3301
+ @pulumi.getter(name="vpnAttachmentName")
3302
+ def vpn_attachment_name(self) -> str:
2265
3303
  """
2266
- The source ip address.
3304
+ vpn attachment name
2267
3305
  """
2268
- return pulumi.get(self, "sip")
3306
+ return pulumi.get(self, "vpn_attachment_name")
2269
3307
 
2270
3308
  @property
2271
- @pulumi.getter
2272
- def status(self) -> Optional[str]:
3309
+ @pulumi.getter(name="vpnConnectionId")
3310
+ def vpn_connection_id(self) -> str:
2273
3311
  """
2274
- The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
3312
+ The first ID of the resource
2275
3313
  """
2276
- return pulumi.get(self, "status")
3314
+ return pulumi.get(self, "vpn_connection_id")
2277
3315
 
2278
3316
 
2279
3317
  @pulumi.output_type
2280
- class GetConnectionsConnectionVpnBgpConfigResult(dict):
3318
+ class GetGatewayVpnAttachmentsAttachmentBgpConfigResult(dict):
2281
3319
  def __init__(__self__, *,
2282
- auth_key: Optional[str] = None,
2283
- local_asn: Optional[int] = None,
2284
- local_bgp_ip: Optional[str] = None,
2285
- peer_asn: Optional[int] = None,
2286
- peer_bgp_ip: Optional[str] = None,
2287
- status: Optional[str] = None,
2288
- tunnel_cidr: Optional[str] = None):
2289
- """
2290
- :param str auth_key: The authentication keys for BGP routing protocols.
2291
- :param int local_asn: Local asn.
2292
- :param str local_bgp_ip: Local bgp IP.
2293
- :param int peer_asn: The counterpart autonomous system number.
2294
- :param str peer_bgp_ip: The BGP address on the other side.
2295
- :param str status: The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
2296
- :param str tunnel_cidr: BGP Tunnel CIDR.
2297
- """
2298
- if auth_key is not None:
2299
- pulumi.set(__self__, "auth_key", auth_key)
2300
- if local_asn is not None:
2301
- pulumi.set(__self__, "local_asn", local_asn)
2302
- if local_bgp_ip is not None:
2303
- pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
2304
- if peer_asn is not None:
2305
- pulumi.set(__self__, "peer_asn", peer_asn)
2306
- if peer_bgp_ip is not None:
2307
- pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
2308
- if status is not None:
2309
- pulumi.set(__self__, "status", status)
2310
- if tunnel_cidr is not None:
2311
- pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
2312
-
2313
- @property
2314
- @pulumi.getter(name="authKey")
2315
- def auth_key(self) -> Optional[str]:
3320
+ local_asn: int,
3321
+ local_bgp_ip: str,
3322
+ status: str,
3323
+ tunnel_cidr: str):
2316
3324
  """
2317
- The authentication keys for BGP routing protocols.
3325
+ :param int local_asn: The number of the local (Alibaba Cloud) autonomous system of the tunnel. The value range of the autonomous system number is **1** to **4294967295**. Default value: **45104**.> We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. The private number range of the autonomous system number please consult the document yourself.
3326
+ :param str local_bgp_ip: The local BGP address of the tunnel (on the Alibaba Cloud side). This address is an IP address in the BGP network segment.
3327
+ :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
3328
+ :param str tunnel_cidr: The BGP network segment of the tunnel. The network segment must be a network segment with a mask length of 30 in 169.254.0.0/16, and 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, and 169.254.169.252/30.> the network segments of two tunnels under an IPsec connection cannot be the same.
2318
3329
  """
2319
- return pulumi.get(self, "auth_key")
3330
+ pulumi.set(__self__, "local_asn", local_asn)
3331
+ pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
3332
+ pulumi.set(__self__, "status", status)
3333
+ pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
2320
3334
 
2321
3335
  @property
2322
3336
  @pulumi.getter(name="localAsn")
2323
- def local_asn(self) -> Optional[int]:
3337
+ def local_asn(self) -> int:
2324
3338
  """
2325
- Local asn.
3339
+ The number of the local (Alibaba Cloud) autonomous system of the tunnel. The value range of the autonomous system number is **1** to **4294967295**. Default value: **45104**.> We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. The private number range of the autonomous system number please consult the document yourself.
2326
3340
  """
2327
3341
  return pulumi.get(self, "local_asn")
2328
3342
 
2329
3343
  @property
2330
3344
  @pulumi.getter(name="localBgpIp")
2331
- def local_bgp_ip(self) -> Optional[str]:
3345
+ def local_bgp_ip(self) -> str:
2332
3346
  """
2333
- Local bgp IP.
3347
+ The local BGP address of the tunnel (on the Alibaba Cloud side). This address is an IP address in the BGP network segment.
2334
3348
  """
2335
3349
  return pulumi.get(self, "local_bgp_ip")
2336
3350
 
2337
- @property
2338
- @pulumi.getter(name="peerAsn")
2339
- def peer_asn(self) -> Optional[int]:
2340
- """
2341
- The counterpart autonomous system number.
2342
- """
2343
- return pulumi.get(self, "peer_asn")
2344
-
2345
- @property
2346
- @pulumi.getter(name="peerBgpIp")
2347
- def peer_bgp_ip(self) -> Optional[str]:
2348
- """
2349
- The BGP address on the other side.
2350
- """
2351
- return pulumi.get(self, "peer_bgp_ip")
2352
-
2353
3351
  @property
2354
3352
  @pulumi.getter
2355
- def status(self) -> Optional[str]:
3353
+ def status(self) -> str:
2356
3354
  """
2357
- The negotiation status of the BGP routing protocol. Valid values: `success`, `false`.
3355
+ The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2358
3356
  """
2359
3357
  return pulumi.get(self, "status")
2360
3358
 
2361
3359
  @property
2362
3360
  @pulumi.getter(name="tunnelCidr")
2363
- def tunnel_cidr(self) -> Optional[str]:
3361
+ def tunnel_cidr(self) -> str:
2364
3362
  """
2365
- BGP Tunnel CIDR.
3363
+ The BGP network segment of the tunnel. The network segment must be a network segment with a mask length of 30 in 169.254.0.0/16, and 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, and 169.254.169.252/30.> the network segments of two tunnels under an IPsec connection cannot be the same.
2366
3364
  """
2367
3365
  return pulumi.get(self, "tunnel_cidr")
2368
3366
 
2369
3367
 
2370
3368
  @pulumi.output_type
2371
- class GetCustomerGatewaysGatewayResult(dict):
3369
+ class GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult(dict):
2372
3370
  def __init__(__self__, *,
2373
- asn: int,
2374
- create_time: str,
2375
- description: str,
2376
- id: str,
2377
- ip_address: str,
2378
- name: str):
3371
+ dip: str,
3372
+ enable: bool,
3373
+ interval: int,
3374
+ policy: str,
3375
+ retry: int,
3376
+ sip: str,
3377
+ status: str):
2379
3378
  """
2380
- :param int asn: The autonomous system number of the local data center gateway device of the VPN customer gateway.
2381
- :param str create_time: The creation time of the VPN customer gateway.
2382
- :param str description: The description of the VPN customer gateway.
2383
- :param str id: ID of the VPN customer gateway .
2384
- :param str ip_address: The ip address of the VPN customer gateway.
2385
- :param str name: The name of the VPN customer gateway.
3379
+ :param str dip: Target IP.
3380
+ :param bool enable: Whether health check is enabled:-**false**: not enabled. -**true**: enabled.
3381
+ :param int interval: The health check retry interval, in seconds.
3382
+ :param str policy: Whether to revoke the published route when the health check fails- **revoke_route**(default): withdraws published routes.- **reserve_route**: does not withdraw published routes.
3383
+ :param int retry: Number of retries for health check.
3384
+ :param str sip: SOURCE IP.
3385
+ :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2386
3386
  """
2387
- pulumi.set(__self__, "asn", asn)
2388
- pulumi.set(__self__, "create_time", create_time)
2389
- pulumi.set(__self__, "description", description)
2390
- pulumi.set(__self__, "id", id)
2391
- pulumi.set(__self__, "ip_address", ip_address)
2392
- pulumi.set(__self__, "name", name)
3387
+ pulumi.set(__self__, "dip", dip)
3388
+ pulumi.set(__self__, "enable", enable)
3389
+ pulumi.set(__self__, "interval", interval)
3390
+ pulumi.set(__self__, "policy", policy)
3391
+ pulumi.set(__self__, "retry", retry)
3392
+ pulumi.set(__self__, "sip", sip)
3393
+ pulumi.set(__self__, "status", status)
2393
3394
 
2394
3395
  @property
2395
3396
  @pulumi.getter
2396
- def asn(self) -> int:
3397
+ def dip(self) -> str:
2397
3398
  """
2398
- The autonomous system number of the local data center gateway device of the VPN customer gateway.
3399
+ Target IP.
2399
3400
  """
2400
- return pulumi.get(self, "asn")
3401
+ return pulumi.get(self, "dip")
2401
3402
 
2402
3403
  @property
2403
- @pulumi.getter(name="createTime")
2404
- def create_time(self) -> str:
3404
+ @pulumi.getter
3405
+ def enable(self) -> bool:
2405
3406
  """
2406
- The creation time of the VPN customer gateway.
3407
+ Whether health check is enabled:-**false**: not enabled. -**true**: enabled.
2407
3408
  """
2408
- return pulumi.get(self, "create_time")
3409
+ return pulumi.get(self, "enable")
2409
3410
 
2410
3411
  @property
2411
3412
  @pulumi.getter
2412
- def description(self) -> str:
3413
+ def interval(self) -> int:
2413
3414
  """
2414
- The description of the VPN customer gateway.
3415
+ The health check retry interval, in seconds.
2415
3416
  """
2416
- return pulumi.get(self, "description")
3417
+ return pulumi.get(self, "interval")
2417
3418
 
2418
3419
  @property
2419
3420
  @pulumi.getter
2420
- def id(self) -> str:
3421
+ def policy(self) -> str:
2421
3422
  """
2422
- ID of the VPN customer gateway .
3423
+ Whether to revoke the published route when the health check fails- **revoke_route**(default): withdraws published routes.- **reserve_route**: does not withdraw published routes.
2423
3424
  """
2424
- return pulumi.get(self, "id")
3425
+ return pulumi.get(self, "policy")
2425
3426
 
2426
3427
  @property
2427
- @pulumi.getter(name="ipAddress")
2428
- def ip_address(self) -> str:
3428
+ @pulumi.getter
3429
+ def retry(self) -> int:
2429
3430
  """
2430
- The ip address of the VPN customer gateway.
3431
+ Number of retries for health check.
2431
3432
  """
2432
- return pulumi.get(self, "ip_address")
3433
+ return pulumi.get(self, "retry")
2433
3434
 
2434
3435
  @property
2435
3436
  @pulumi.getter
2436
- def name(self) -> str:
2437
- """
2438
- The name of the VPN customer gateway.
2439
- """
2440
- return pulumi.get(self, "name")
2441
-
2442
-
2443
- @pulumi.output_type
2444
- class GetGatewayVcoRoutesRouteResult(dict):
2445
- def __init__(__self__, *,
2446
- as_path: str,
2447
- create_time: str,
2448
- id: str,
2449
- next_hop: str,
2450
- route_dest: str,
2451
- source: str,
2452
- status: str,
2453
- vpn_connection_id: str,
2454
- weight: int):
3437
+ def sip(self) -> str:
2455
3438
  """
2456
- :param str as_path: List of autonomous system numbers through which BGP routing entries pass.
2457
- :param str create_time: The creation time of the VPN destination route.
2458
- :param str id: The ID of the Vpn Gateway Vco Routes.
2459
- :param str next_hop: The next hop of the destination route.
2460
- :param str route_dest: The destination network segment of the destination route.
2461
- :param str source: The source CIDR block of the destination route.
2462
- :param str status: The status of the vpn route entry. Valid values: `normal`, `published`.
2463
- :param str vpn_connection_id: The id of the vpn connection.
2464
- :param int weight: The weight value of the destination route.
3439
+ SOURCE IP.
2465
3440
  """
2466
- pulumi.set(__self__, "as_path", as_path)
2467
- pulumi.set(__self__, "create_time", create_time)
2468
- pulumi.set(__self__, "id", id)
2469
- pulumi.set(__self__, "next_hop", next_hop)
2470
- pulumi.set(__self__, "route_dest", route_dest)
2471
- pulumi.set(__self__, "source", source)
2472
- pulumi.set(__self__, "status", status)
2473
- pulumi.set(__self__, "vpn_connection_id", vpn_connection_id)
2474
- pulumi.set(__self__, "weight", weight)
3441
+ return pulumi.get(self, "sip")
2475
3442
 
2476
3443
  @property
2477
- @pulumi.getter(name="asPath")
2478
- def as_path(self) -> str:
3444
+ @pulumi.getter
3445
+ def status(self) -> str:
2479
3446
  """
2480
- List of autonomous system numbers through which BGP routing entries pass.
3447
+ The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2481
3448
  """
2482
- return pulumi.get(self, "as_path")
3449
+ return pulumi.get(self, "status")
2483
3450
 
2484
- @property
2485
- @pulumi.getter(name="createTime")
2486
- def create_time(self) -> str:
2487
- """
2488
- The creation time of the VPN destination route.
2489
- """
2490
- return pulumi.get(self, "create_time")
2491
3451
 
2492
- @property
2493
- @pulumi.getter
2494
- def id(self) -> str:
3452
+ @pulumi.output_type
3453
+ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
3454
+ def __init__(__self__, *,
3455
+ ike_auth_alg: str,
3456
+ ike_enc_alg: str,
3457
+ ike_lifetime: int,
3458
+ ike_mode: str,
3459
+ ike_pfs: str,
3460
+ ike_version: str,
3461
+ local_id: str,
3462
+ psk: str,
3463
+ remote_id: str):
2495
3464
  """
2496
- The ID of the Vpn Gateway Vco Routes.
3465
+ :param str ike_auth_alg: The authentication algorithm negotiated in the first stage. Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
3466
+ :param str ike_enc_alg: The encryption algorithm negotiated in the first stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
3467
+ :param int ike_lifetime: The life cycle of SA negotiated in the first stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
3468
+ :param str ike_mode: IKE version of the negotiation mode. Value: **main** or **aggressive**. Default value: **main**.-**main**: main mode, high security during negotiation.-**aggressive**: Savage mode, fast negotiation and high negotiation success rate.
3469
+ :param str ike_pfs: The first stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **group1**, **group2**, **group5**, **group14**.
3470
+ :param str ike_version: Version of the IKE protocol. Value: **ikev1** or **ikev2**. Default value: **ikev2**.Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for multiple network segments.
3471
+ :param str local_id: The identifier of the local end of the tunnel (Alibaba Cloud side), which is used for the first phase of negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the tunnel.**LocalId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
3472
+ :param str psk: The pre-shared key is used for identity authentication between the tunnel and the tunnel peer.-The key can be 1 to 100 characters in length. It supports numbers, upper and lower case English letters, and characters on the right. It cannot contain spaces. '''~! \\'@#$%^& *()_-+ ={}[]|;:',./? '''-If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. > The pre-shared key of the tunnel and the tunnel peer must be the same, otherwise the system cannot establish the tunnel normally.
3473
+ :param str remote_id: Identifier of the tunnel peer, which is used for the first-stage negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the user gateway associated with the tunnel.- **RemoteId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
2497
3474
  """
2498
- return pulumi.get(self, "id")
3475
+ pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
3476
+ pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
3477
+ pulumi.set(__self__, "ike_lifetime", ike_lifetime)
3478
+ pulumi.set(__self__, "ike_mode", ike_mode)
3479
+ pulumi.set(__self__, "ike_pfs", ike_pfs)
3480
+ pulumi.set(__self__, "ike_version", ike_version)
3481
+ pulumi.set(__self__, "local_id", local_id)
3482
+ pulumi.set(__self__, "psk", psk)
3483
+ pulumi.set(__self__, "remote_id", remote_id)
2499
3484
 
2500
3485
  @property
2501
- @pulumi.getter(name="nextHop")
2502
- def next_hop(self) -> str:
3486
+ @pulumi.getter(name="ikeAuthAlg")
3487
+ def ike_auth_alg(self) -> str:
2503
3488
  """
2504
- The next hop of the destination route.
3489
+ The authentication algorithm negotiated in the first stage. Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
2505
3490
  """
2506
- return pulumi.get(self, "next_hop")
3491
+ return pulumi.get(self, "ike_auth_alg")
2507
3492
 
2508
3493
  @property
2509
- @pulumi.getter(name="routeDest")
2510
- def route_dest(self) -> str:
3494
+ @pulumi.getter(name="ikeEncAlg")
3495
+ def ike_enc_alg(self) -> str:
2511
3496
  """
2512
- The destination network segment of the destination route.
3497
+ The encryption algorithm negotiated in the first stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
2513
3498
  """
2514
- return pulumi.get(self, "route_dest")
3499
+ return pulumi.get(self, "ike_enc_alg")
2515
3500
 
2516
3501
  @property
2517
- @pulumi.getter
2518
- def source(self) -> str:
3502
+ @pulumi.getter(name="ikeLifetime")
3503
+ def ike_lifetime(self) -> int:
2519
3504
  """
2520
- The source CIDR block of the destination route.
3505
+ The life cycle of SA negotiated in the first stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
2521
3506
  """
2522
- return pulumi.get(self, "source")
3507
+ return pulumi.get(self, "ike_lifetime")
2523
3508
 
2524
3509
  @property
2525
- @pulumi.getter
2526
- def status(self) -> str:
3510
+ @pulumi.getter(name="ikeMode")
3511
+ def ike_mode(self) -> str:
2527
3512
  """
2528
- The status of the vpn route entry. Valid values: `normal`, `published`.
3513
+ IKE version of the negotiation mode. Value: **main** or **aggressive**. Default value: **main**.-**main**: main mode, high security during negotiation.-**aggressive**: Savage mode, fast negotiation and high negotiation success rate.
2529
3514
  """
2530
- return pulumi.get(self, "status")
3515
+ return pulumi.get(self, "ike_mode")
2531
3516
 
2532
3517
  @property
2533
- @pulumi.getter(name="vpnConnectionId")
2534
- def vpn_connection_id(self) -> str:
3518
+ @pulumi.getter(name="ikePfs")
3519
+ def ike_pfs(self) -> str:
2535
3520
  """
2536
- The id of the vpn connection.
3521
+ The first stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **group1**, **group2**, **group5**, **group14**.
2537
3522
  """
2538
- return pulumi.get(self, "vpn_connection_id")
3523
+ return pulumi.get(self, "ike_pfs")
2539
3524
 
2540
3525
  @property
2541
- @pulumi.getter
2542
- def weight(self) -> int:
3526
+ @pulumi.getter(name="ikeVersion")
3527
+ def ike_version(self) -> str:
2543
3528
  """
2544
- The weight value of the destination route.
3529
+ Version of the IKE protocol. Value: **ikev1** or **ikev2**. Default value: **ikev2**.Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for multiple network segments.
2545
3530
  """
2546
- return pulumi.get(self, "weight")
2547
-
3531
+ return pulumi.get(self, "ike_version")
2548
3532
 
2549
- @pulumi.output_type
2550
- class GetGatewayVpnAttachmentsAttachmentResult(dict):
2551
- def __init__(__self__, *,
2552
- bgp_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentBgpConfigResult'],
2553
- connection_status: str,
2554
- create_time: str,
2555
- customer_gateway_id: str,
2556
- effect_immediately: bool,
2557
- health_check_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult'],
2558
- id: str,
2559
- ike_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIkeConfigResult'],
2560
- internet_ip: str,
2561
- ipsec_configs: Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIpsecConfigResult'],
2562
- local_subnet: str,
2563
- network_type: str,
2564
- remote_subnet: str,
2565
- status: str,
2566
- vpn_attachment_name: str,
2567
- vpn_connection_id: str):
2568
- """
2569
- :param Sequence['GetGatewayVpnAttachmentsAttachmentBgpConfigArgs'] bgp_configs: The configurations of the BGP routing protocol.
2570
- :param str connection_status: The status of the IPsec-VPN connection.
2571
- :param str create_time: The creation time of the resource.
2572
- :param str customer_gateway_id: The ID of the customer gateway.
2573
- :param bool effect_immediately: Indicates whether IPsec-VPN negotiations are initiated immediately. Valid values.
2574
- :param Sequence['GetGatewayVpnAttachmentsAttachmentHealthCheckConfigArgs'] health_check_configs: The health check configurations.
2575
- :param str id: The ID of the Vpn Attachment.
2576
- :param Sequence['GetGatewayVpnAttachmentsAttachmentIkeConfigArgs'] ike_configs: Configuration negotiated in the second stage.
2577
- :param str internet_ip: The internet ip of the resource. The cen.TransitRouterVpnAttachment resource will not have a value until after it is created.
2578
- :param Sequence['GetGatewayVpnAttachmentsAttachmentIpsecConfigArgs'] ipsec_configs: The configuration of Phase 2 negotiations.
2579
- :param str local_subnet: The CIDR block of the virtual private cloud (VPC).
2580
- :param str network_type: The network type.
2581
- :param str remote_subnet: The CIDR block of the on-premises data center.
2582
- :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2583
- :param str vpn_attachment_name: The name of the IPsec-VPN connection.
2584
- :param str vpn_connection_id: The first ID of the resource.
2585
- """
2586
- pulumi.set(__self__, "bgp_configs", bgp_configs)
2587
- pulumi.set(__self__, "connection_status", connection_status)
2588
- pulumi.set(__self__, "create_time", create_time)
2589
- pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
2590
- pulumi.set(__self__, "effect_immediately", effect_immediately)
2591
- pulumi.set(__self__, "health_check_configs", health_check_configs)
2592
- pulumi.set(__self__, "id", id)
2593
- pulumi.set(__self__, "ike_configs", ike_configs)
2594
- pulumi.set(__self__, "internet_ip", internet_ip)
2595
- pulumi.set(__self__, "ipsec_configs", ipsec_configs)
2596
- pulumi.set(__self__, "local_subnet", local_subnet)
2597
- pulumi.set(__self__, "network_type", network_type)
2598
- pulumi.set(__self__, "remote_subnet", remote_subnet)
2599
- pulumi.set(__self__, "status", status)
2600
- pulumi.set(__self__, "vpn_attachment_name", vpn_attachment_name)
2601
- pulumi.set(__self__, "vpn_connection_id", vpn_connection_id)
3533
+ @property
3534
+ @pulumi.getter(name="localId")
3535
+ def local_id(self) -> str:
3536
+ """
3537
+ The identifier of the local end of the tunnel (Alibaba Cloud side), which is used for the first phase of negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the tunnel.**LocalId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
3538
+ """
3539
+ return pulumi.get(self, "local_id")
2602
3540
 
2603
3541
  @property
2604
- @pulumi.getter(name="bgpConfigs")
2605
- def bgp_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentBgpConfigResult']:
3542
+ @pulumi.getter
3543
+ def psk(self) -> str:
2606
3544
  """
2607
- The configurations of the BGP routing protocol.
3545
+ The pre-shared key is used for identity authentication between the tunnel and the tunnel peer.-The key can be 1 to 100 characters in length. It supports numbers, upper and lower case English letters, and characters on the right. It cannot contain spaces. '''~! \\'@#$%^& *()_-+ ={}[]|;:',./? '''-If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. > The pre-shared key of the tunnel and the tunnel peer must be the same, otherwise the system cannot establish the tunnel normally.
2608
3546
  """
2609
- return pulumi.get(self, "bgp_configs")
3547
+ return pulumi.get(self, "psk")
2610
3548
 
2611
3549
  @property
2612
- @pulumi.getter(name="connectionStatus")
2613
- def connection_status(self) -> str:
3550
+ @pulumi.getter(name="remoteId")
3551
+ def remote_id(self) -> str:
2614
3552
  """
2615
- The status of the IPsec-VPN connection.
3553
+ Identifier of the tunnel peer, which is used for the first-stage negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the user gateway associated with the tunnel.- **RemoteId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
2616
3554
  """
2617
- return pulumi.get(self, "connection_status")
3555
+ return pulumi.get(self, "remote_id")
2618
3556
 
2619
- @property
2620
- @pulumi.getter(name="createTime")
2621
- def create_time(self) -> str:
3557
+
3558
+ @pulumi.output_type
3559
+ class GetGatewayVpnAttachmentsAttachmentIpsecConfigResult(dict):
3560
+ def __init__(__self__, *,
3561
+ ipsec_auth_alg: str,
3562
+ ipsec_enc_alg: str,
3563
+ ipsec_lifetime: int,
3564
+ ipsec_pfs: str):
2622
3565
  """
2623
- The creation time of the resource.
3566
+ :param str ipsec_auth_alg: The second stage negotiated authentication algorithm.Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
3567
+ :param str ipsec_enc_alg: The encryption algorithm negotiated in the second stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
3568
+ :param int ipsec_lifetime: The life cycle of SA negotiated in the second stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
3569
+ :param str ipsec_pfs: The second stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **disabled**, **group1**, **group2**, **group5**, **group14**.
2624
3570
  """
2625
- return pulumi.get(self, "create_time")
3571
+ pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
3572
+ pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
3573
+ pulumi.set(__self__, "ipsec_lifetime", ipsec_lifetime)
3574
+ pulumi.set(__self__, "ipsec_pfs", ipsec_pfs)
2626
3575
 
2627
3576
  @property
2628
- @pulumi.getter(name="customerGatewayId")
2629
- def customer_gateway_id(self) -> str:
3577
+ @pulumi.getter(name="ipsecAuthAlg")
3578
+ def ipsec_auth_alg(self) -> str:
2630
3579
  """
2631
- The ID of the customer gateway.
3580
+ The second stage negotiated authentication algorithm.Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
2632
3581
  """
2633
- return pulumi.get(self, "customer_gateway_id")
3582
+ return pulumi.get(self, "ipsec_auth_alg")
2634
3583
 
2635
3584
  @property
2636
- @pulumi.getter(name="effectImmediately")
2637
- def effect_immediately(self) -> bool:
3585
+ @pulumi.getter(name="ipsecEncAlg")
3586
+ def ipsec_enc_alg(self) -> str:
2638
3587
  """
2639
- Indicates whether IPsec-VPN negotiations are initiated immediately. Valid values.
3588
+ The encryption algorithm negotiated in the second stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
2640
3589
  """
2641
- return pulumi.get(self, "effect_immediately")
3590
+ return pulumi.get(self, "ipsec_enc_alg")
2642
3591
 
2643
3592
  @property
2644
- @pulumi.getter(name="healthCheckConfigs")
2645
- def health_check_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult']:
3593
+ @pulumi.getter(name="ipsecLifetime")
3594
+ def ipsec_lifetime(self) -> int:
2646
3595
  """
2647
- The health check configurations.
3596
+ The life cycle of SA negotiated in the second stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
2648
3597
  """
2649
- return pulumi.get(self, "health_check_configs")
3598
+ return pulumi.get(self, "ipsec_lifetime")
2650
3599
 
2651
3600
  @property
2652
- @pulumi.getter
2653
- def id(self) -> str:
3601
+ @pulumi.getter(name="ipsecPfs")
3602
+ def ipsec_pfs(self) -> str:
2654
3603
  """
2655
- The ID of the Vpn Attachment.
3604
+ The second stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **disabled**, **group1**, **group2**, **group5**, **group14**.
2656
3605
  """
2657
- return pulumi.get(self, "id")
3606
+ return pulumi.get(self, "ipsec_pfs")
3607
+
3608
+
3609
+ @pulumi.output_type
3610
+ class GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationResult(dict):
3611
+ def __init__(__self__, *,
3612
+ customer_gateway_id: str,
3613
+ enable_dpd: bool,
3614
+ enable_nat_traversal: bool,
3615
+ internet_ip: str,
3616
+ role: str,
3617
+ state: str,
3618
+ status: str,
3619
+ tunnel_bgp_config: 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelBgpConfigResult',
3620
+ tunnel_id: str,
3621
+ tunnel_ike_config: 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIkeConfigResult',
3622
+ tunnel_index: int,
3623
+ tunnel_ipsec_config: 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIpsecConfigResult',
3624
+ zone_no: str):
3625
+ """
3626
+ :param str customer_gateway_id: The ID of the user gateway associated with the tunnel.> This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
3627
+ :param bool enable_dpd: Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:-**true** (default): enable the DPD function. IPsec initiator will send DPD message to check whether the peer device is alive. If the peer device does not receive a correct response within the set time, it is considered that the peer has been disconnected. IPsec will delete ISAKMP SA and the corresponding IPsec SA, and the security tunnel will also be deleted.-**false**: If the DPD function is disabled, the IPsec initiator does not send DPD detection packets.
3628
+ :param bool enable_nat_traversal: Whether the NAT crossing function is enabled for the tunnel. Value:-**true** (default): Enables the NAT Traversal function. When enabled, the IKE negotiation process deletes the verification process of the UDP port number and realizes the discovery function of the NAT gateway device in the tunnel.-**false**: does not enable the NAT Traversal function.
3629
+ :param str internet_ip: The local internet IP in Tunnel.
3630
+ :param str role: The role of Tunnel.
3631
+ :param str state: The state of Tunnel.
3632
+ :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
3633
+ :param 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelBgpConfigArgs' tunnel_bgp_config: Add the BGP configuration for the tunnel.> After you enable the BGP function for IPsec connections (that is, specify **EnableTunnelsBgp** as **true**), you must configure this parameter.
3634
+ :param str tunnel_id: The tunnel ID of IPsec-VPN connection.
3635
+ :param 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIkeConfigArgs' tunnel_ike_config: Configuration information for the first phase negotiation.
3636
+ :param int tunnel_index: The order in which the tunnel was created.-**1**: First tunnel.-**2**: The second tunnel.
3637
+ :param 'GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIpsecConfigArgs' tunnel_ipsec_config: Configuration information for the second-stage negotiation.
3638
+ :param str zone_no: The zoneNo of tunnel.
3639
+ """
3640
+ pulumi.set(__self__, "customer_gateway_id", customer_gateway_id)
3641
+ pulumi.set(__self__, "enable_dpd", enable_dpd)
3642
+ pulumi.set(__self__, "enable_nat_traversal", enable_nat_traversal)
3643
+ pulumi.set(__self__, "internet_ip", internet_ip)
3644
+ pulumi.set(__self__, "role", role)
3645
+ pulumi.set(__self__, "state", state)
3646
+ pulumi.set(__self__, "status", status)
3647
+ pulumi.set(__self__, "tunnel_bgp_config", tunnel_bgp_config)
3648
+ pulumi.set(__self__, "tunnel_id", tunnel_id)
3649
+ pulumi.set(__self__, "tunnel_ike_config", tunnel_ike_config)
3650
+ pulumi.set(__self__, "tunnel_index", tunnel_index)
3651
+ pulumi.set(__self__, "tunnel_ipsec_config", tunnel_ipsec_config)
3652
+ pulumi.set(__self__, "zone_no", zone_no)
2658
3653
 
2659
3654
  @property
2660
- @pulumi.getter(name="ikeConfigs")
2661
- def ike_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIkeConfigResult']:
3655
+ @pulumi.getter(name="customerGatewayId")
3656
+ def customer_gateway_id(self) -> str:
2662
3657
  """
2663
- Configuration negotiated in the second stage.
3658
+ The ID of the user gateway associated with the tunnel.> This parameter is required when creating a dual-tunnel mode IPsec-VPN connection.
2664
3659
  """
2665
- return pulumi.get(self, "ike_configs")
3660
+ return pulumi.get(self, "customer_gateway_id")
2666
3661
 
2667
3662
  @property
2668
- @pulumi.getter(name="internetIp")
2669
- def internet_ip(self) -> str:
3663
+ @pulumi.getter(name="enableDpd")
3664
+ def enable_dpd(self) -> bool:
2670
3665
  """
2671
- The internet ip of the resource. The cen.TransitRouterVpnAttachment resource will not have a value until after it is created.
3666
+ Whether the DPD (peer alive detection) function is enabled for the tunnel. Value:-**true** (default): enable the DPD function. IPsec initiator will send DPD message to check whether the peer device is alive. If the peer device does not receive a correct response within the set time, it is considered that the peer has been disconnected. IPsec will delete ISAKMP SA and the corresponding IPsec SA, and the security tunnel will also be deleted.-**false**: If the DPD function is disabled, the IPsec initiator does not send DPD detection packets.
2672
3667
  """
2673
- return pulumi.get(self, "internet_ip")
3668
+ return pulumi.get(self, "enable_dpd")
2674
3669
 
2675
3670
  @property
2676
- @pulumi.getter(name="ipsecConfigs")
2677
- def ipsec_configs(self) -> Sequence['outputs.GetGatewayVpnAttachmentsAttachmentIpsecConfigResult']:
3671
+ @pulumi.getter(name="enableNatTraversal")
3672
+ def enable_nat_traversal(self) -> bool:
2678
3673
  """
2679
- The configuration of Phase 2 negotiations.
3674
+ Whether the NAT crossing function is enabled for the tunnel. Value:-**true** (default): Enables the NAT Traversal function. When enabled, the IKE negotiation process deletes the verification process of the UDP port number and realizes the discovery function of the NAT gateway device in the tunnel.-**false**: does not enable the NAT Traversal function.
2680
3675
  """
2681
- return pulumi.get(self, "ipsec_configs")
3676
+ return pulumi.get(self, "enable_nat_traversal")
2682
3677
 
2683
3678
  @property
2684
- @pulumi.getter(name="localSubnet")
2685
- def local_subnet(self) -> str:
3679
+ @pulumi.getter(name="internetIp")
3680
+ def internet_ip(self) -> str:
2686
3681
  """
2687
- The CIDR block of the virtual private cloud (VPC).
3682
+ The local internet IP in Tunnel.
2688
3683
  """
2689
- return pulumi.get(self, "local_subnet")
3684
+ return pulumi.get(self, "internet_ip")
2690
3685
 
2691
3686
  @property
2692
- @pulumi.getter(name="networkType")
2693
- def network_type(self) -> str:
3687
+ @pulumi.getter
3688
+ def role(self) -> str:
2694
3689
  """
2695
- The network type.
3690
+ The role of Tunnel.
2696
3691
  """
2697
- return pulumi.get(self, "network_type")
3692
+ return pulumi.get(self, "role")
2698
3693
 
2699
3694
  @property
2700
- @pulumi.getter(name="remoteSubnet")
2701
- def remote_subnet(self) -> str:
3695
+ @pulumi.getter
3696
+ def state(self) -> str:
2702
3697
  """
2703
- The CIDR block of the on-premises data center.
3698
+ The state of Tunnel.
2704
3699
  """
2705
- return pulumi.get(self, "remote_subnet")
3700
+ return pulumi.get(self, "state")
2706
3701
 
2707
3702
  @property
2708
3703
  @pulumi.getter
@@ -2713,163 +3708,133 @@ class GetGatewayVpnAttachmentsAttachmentResult(dict):
2713
3708
  return pulumi.get(self, "status")
2714
3709
 
2715
3710
  @property
2716
- @pulumi.getter(name="vpnAttachmentName")
2717
- def vpn_attachment_name(self) -> str:
3711
+ @pulumi.getter(name="tunnelBgpConfig")
3712
+ def tunnel_bgp_config(self) -> 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelBgpConfigResult':
2718
3713
  """
2719
- The name of the IPsec-VPN connection.
3714
+ Add the BGP configuration for the tunnel.> After you enable the BGP function for IPsec connections (that is, specify **EnableTunnelsBgp** as **true**), you must configure this parameter.
2720
3715
  """
2721
- return pulumi.get(self, "vpn_attachment_name")
3716
+ return pulumi.get(self, "tunnel_bgp_config")
2722
3717
 
2723
3718
  @property
2724
- @pulumi.getter(name="vpnConnectionId")
2725
- def vpn_connection_id(self) -> str:
2726
- """
2727
- The first ID of the resource.
2728
- """
2729
- return pulumi.get(self, "vpn_connection_id")
2730
-
2731
-
2732
- @pulumi.output_type
2733
- class GetGatewayVpnAttachmentsAttachmentBgpConfigResult(dict):
2734
- def __init__(__self__, *,
2735
- local_asn: str,
2736
- local_bgp_ip: str,
2737
- status: str,
2738
- tunnel_cidr: str):
3719
+ @pulumi.getter(name="tunnelId")
3720
+ def tunnel_id(self) -> str:
2739
3721
  """
2740
- :param str local_asn: The ASN on the Alibaba Cloud side.
2741
- :param str local_bgp_ip: The BGP IP address on the Alibaba Cloud side.
2742
- :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2743
- :param str tunnel_cidr: The CIDR block of the IPsec tunnel. The CIDR block belongs to 169.254.0.0/16. The mask of the CIDR block is 30 bits in length.
3722
+ The tunnel ID of IPsec-VPN connection.
2744
3723
  """
2745
- pulumi.set(__self__, "local_asn", local_asn)
2746
- pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
2747
- pulumi.set(__self__, "status", status)
2748
- pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
3724
+ return pulumi.get(self, "tunnel_id")
2749
3725
 
2750
3726
  @property
2751
- @pulumi.getter(name="localAsn")
2752
- def local_asn(self) -> str:
3727
+ @pulumi.getter(name="tunnelIkeConfig")
3728
+ def tunnel_ike_config(self) -> 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIkeConfigResult':
2753
3729
  """
2754
- The ASN on the Alibaba Cloud side.
3730
+ Configuration information for the first phase negotiation.
2755
3731
  """
2756
- return pulumi.get(self, "local_asn")
3732
+ return pulumi.get(self, "tunnel_ike_config")
2757
3733
 
2758
3734
  @property
2759
- @pulumi.getter(name="localBgpIp")
2760
- def local_bgp_ip(self) -> str:
3735
+ @pulumi.getter(name="tunnelIndex")
3736
+ def tunnel_index(self) -> int:
2761
3737
  """
2762
- The BGP IP address on the Alibaba Cloud side.
3738
+ The order in which the tunnel was created.-**1**: First tunnel.-**2**: The second tunnel.
2763
3739
  """
2764
- return pulumi.get(self, "local_bgp_ip")
3740
+ return pulumi.get(self, "tunnel_index")
2765
3741
 
2766
3742
  @property
2767
- @pulumi.getter
2768
- def status(self) -> str:
3743
+ @pulumi.getter(name="tunnelIpsecConfig")
3744
+ def tunnel_ipsec_config(self) -> 'outputs.GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIpsecConfigResult':
2769
3745
  """
2770
- The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
3746
+ Configuration information for the second-stage negotiation.
2771
3747
  """
2772
- return pulumi.get(self, "status")
3748
+ return pulumi.get(self, "tunnel_ipsec_config")
2773
3749
 
2774
3750
  @property
2775
- @pulumi.getter(name="tunnelCidr")
2776
- def tunnel_cidr(self) -> str:
3751
+ @pulumi.getter(name="zoneNo")
3752
+ def zone_no(self) -> str:
2777
3753
  """
2778
- The CIDR block of the IPsec tunnel. The CIDR block belongs to 169.254.0.0/16. The mask of the CIDR block is 30 bits in length.
3754
+ The zoneNo of tunnel.
2779
3755
  """
2780
- return pulumi.get(self, "tunnel_cidr")
3756
+ return pulumi.get(self, "zone_no")
2781
3757
 
2782
3758
 
2783
3759
  @pulumi.output_type
2784
- class GetGatewayVpnAttachmentsAttachmentHealthCheckConfigResult(dict):
3760
+ class GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelBgpConfigResult(dict):
2785
3761
  def __init__(__self__, *,
2786
- dip: str,
2787
- enable: bool,
2788
- interval: int,
2789
- policy: str,
2790
- retry: int,
2791
- sip: str,
2792
- status: str):
2793
- """
2794
- :param str dip: The destination IP address.
2795
- :param bool enable: Specifies whether to enable health checks.
2796
- :param int interval: The interval between two consecutive health checks. Unit: seconds.
2797
- :param str policy: (Optional) Whether to revoke the published route when the health check fails.
2798
- :param int retry: The maximum number of health check retries.
2799
- :param str sip: The source IP address.
2800
- :param str status: The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
2801
- """
2802
- pulumi.set(__self__, "dip", dip)
2803
- pulumi.set(__self__, "enable", enable)
2804
- pulumi.set(__self__, "interval", interval)
2805
- pulumi.set(__self__, "policy", policy)
2806
- pulumi.set(__self__, "retry", retry)
2807
- pulumi.set(__self__, "sip", sip)
2808
- pulumi.set(__self__, "status", status)
2809
-
2810
- @property
2811
- @pulumi.getter
2812
- def dip(self) -> str:
3762
+ bgp_status: str,
3763
+ local_asn: int,
3764
+ local_bgp_ip: str,
3765
+ peer_asn: str,
3766
+ peer_bgp_ip: str,
3767
+ tunnel_cidr: str):
2813
3768
  """
2814
- The destination IP address.
3769
+ :param str bgp_status: BGP status.
3770
+ :param int local_asn: The number of the local (Alibaba Cloud) autonomous system of the tunnel. The value range of the autonomous system number is **1** to **4294967295**. Default value: **45104**.> We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. The private number range of the autonomous system number please consult the document yourself.
3771
+ :param str local_bgp_ip: The local BGP address of the tunnel (on the Alibaba Cloud side). This address is an IP address in the BGP network segment.
3772
+ :param str peer_asn: Peer asn.
3773
+ :param str peer_bgp_ip: Peer bgp ip.
3774
+ :param str tunnel_cidr: The BGP network segment of the tunnel. The network segment must be a network segment with a mask length of 30 in 169.254.0.0/16, and 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, and 169.254.169.252/30.> the network segments of two tunnels under an IPsec connection cannot be the same.
2815
3775
  """
2816
- return pulumi.get(self, "dip")
3776
+ pulumi.set(__self__, "bgp_status", bgp_status)
3777
+ pulumi.set(__self__, "local_asn", local_asn)
3778
+ pulumi.set(__self__, "local_bgp_ip", local_bgp_ip)
3779
+ pulumi.set(__self__, "peer_asn", peer_asn)
3780
+ pulumi.set(__self__, "peer_bgp_ip", peer_bgp_ip)
3781
+ pulumi.set(__self__, "tunnel_cidr", tunnel_cidr)
2817
3782
 
2818
3783
  @property
2819
- @pulumi.getter
2820
- def enable(self) -> bool:
3784
+ @pulumi.getter(name="bgpStatus")
3785
+ def bgp_status(self) -> str:
2821
3786
  """
2822
- Specifies whether to enable health checks.
3787
+ BGP status.
2823
3788
  """
2824
- return pulumi.get(self, "enable")
3789
+ return pulumi.get(self, "bgp_status")
2825
3790
 
2826
3791
  @property
2827
- @pulumi.getter
2828
- def interval(self) -> int:
3792
+ @pulumi.getter(name="localAsn")
3793
+ def local_asn(self) -> int:
2829
3794
  """
2830
- The interval between two consecutive health checks. Unit: seconds.
3795
+ The number of the local (Alibaba Cloud) autonomous system of the tunnel. The value range of the autonomous system number is **1** to **4294967295**. Default value: **45104**.> We recommend that you use the private number of the autonomous system number to establish a BGP connection with Alibaba Cloud. The private number range of the autonomous system number please consult the document yourself.
2831
3796
  """
2832
- return pulumi.get(self, "interval")
3797
+ return pulumi.get(self, "local_asn")
2833
3798
 
2834
3799
  @property
2835
- @pulumi.getter
2836
- def policy(self) -> str:
3800
+ @pulumi.getter(name="localBgpIp")
3801
+ def local_bgp_ip(self) -> str:
2837
3802
  """
2838
- (Optional) Whether to revoke the published route when the health check fails.
3803
+ The local BGP address of the tunnel (on the Alibaba Cloud side). This address is an IP address in the BGP network segment.
2839
3804
  """
2840
- return pulumi.get(self, "policy")
3805
+ return pulumi.get(self, "local_bgp_ip")
2841
3806
 
2842
3807
  @property
2843
- @pulumi.getter
2844
- def retry(self) -> int:
3808
+ @pulumi.getter(name="peerAsn")
3809
+ def peer_asn(self) -> str:
2845
3810
  """
2846
- The maximum number of health check retries.
3811
+ Peer asn.
2847
3812
  """
2848
- return pulumi.get(self, "retry")
3813
+ return pulumi.get(self, "peer_asn")
2849
3814
 
2850
3815
  @property
2851
- @pulumi.getter
2852
- def sip(self) -> str:
3816
+ @pulumi.getter(name="peerBgpIp")
3817
+ def peer_bgp_ip(self) -> str:
2853
3818
  """
2854
- The source IP address.
3819
+ Peer bgp ip.
2855
3820
  """
2856
- return pulumi.get(self, "sip")
3821
+ return pulumi.get(self, "peer_bgp_ip")
2857
3822
 
2858
3823
  @property
2859
- @pulumi.getter
2860
- def status(self) -> str:
3824
+ @pulumi.getter(name="tunnelCidr")
3825
+ def tunnel_cidr(self) -> str:
2861
3826
  """
2862
- The status of the resource. Valid values: `init`, `active`, `attaching`, `attached`, `detaching`, `financialLocked`, `provisioning`, `updating`, `upgrading`, `deleted`.
3827
+ The BGP network segment of the tunnel. The network segment must be a network segment with a mask length of 30 in 169.254.0.0/16, and 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, and 169.254.169.252/30.> the network segments of two tunnels under an IPsec connection cannot be the same.
2863
3828
  """
2864
- return pulumi.get(self, "status")
3829
+ return pulumi.get(self, "tunnel_cidr")
2865
3830
 
2866
3831
 
2867
3832
  @pulumi.output_type
2868
- class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
3833
+ class GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIkeConfigResult(dict):
2869
3834
  def __init__(__self__, *,
2870
3835
  ike_auth_alg: str,
2871
3836
  ike_enc_alg: str,
2872
- ike_lifetime: str,
3837
+ ike_lifetime: int,
2873
3838
  ike_mode: str,
2874
3839
  ike_pfs: str,
2875
3840
  ike_version: str,
@@ -2877,15 +3842,15 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2877
3842
  psk: str,
2878
3843
  remote_id: str):
2879
3844
  """
2880
- :param str ike_auth_alg: The IKE authentication algorithm.
2881
- :param str ike_enc_alg: The IKE encryption algorithm.
2882
- :param str ike_lifetime: The IKE lifetime. Unit: seconds.
2883
- :param str ike_mode: The IKE negotiation mode.
2884
- :param str ike_pfs: The DH group.
2885
- :param str ike_version: The version of the IKE protocol.
2886
- :param str local_id: The local ID, which supports the FQDN and IP formats. The current VPN gateway IP address is selected by default. The cen.TransitRouterVpnAttachment resource will not have a value until after it is created.
2887
- :param str psk: The pre-shared key.
2888
- :param str remote_id: The identifier of the peer. The default value is the IP address of the VPN gateway. The value can be a fully qualified domain name (FQDN) or an IP address.
3845
+ :param str ike_auth_alg: The authentication algorithm negotiated in the first stage. Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
3846
+ :param str ike_enc_alg: The encryption algorithm negotiated in the first stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
3847
+ :param int ike_lifetime: The life cycle of SA negotiated in the first stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
3848
+ :param str ike_mode: IKE version of the negotiation mode. Value: **main** or **aggressive**. Default value: **main**.-**main**: main mode, high security during negotiation.-**aggressive**: Savage mode, fast negotiation and high negotiation success rate.
3849
+ :param str ike_pfs: The first stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **group1**, **group2**, **group5**, **group14**.
3850
+ :param str ike_version: Version of the IKE protocol. Value: **ikev1** or **ikev2**. Default value: **ikev2**.Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for multiple network segments.
3851
+ :param str local_id: The identifier of the local end of the tunnel (Alibaba Cloud side), which is used for the first phase of negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the tunnel.**LocalId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
3852
+ :param str psk: The pre-shared key is used for identity authentication between the tunnel and the tunnel peer.-The key can be 1 to 100 characters in length. It supports numbers, upper and lower case English letters, and characters on the right. It cannot contain spaces. '''~! \\'@#$%^& *()_-+ ={}[]|;:',./? '''-If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. > The pre-shared key of the tunnel and the tunnel peer must be the same, otherwise the system cannot establish the tunnel normally.
3853
+ :param str remote_id: Identifier of the tunnel peer, which is used for the first-stage negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the user gateway associated with the tunnel.- **RemoteId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
2889
3854
  """
2890
3855
  pulumi.set(__self__, "ike_auth_alg", ike_auth_alg)
2891
3856
  pulumi.set(__self__, "ike_enc_alg", ike_enc_alg)
@@ -2901,7 +3866,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2901
3866
  @pulumi.getter(name="ikeAuthAlg")
2902
3867
  def ike_auth_alg(self) -> str:
2903
3868
  """
2904
- The IKE authentication algorithm.
3869
+ The authentication algorithm negotiated in the first stage. Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
2905
3870
  """
2906
3871
  return pulumi.get(self, "ike_auth_alg")
2907
3872
 
@@ -2909,15 +3874,15 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2909
3874
  @pulumi.getter(name="ikeEncAlg")
2910
3875
  def ike_enc_alg(self) -> str:
2911
3876
  """
2912
- The IKE encryption algorithm.
3877
+ The encryption algorithm negotiated in the first stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
2913
3878
  """
2914
3879
  return pulumi.get(self, "ike_enc_alg")
2915
3880
 
2916
3881
  @property
2917
3882
  @pulumi.getter(name="ikeLifetime")
2918
- def ike_lifetime(self) -> str:
3883
+ def ike_lifetime(self) -> int:
2919
3884
  """
2920
- The IKE lifetime. Unit: seconds.
3885
+ The life cycle of SA negotiated in the first stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
2921
3886
  """
2922
3887
  return pulumi.get(self, "ike_lifetime")
2923
3888
 
@@ -2925,7 +3890,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2925
3890
  @pulumi.getter(name="ikeMode")
2926
3891
  def ike_mode(self) -> str:
2927
3892
  """
2928
- The IKE negotiation mode.
3893
+ IKE version of the negotiation mode. Value: **main** or **aggressive**. Default value: **main**.-**main**: main mode, high security during negotiation.-**aggressive**: Savage mode, fast negotiation and high negotiation success rate.
2929
3894
  """
2930
3895
  return pulumi.get(self, "ike_mode")
2931
3896
 
@@ -2933,7 +3898,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2933
3898
  @pulumi.getter(name="ikePfs")
2934
3899
  def ike_pfs(self) -> str:
2935
3900
  """
2936
- The DH group.
3901
+ The first stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **group1**, **group2**, **group5**, **group14**.
2937
3902
  """
2938
3903
  return pulumi.get(self, "ike_pfs")
2939
3904
 
@@ -2941,7 +3906,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2941
3906
  @pulumi.getter(name="ikeVersion")
2942
3907
  def ike_version(self) -> str:
2943
3908
  """
2944
- The version of the IKE protocol.
3909
+ Version of the IKE protocol. Value: **ikev1** or **ikev2**. Default value: **ikev2**.Compared with IKEv1, IKEv2 simplifies the SA negotiation process and provides better support for multiple network segments.
2945
3910
  """
2946
3911
  return pulumi.get(self, "ike_version")
2947
3912
 
@@ -2949,7 +3914,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2949
3914
  @pulumi.getter(name="localId")
2950
3915
  def local_id(self) -> str:
2951
3916
  """
2952
- The local ID, which supports the FQDN and IP formats. The current VPN gateway IP address is selected by default. The cen.TransitRouterVpnAttachment resource will not have a value until after it is created.
3917
+ The identifier of the local end of the tunnel (Alibaba Cloud side), which is used for the first phase of negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the tunnel.**LocalId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
2953
3918
  """
2954
3919
  return pulumi.get(self, "local_id")
2955
3920
 
@@ -2957,7 +3922,7 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2957
3922
  @pulumi.getter
2958
3923
  def psk(self) -> str:
2959
3924
  """
2960
- The pre-shared key.
3925
+ The pre-shared key is used for identity authentication between the tunnel and the tunnel peer.-The key can be 1 to 100 characters in length. It supports numbers, upper and lower case English letters, and characters on the right. It cannot contain spaces. '''~! \\'@#$%^& *()_-+ ={}[]|;:',./? '''-If you do not specify a pre-shared key, the system randomly generates a 16-bit string as the pre-shared key. > The pre-shared key of the tunnel and the tunnel peer must be the same, otherwise the system cannot establish the tunnel normally.
2961
3926
  """
2962
3927
  return pulumi.get(self, "psk")
2963
3928
 
@@ -2965,23 +3930,23 @@ class GetGatewayVpnAttachmentsAttachmentIkeConfigResult(dict):
2965
3930
  @pulumi.getter(name="remoteId")
2966
3931
  def remote_id(self) -> str:
2967
3932
  """
2968
- The identifier of the peer. The default value is the IP address of the VPN gateway. The value can be a fully qualified domain name (FQDN) or an IP address.
3933
+ Identifier of the tunnel peer, which is used for the first-stage negotiation. The length is limited to 100 characters and cannot contain spaces. The default value is the IP address of the user gateway associated with the tunnel.- **RemoteId** supports the FQDN format. If you use the FQDN format, we recommend that you select **aggressive** (barbaric mode) as the negotiation mode.
2969
3934
  """
2970
3935
  return pulumi.get(self, "remote_id")
2971
3936
 
2972
3937
 
2973
3938
  @pulumi.output_type
2974
- class GetGatewayVpnAttachmentsAttachmentIpsecConfigResult(dict):
3939
+ class GetGatewayVpnAttachmentsAttachmentTunnelOptionsSpecificationTunnelIpsecConfigResult(dict):
2975
3940
  def __init__(__self__, *,
2976
3941
  ipsec_auth_alg: str,
2977
3942
  ipsec_enc_alg: str,
2978
- ipsec_lifetime: str,
3943
+ ipsec_lifetime: int,
2979
3944
  ipsec_pfs: str):
2980
3945
  """
2981
- :param str ipsec_auth_alg: The IPsec authentication algorithm.
2982
- :param str ipsec_enc_alg: The IPsec encryption algorithm.
2983
- :param str ipsec_lifetime: The IPsec lifetime. Unit: seconds.
2984
- :param str ipsec_pfs: The DH group.
3946
+ :param str ipsec_auth_alg: The second stage negotiated authentication algorithm.Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
3947
+ :param str ipsec_enc_alg: The encryption algorithm negotiated in the second stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
3948
+ :param int ipsec_lifetime: The life cycle of SA negotiated in the second stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
3949
+ :param str ipsec_pfs: The second stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **disabled**, **group1**, **group2**, **group5**, **group14**.
2985
3950
  """
2986
3951
  pulumi.set(__self__, "ipsec_auth_alg", ipsec_auth_alg)
2987
3952
  pulumi.set(__self__, "ipsec_enc_alg", ipsec_enc_alg)
@@ -2992,7 +3957,7 @@ class GetGatewayVpnAttachmentsAttachmentIpsecConfigResult(dict):
2992
3957
  @pulumi.getter(name="ipsecAuthAlg")
2993
3958
  def ipsec_auth_alg(self) -> str:
2994
3959
  """
2995
- The IPsec authentication algorithm.
3960
+ The second stage negotiated authentication algorithm.Values: **md5**, **sha1**, **sha256**, **sha384**, **sha512**. Default value: **sha1**.
2996
3961
  """
2997
3962
  return pulumi.get(self, "ipsec_auth_alg")
2998
3963
 
@@ -3000,15 +3965,15 @@ class GetGatewayVpnAttachmentsAttachmentIpsecConfigResult(dict):
3000
3965
  @pulumi.getter(name="ipsecEncAlg")
3001
3966
  def ipsec_enc_alg(self) -> str:
3002
3967
  """
3003
- The IPsec encryption algorithm.
3968
+ The encryption algorithm negotiated in the second stage. Value: **aes**, **aes192**, **aes256**, **des**, or **3des**. Default value: **aes**.
3004
3969
  """
3005
3970
  return pulumi.get(self, "ipsec_enc_alg")
3006
3971
 
3007
3972
  @property
3008
3973
  @pulumi.getter(name="ipsecLifetime")
3009
- def ipsec_lifetime(self) -> str:
3974
+ def ipsec_lifetime(self) -> int:
3010
3975
  """
3011
- The IPsec lifetime. Unit: seconds.
3976
+ The life cycle of SA negotiated in the second stage. Unit: seconds.Value range: **0** to **86400**. Default value: **86400**.
3012
3977
  """
3013
3978
  return pulumi.get(self, "ipsec_lifetime")
3014
3979
 
@@ -3016,7 +3981,7 @@ class GetGatewayVpnAttachmentsAttachmentIpsecConfigResult(dict):
3016
3981
  @pulumi.getter(name="ipsecPfs")
3017
3982
  def ipsec_pfs(self) -> str:
3018
3983
  """
3019
- The DH group.
3984
+ The second stage negotiates the Diffie-Hellman key exchange algorithm used. Default value: **group2**.Values: **disabled**, **group1**, **group2**, **group5**, **group14**.
3020
3985
  """
3021
3986
  return pulumi.get(self, "ipsec_pfs")
3022
3987