aws-sdk-ec2 1.181.0 → 1.186.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -176,6 +176,12 @@ module Aws::EC2
176
176
  CapacityReservationTarget = Shapes::StructureShape.new(name: 'CapacityReservationTarget')
177
177
  CapacityReservationTargetResponse = Shapes::StructureShape.new(name: 'CapacityReservationTargetResponse')
178
178
  CapacityReservationTenancy = Shapes::StringShape.new(name: 'CapacityReservationTenancy')
179
+ CarrierGateway = Shapes::StructureShape.new(name: 'CarrierGateway')
180
+ CarrierGatewayId = Shapes::StringShape.new(name: 'CarrierGatewayId')
181
+ CarrierGatewayIdSet = Shapes::ListShape.new(name: 'CarrierGatewayIdSet')
182
+ CarrierGatewayMaxResults = Shapes::IntegerShape.new(name: 'CarrierGatewayMaxResults')
183
+ CarrierGatewaySet = Shapes::ListShape.new(name: 'CarrierGatewaySet')
184
+ CarrierGatewayState = Shapes::StringShape.new(name: 'CarrierGatewayState')
179
185
  CertificateAuthentication = Shapes::StructureShape.new(name: 'CertificateAuthentication')
180
186
  CertificateAuthenticationRequest = Shapes::StructureShape.new(name: 'CertificateAuthenticationRequest')
181
187
  CidrAuthorizationContext = Shapes::StructureShape.new(name: 'CidrAuthorizationContext')
@@ -248,6 +254,8 @@ module Aws::EC2
248
254
  CpuOptionsRequest = Shapes::StructureShape.new(name: 'CpuOptionsRequest')
249
255
  CreateCapacityReservationRequest = Shapes::StructureShape.new(name: 'CreateCapacityReservationRequest')
250
256
  CreateCapacityReservationResult = Shapes::StructureShape.new(name: 'CreateCapacityReservationResult')
257
+ CreateCarrierGatewayRequest = Shapes::StructureShape.new(name: 'CreateCarrierGatewayRequest')
258
+ CreateCarrierGatewayResult = Shapes::StructureShape.new(name: 'CreateCarrierGatewayResult')
251
259
  CreateClientVpnEndpointRequest = Shapes::StructureShape.new(name: 'CreateClientVpnEndpointRequest')
252
260
  CreateClientVpnEndpointResult = Shapes::StructureShape.new(name: 'CreateClientVpnEndpointResult')
253
261
  CreateClientVpnRouteRequest = Shapes::StructureShape.new(name: 'CreateClientVpnRouteRequest')
@@ -374,6 +382,8 @@ module Aws::EC2
374
382
  DefaultRouteTablePropagationValue = Shapes::StringShape.new(name: 'DefaultRouteTablePropagationValue')
375
383
  DefaultTargetCapacityType = Shapes::StringShape.new(name: 'DefaultTargetCapacityType')
376
384
  DefaultingDhcpOptionsId = Shapes::StringShape.new(name: 'DefaultingDhcpOptionsId')
385
+ DeleteCarrierGatewayRequest = Shapes::StructureShape.new(name: 'DeleteCarrierGatewayRequest')
386
+ DeleteCarrierGatewayResult = Shapes::StructureShape.new(name: 'DeleteCarrierGatewayResult')
377
387
  DeleteClientVpnEndpointRequest = Shapes::StructureShape.new(name: 'DeleteClientVpnEndpointRequest')
378
388
  DeleteClientVpnEndpointResult = Shapes::StructureShape.new(name: 'DeleteClientVpnEndpointResult')
379
389
  DeleteClientVpnRouteRequest = Shapes::StructureShape.new(name: 'DeleteClientVpnRouteRequest')
@@ -489,6 +499,8 @@ module Aws::EC2
489
499
  DescribeCapacityReservationsMaxResults = Shapes::IntegerShape.new(name: 'DescribeCapacityReservationsMaxResults')
490
500
  DescribeCapacityReservationsRequest = Shapes::StructureShape.new(name: 'DescribeCapacityReservationsRequest')
491
501
  DescribeCapacityReservationsResult = Shapes::StructureShape.new(name: 'DescribeCapacityReservationsResult')
502
+ DescribeCarrierGatewaysRequest = Shapes::StructureShape.new(name: 'DescribeCarrierGatewaysRequest')
503
+ DescribeCarrierGatewaysResult = Shapes::StructureShape.new(name: 'DescribeCarrierGatewaysResult')
492
504
  DescribeClassicLinkInstancesMaxResults = Shapes::IntegerShape.new(name: 'DescribeClassicLinkInstancesMaxResults')
493
505
  DescribeClassicLinkInstancesRequest = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesRequest')
494
506
  DescribeClassicLinkInstancesResult = Shapes::StructureShape.new(name: 'DescribeClassicLinkInstancesResult')
@@ -1932,6 +1944,7 @@ module Aws::EC2
1932
1944
  TransitGatewayVpcAttachmentList = Shapes::ListShape.new(name: 'TransitGatewayVpcAttachmentList')
1933
1945
  TransitGatewayVpcAttachmentOptions = Shapes::StructureShape.new(name: 'TransitGatewayVpcAttachmentOptions')
1934
1946
  TransportProtocol = Shapes::StringShape.new(name: 'TransportProtocol')
1947
+ TunnelInsideIpVersion = Shapes::StringShape.new(name: 'TunnelInsideIpVersion')
1935
1948
  TunnelOption = Shapes::StructureShape.new(name: 'TunnelOption')
1936
1949
  TunnelOptionsList = Shapes::ListShape.new(name: 'TunnelOptionsList')
1937
1950
  UnassignIpv6AddressesRequest = Shapes::StructureShape.new(name: 'UnassignIpv6AddressesRequest')
@@ -2143,6 +2156,7 @@ module Aws::EC2
2143
2156
  Address.add_member(:network_border_group, Shapes::ShapeRef.new(shape: String, location_name: "networkBorderGroup"))
2144
2157
  Address.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2145
2158
  Address.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2159
+ Address.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2146
2160
  Address.struct_class = Types::Address
2147
2161
 
2148
2162
  AddressList.member = Shapes::ShapeRef.new(shape: Address, location_name: "item")
@@ -2169,6 +2183,7 @@ module Aws::EC2
2169
2183
  AllocateAddressResult.add_member(:domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "domain"))
2170
2184
  AllocateAddressResult.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2171
2185
  AllocateAddressResult.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2186
+ AllocateAddressResult.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2172
2187
  AllocateAddressResult.struct_class = Types::AllocateAddressResult
2173
2188
 
2174
2189
  AllocateHostsRequest.add_member(:auto_placement, Shapes::ShapeRef.new(shape: AutoPlacement, location_name: "autoPlacement"))
@@ -2615,6 +2630,17 @@ module Aws::EC2
2615
2630
  CapacityReservationTargetResponse.add_member(:capacity_reservation_resource_group_arn, Shapes::ShapeRef.new(shape: String, location_name: "capacityReservationResourceGroupArn"))
2616
2631
  CapacityReservationTargetResponse.struct_class = Types::CapacityReservationTargetResponse
2617
2632
 
2633
+ CarrierGateway.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "carrierGatewayId"))
2634
+ CarrierGateway.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
2635
+ CarrierGateway.add_member(:state, Shapes::ShapeRef.new(shape: CarrierGatewayState, location_name: "state"))
2636
+ CarrierGateway.add_member(:owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ownerId"))
2637
+ CarrierGateway.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
2638
+ CarrierGateway.struct_class = Types::CarrierGateway
2639
+
2640
+ CarrierGatewayIdSet.member = Shapes::ShapeRef.new(shape: CarrierGatewayId)
2641
+
2642
+ CarrierGatewaySet.member = Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "item")
2643
+
2618
2644
  CertificateAuthentication.add_member(:client_root_certificate_chain, Shapes::ShapeRef.new(shape: String, location_name: "clientRootCertificateChain"))
2619
2645
  CertificateAuthentication.struct_class = Types::CertificateAuthentication
2620
2646
 
@@ -2877,6 +2903,15 @@ module Aws::EC2
2877
2903
  CreateCapacityReservationResult.add_member(:capacity_reservation, Shapes::ShapeRef.new(shape: CapacityReservation, location_name: "capacityReservation"))
2878
2904
  CreateCapacityReservationResult.struct_class = Types::CreateCapacityReservationResult
2879
2905
 
2906
+ CreateCarrierGatewayRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "VpcId"))
2907
+ CreateCarrierGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
2908
+ CreateCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2909
+ CreateCarrierGatewayRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
2910
+ CreateCarrierGatewayRequest.struct_class = Types::CreateCarrierGatewayRequest
2911
+
2912
+ CreateCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
2913
+ CreateCarrierGatewayResult.struct_class = Types::CreateCarrierGatewayResult
2914
+
2880
2915
  CreateClientVpnEndpointRequest.add_member(:client_cidr_block, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClientCidrBlock"))
2881
2916
  CreateClientVpnEndpointRequest.add_member(:server_certificate_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ServerCertificateArn"))
2882
2917
  CreateClientVpnEndpointRequest.add_member(:authentication_options, Shapes::ShapeRef.new(shape: ClientVpnAuthenticationRequestList, required: true, location_name: "Authentication"))
@@ -3195,6 +3230,7 @@ module Aws::EC2
3195
3230
  CreateRouteRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
3196
3231
  CreateRouteRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
3197
3232
  CreateRouteRequest.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: LocalGatewayId, location_name: "LocalGatewayId"))
3233
+ CreateRouteRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "CarrierGatewayId"))
3198
3234
  CreateRouteRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
3199
3235
  CreateRouteRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
3200
3236
  CreateRouteRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionId, location_name: "vpcPeeringConnectionId"))
@@ -3515,6 +3551,13 @@ module Aws::EC2
3515
3551
 
3516
3552
  CustomerGatewayList.member = Shapes::ShapeRef.new(shape: CustomerGateway, location_name: "item")
3517
3553
 
3554
+ DeleteCarrierGatewayRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, required: true, location_name: "CarrierGatewayId"))
3555
+ DeleteCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3556
+ DeleteCarrierGatewayRequest.struct_class = Types::DeleteCarrierGatewayRequest
3557
+
3558
+ DeleteCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
3559
+ DeleteCarrierGatewayResult.struct_class = Types::DeleteCarrierGatewayResult
3560
+
3518
3561
  DeleteClientVpnEndpointRequest.add_member(:client_vpn_endpoint_id, Shapes::ShapeRef.new(shape: ClientVpnEndpointId, required: true, location_name: "ClientVpnEndpointId"))
3519
3562
  DeleteClientVpnEndpointRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3520
3563
  DeleteClientVpnEndpointRequest.struct_class = Types::DeleteClientVpnEndpointRequest
@@ -3949,6 +3992,17 @@ module Aws::EC2
3949
3992
  DescribeCapacityReservationsResult.add_member(:capacity_reservations, Shapes::ShapeRef.new(shape: CapacityReservationSet, location_name: "capacityReservationSet"))
3950
3993
  DescribeCapacityReservationsResult.struct_class = Types::DescribeCapacityReservationsResult
3951
3994
 
3995
+ DescribeCarrierGatewaysRequest.add_member(:carrier_gateway_ids, Shapes::ShapeRef.new(shape: CarrierGatewayIdSet, location_name: "CarrierGatewayId"))
3996
+ DescribeCarrierGatewaysRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3997
+ DescribeCarrierGatewaysRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: CarrierGatewayMaxResults, location_name: "MaxResults"))
3998
+ DescribeCarrierGatewaysRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
3999
+ DescribeCarrierGatewaysRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
4000
+ DescribeCarrierGatewaysRequest.struct_class = Types::DescribeCarrierGatewaysRequest
4001
+
4002
+ DescribeCarrierGatewaysResult.add_member(:carrier_gateways, Shapes::ShapeRef.new(shape: CarrierGatewaySet, location_name: "carrierGatewaySet"))
4003
+ DescribeCarrierGatewaysResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
4004
+ DescribeCarrierGatewaysResult.struct_class = Types::DescribeCarrierGatewaysResult
4005
+
3952
4006
  DescribeClassicLinkInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3953
4007
  DescribeClassicLinkInstancesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3954
4008
  DescribeClassicLinkInstancesRequest.add_member(:instance_ids, Shapes::ShapeRef.new(shape: InstanceIdStringList, location_name: "InstanceId"))
@@ -6508,6 +6562,7 @@ module Aws::EC2
6508
6562
  InstanceNetworkInterface.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "interfaceType"))
6509
6563
  InstanceNetworkInterface.struct_class = Types::InstanceNetworkInterface
6510
6564
 
6565
+ InstanceNetworkInterfaceAssociation.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
6511
6566
  InstanceNetworkInterfaceAssociation.add_member(:ip_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ipOwnerId"))
6512
6567
  InstanceNetworkInterfaceAssociation.add_member(:public_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "publicDnsName"))
6513
6568
  InstanceNetworkInterfaceAssociation.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
@@ -6534,6 +6589,7 @@ module Aws::EC2
6534
6589
  InstanceNetworkInterfaceSpecification.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: PrivateIpAddressSpecificationList, location_name: "privateIpAddressesSet", metadata: {"queryName"=>"PrivateIpAddresses"}))
6535
6590
  InstanceNetworkInterfaceSpecification.add_member(:secondary_private_ip_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "secondaryPrivateIpAddressCount"))
6536
6591
  InstanceNetworkInterfaceSpecification.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
6592
+ InstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6537
6593
  InstanceNetworkInterfaceSpecification.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "InterfaceType"))
6538
6594
  InstanceNetworkInterfaceSpecification.struct_class = Types::InstanceNetworkInterfaceSpecification
6539
6595
 
@@ -6878,6 +6934,7 @@ module Aws::EC2
6878
6934
  LaunchTemplateInstanceMetadataOptionsRequest.add_member(:http_endpoint, Shapes::ShapeRef.new(shape: LaunchTemplateInstanceMetadataEndpointState, location_name: "HttpEndpoint"))
6879
6935
  LaunchTemplateInstanceMetadataOptionsRequest.struct_class = Types::LaunchTemplateInstanceMetadataOptionsRequest
6880
6936
 
6937
+ LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associateCarrierIpAddress"))
6881
6938
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associatePublicIpAddress"))
6882
6939
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "deleteOnTermination"))
6883
6940
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
@@ -6895,6 +6952,7 @@ module Aws::EC2
6895
6952
 
6896
6953
  LaunchTemplateInstanceNetworkInterfaceSpecificationList.member = Shapes::ShapeRef.new(shape: LaunchTemplateInstanceNetworkInterfaceSpecification, location_name: "item")
6897
6954
 
6955
+ LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6898
6956
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociatePublicIpAddress"))
6899
6957
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "DeleteOnTermination"))
6900
6958
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
@@ -7360,8 +7418,6 @@ module Aws::EC2
7360
7418
  ModifySubnetAttributeRequest.add_member(:assign_ipv_6_address_on_creation, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "AssignIpv6AddressOnCreation"))
7361
7419
  ModifySubnetAttributeRequest.add_member(:map_public_ip_on_launch, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "MapPublicIpOnLaunch"))
7362
7420
  ModifySubnetAttributeRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, required: true, location_name: "subnetId"))
7363
- ModifySubnetAttributeRequest.add_member(:map_customer_owned_ip_on_launch, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "MapCustomerOwnedIpOnLaunch"))
7364
- ModifySubnetAttributeRequest.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: CoipPoolId, location_name: "CustomerOwnedIpv4Pool"))
7365
7421
  ModifySubnetAttributeRequest.struct_class = Types::ModifySubnetAttributeRequest
7366
7422
 
7367
7423
  ModifyTrafficMirrorFilterNetworkServicesRequest.add_member(:traffic_mirror_filter_id, Shapes::ShapeRef.new(shape: TrafficMirrorFilterId, required: true, location_name: "TrafficMirrorFilterId"))
@@ -7530,6 +7586,7 @@ module Aws::EC2
7530
7586
  ModifyVpnTunnelOptionsResult.struct_class = Types::ModifyVpnTunnelOptionsResult
7531
7587
 
7532
7588
  ModifyVpnTunnelOptionsSpecification.add_member(:tunnel_inside_cidr, Shapes::ShapeRef.new(shape: String, location_name: "TunnelInsideCidr"))
7589
+ ModifyVpnTunnelOptionsSpecification.add_member(:tunnel_inside_ipv_6_cidr, Shapes::ShapeRef.new(shape: String, location_name: "TunnelInsideIpv6Cidr"))
7533
7590
  ModifyVpnTunnelOptionsSpecification.add_member(:pre_shared_key, Shapes::ShapeRef.new(shape: String, location_name: "PreSharedKey"))
7534
7591
  ModifyVpnTunnelOptionsSpecification.add_member(:phase_1_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "Phase1LifetimeSeconds"))
7535
7592
  ModifyVpnTunnelOptionsSpecification.add_member(:phase_2_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "Phase2LifetimeSeconds"))
@@ -7664,6 +7721,7 @@ module Aws::EC2
7664
7721
  NetworkInterfaceAssociation.add_member(:ip_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ipOwnerId"))
7665
7722
  NetworkInterfaceAssociation.add_member(:public_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "publicDnsName"))
7666
7723
  NetworkInterfaceAssociation.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
7724
+ NetworkInterfaceAssociation.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
7667
7725
  NetworkInterfaceAssociation.struct_class = Types::NetworkInterfaceAssociation
7668
7726
 
7669
7727
  NetworkInterfaceAttachment.add_member(:attach_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "attachTime"))
@@ -8204,6 +8262,7 @@ module Aws::EC2
8204
8262
  ReplaceRouteRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
8205
8263
  ReplaceRouteRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
8206
8264
  ReplaceRouteRequest.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: LocalGatewayId, location_name: "LocalGatewayId"))
8265
+ ReplaceRouteRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "CarrierGatewayId"))
8207
8266
  ReplaceRouteRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
8208
8267
  ReplaceRouteRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
8209
8268
  ReplaceRouteRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionId, location_name: "vpcPeeringConnectionId"))
@@ -8576,6 +8635,7 @@ module Aws::EC2
8576
8635
  Route.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "natGatewayId"))
8577
8636
  Route.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "transitGatewayId"))
8578
8637
  Route.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: String, location_name: "localGatewayId"))
8638
+ Route.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "carrierGatewayId"))
8579
8639
  Route.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: String, location_name: "networkInterfaceId"))
8580
8640
  Route.add_member(:origin, Shapes::ShapeRef.new(shape: RouteOrigin, location_name: "origin"))
8581
8641
  Route.add_member(:state, Shapes::ShapeRef.new(shape: RouteState, location_name: "state"))
@@ -9592,6 +9652,7 @@ module Aws::EC2
9592
9652
 
9593
9653
  TunnelOption.add_member(:outside_ip_address, Shapes::ShapeRef.new(shape: String, location_name: "outsideIpAddress"))
9594
9654
  TunnelOption.add_member(:tunnel_inside_cidr, Shapes::ShapeRef.new(shape: String, location_name: "tunnelInsideCidr"))
9655
+ TunnelOption.add_member(:tunnel_inside_ipv_6_cidr, Shapes::ShapeRef.new(shape: String, location_name: "tunnelInsideIpv6Cidr"))
9595
9656
  TunnelOption.add_member(:pre_shared_key, Shapes::ShapeRef.new(shape: String, location_name: "preSharedKey"))
9596
9657
  TunnelOption.add_member(:phase_1_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "phase1LifetimeSeconds"))
9597
9658
  TunnelOption.add_member(:phase_2_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "phase2LifetimeSeconds"))
@@ -9967,11 +10028,13 @@ module Aws::EC2
9967
10028
 
9968
10029
  VpnConnectionOptions.add_member(:enable_acceleration, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableAcceleration"))
9969
10030
  VpnConnectionOptions.add_member(:static_routes_only, Shapes::ShapeRef.new(shape: Boolean, location_name: "staticRoutesOnly"))
10031
+ VpnConnectionOptions.add_member(:tunnel_inside_ip_version, Shapes::ShapeRef.new(shape: TunnelInsideIpVersion, location_name: "tunnelInsideIpVersion"))
9970
10032
  VpnConnectionOptions.add_member(:tunnel_options, Shapes::ShapeRef.new(shape: TunnelOptionsList, location_name: "tunnelOptionSet"))
9971
10033
  VpnConnectionOptions.struct_class = Types::VpnConnectionOptions
9972
10034
 
9973
10035
  VpnConnectionOptionsSpecification.add_member(:enable_acceleration, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableAcceleration"))
9974
10036
  VpnConnectionOptionsSpecification.add_member(:static_routes_only, Shapes::ShapeRef.new(shape: Boolean, location_name: "staticRoutesOnly"))
10037
+ VpnConnectionOptionsSpecification.add_member(:tunnel_inside_ip_version, Shapes::ShapeRef.new(shape: TunnelInsideIpVersion, location_name: "TunnelInsideIpVersion"))
9975
10038
  VpnConnectionOptionsSpecification.add_member(:tunnel_options, Shapes::ShapeRef.new(shape: VpnTunnelOptionsSpecificationsList, location_name: "TunnelOptions"))
9976
10039
  VpnConnectionOptionsSpecification.struct_class = Types::VpnConnectionOptionsSpecification
9977
10040
 
@@ -9996,6 +10059,7 @@ module Aws::EC2
9996
10059
  VpnStaticRouteList.member = Shapes::ShapeRef.new(shape: VpnStaticRoute, location_name: "item")
9997
10060
 
9998
10061
  VpnTunnelOptionsSpecification.add_member(:tunnel_inside_cidr, Shapes::ShapeRef.new(shape: String, location_name: "TunnelInsideCidr"))
10062
+ VpnTunnelOptionsSpecification.add_member(:tunnel_inside_ipv_6_cidr, Shapes::ShapeRef.new(shape: String, location_name: "TunnelInsideIpv6Cidr"))
9999
10063
  VpnTunnelOptionsSpecification.add_member(:pre_shared_key, Shapes::ShapeRef.new(shape: String, location_name: "PreSharedKey"))
10000
10064
  VpnTunnelOptionsSpecification.add_member(:phase_1_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "Phase1LifetimeSeconds"))
10001
10065
  VpnTunnelOptionsSpecification.add_member(:phase_2_lifetime_seconds, Shapes::ShapeRef.new(shape: Integer, location_name: "Phase2LifetimeSeconds"))
@@ -10379,6 +10443,14 @@ module Aws::EC2
10379
10443
  o.output = Shapes::ShapeRef.new(shape: CreateCapacityReservationResult)
10380
10444
  end)
10381
10445
 
10446
+ api.add_operation(:create_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10447
+ o.name = "CreateCarrierGateway"
10448
+ o.http_method = "POST"
10449
+ o.http_request_uri = "/"
10450
+ o.input = Shapes::ShapeRef.new(shape: CreateCarrierGatewayRequest)
10451
+ o.output = Shapes::ShapeRef.new(shape: CreateCarrierGatewayResult)
10452
+ end)
10453
+
10382
10454
  api.add_operation(:create_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10383
10455
  o.name = "CreateClientVpnEndpoint"
10384
10456
  o.http_method = "POST"
@@ -10803,6 +10875,14 @@ module Aws::EC2
10803
10875
  o.output = Shapes::ShapeRef.new(shape: CreateVpnGatewayResult)
10804
10876
  end)
10805
10877
 
10878
+ api.add_operation(:delete_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10879
+ o.name = "DeleteCarrierGateway"
10880
+ o.http_method = "POST"
10881
+ o.http_request_uri = "/"
10882
+ o.input = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayRequest)
10883
+ o.output = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayResult)
10884
+ end)
10885
+
10806
10886
  api.add_operation(:delete_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10807
10887
  o.name = "DeleteClientVpnEndpoint"
10808
10888
  o.http_method = "POST"
@@ -11295,6 +11375,20 @@ module Aws::EC2
11295
11375
  )
11296
11376
  end)
11297
11377
 
11378
+ api.add_operation(:describe_carrier_gateways, Seahorse::Model::Operation.new.tap do |o|
11379
+ o.name = "DescribeCarrierGateways"
11380
+ o.http_method = "POST"
11381
+ o.http_request_uri = "/"
11382
+ o.input = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysRequest)
11383
+ o.output = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysResult)
11384
+ o[:pager] = Aws::Pager.new(
11385
+ limit_key: "max_results",
11386
+ tokens: {
11387
+ "next_token" => "next_token"
11388
+ }
11389
+ )
11390
+ end)
11391
+
11298
11392
  api.add_operation(:describe_classic_link_instances, Seahorse::Model::Operation.new.tap do |o|
11299
11393
  o.name = "DescribeClassicLinkInstances"
11300
11394
  o.http_method = "POST"
@@ -126,7 +126,11 @@ module Aws::EC2
126
126
  data[:public_dns_name]
127
127
  end
128
128
 
129
- # The public IPv4 address assigned to the instance, if applicable.
129
+ # The public IPv4 address, or the Carrier IP address assigned to the
130
+ # instance, if applicable.
131
+ #
132
+ # A Carrier IP address only applies to an instance launched in a subnet
133
+ # associated with a Wavelength Zone.
130
134
  # @return [String]
131
135
  def public_ip_address
132
136
  data[:public_ip_address]
@@ -1492,8 +1496,8 @@ module Aws::EC2
1492
1496
  # * `instance-id` - The ID of the instance the address is associated
1493
1497
  # with, if any.
1494
1498
  #
1495
- # * `network-border-group` - The location from where the IP address is
1496
- # advertised.
1499
+ # * `network-border-group` - A unique set of Availability Zones, Local
1500
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
1497
1501
  #
1498
1502
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
1499
1503
  # that the address is associated with, if any.
@@ -1503,7 +1507,7 @@ module Aws::EC2
1503
1507
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
1504
1508
  # with the Elastic IP address.
1505
1509
  #
1506
- # * `public-ip` - The Elastic IP address.
1510
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
1507
1511
  #
1508
1512
  # * `tag`\:<key> - The key/value combination of a tag assigned to
1509
1513
  # the resource. Use the tag key in the filter name and the tag value
@@ -34,6 +34,12 @@ module Aws::EC2
34
34
  @id
35
35
  end
36
36
 
37
+ # The carrier IP address associated with the network interface.
38
+ # @return [String]
39
+ def carrier_ip
40
+ data[:carrier_ip]
41
+ end
42
+
37
43
  # The ID of the owner of the Elastic IP address.
38
44
  # @return [String]
39
45
  def ip_owner_id
@@ -159,6 +159,7 @@ module Aws::EC2
159
159
  # ],
160
160
  # secondary_private_ip_address_count: 1,
161
161
  # subnet_id: "String",
162
+ # associate_carrier_ip_address: false,
162
163
  # interface_type: "String",
163
164
  # },
164
165
  # ],
@@ -1559,8 +1560,8 @@ module Aws::EC2
1559
1560
  # * `instance-id` - The ID of the instance the address is associated
1560
1561
  # with, if any.
1561
1562
  #
1562
- # * `network-border-group` - The location from where the IP address is
1563
- # advertised.
1563
+ # * `network-border-group` - A unique set of Availability Zones, Local
1564
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
1564
1565
  #
1565
1566
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
1566
1567
  # that the address is associated with, if any.
@@ -1570,7 +1571,7 @@ module Aws::EC2
1570
1571
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
1571
1572
  # with the Elastic IP address.
1572
1573
  #
1573
- # * `public-ip` - The Elastic IP address.
1574
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
1574
1575
  #
1575
1576
  # * `tag`\:<key> - The key/value combination of a tag assigned to
1576
1577
  # the resource. Use the tag key in the filter name and the tag value
@@ -3307,8 +3308,8 @@ module Aws::EC2
3307
3308
  # * `instance-id` - The ID of the instance the address is associated
3308
3309
  # with, if any.
3309
3310
  #
3310
- # * `network-border-group` - The location from where the IP address is
3311
- # advertised.
3311
+ # * `network-border-group` - A unique set of Availability Zones, Local
3312
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
3312
3313
  #
3313
3314
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network interface
3314
3315
  # that the address is associated with, if any.
@@ -3318,7 +3319,7 @@ module Aws::EC2
3318
3319
  # * `private-ip-address` - \[EC2-VPC\] The private IP address associated
3319
3320
  # with the Elastic IP address.
3320
3321
  #
3321
- # * `public-ip` - The Elastic IP address.
3322
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
3322
3323
  #
3323
3324
  # * `tag`\:<key> - The key/value combination of a tag assigned to
3324
3325
  # the resource. Use the tag key in the filter name and the tag value
@@ -96,6 +96,12 @@ module Aws::EC2
96
96
  data[:local_gateway_id]
97
97
  end
98
98
 
99
+ # The ID of the carrier gateway.
100
+ # @return [String]
101
+ def carrier_gateway_id
102
+ data[:carrier_gateway_id]
103
+ end
104
+
99
105
  # The ID of the network interface.
100
106
  # @return [String]
101
107
  def network_interface_id
@@ -301,6 +307,7 @@ module Aws::EC2
301
307
  # nat_gateway_id: "NatGatewayId",
302
308
  # transit_gateway_id: "TransitGatewayId",
303
309
  # local_gateway_id: "LocalGatewayId",
310
+ # carrier_gateway_id: "CarrierGatewayId",
304
311
  # network_interface_id: "NetworkInterfaceId",
305
312
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
306
313
  # })
@@ -331,6 +338,8 @@ module Aws::EC2
331
338
  # The ID of a transit gateway.
332
339
  # @option options [String] :local_gateway_id
333
340
  # The ID of the local gateway.
341
+ # @option options [String] :carrier_gateway_id
342
+ # \[IPv4 traffic only\] The ID of a carrier gateway.
334
343
  # @option options [String] :network_interface_id
335
344
  # The ID of a network interface.
336
345
  # @option options [String] :vpc_peering_connection_id
@@ -233,6 +233,7 @@ module Aws::EC2
233
233
  # nat_gateway_id: "NatGatewayId",
234
234
  # transit_gateway_id: "TransitGatewayId",
235
235
  # local_gateway_id: "LocalGatewayId",
236
+ # carrier_gateway_id: "CarrierGatewayId",
236
237
  # network_interface_id: "NetworkInterfaceId",
237
238
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
238
239
  # })
@@ -267,6 +268,11 @@ module Aws::EC2
267
268
  # The ID of a transit gateway.
268
269
  # @option options [String] :local_gateway_id
269
270
  # The ID of the local gateway.
271
+ # @option options [String] :carrier_gateway_id
272
+ # The ID of the carrier gateway.
273
+ #
274
+ # You can only use this option when the VPC contains a subnet which is
275
+ # associated with a Wavelength Zone.
270
276
  # @option options [String] :network_interface_id
271
277
  # The ID of a network interface.
272
278
  # @option options [String] :vpc_peering_connection_id
@@ -353,6 +353,7 @@ module Aws::EC2
353
353
  # ],
354
354
  # secondary_private_ip_address_count: 1,
355
355
  # subnet_id: "String",
356
+ # associate_carrier_ip_address: false,
356
357
  # interface_type: "String",
357
358
  # },
358
359
  # ],
@@ -329,7 +329,7 @@ module Aws::EC2
329
329
  include Aws::Structure
330
330
  end
331
331
 
332
- # Describes an Elastic IP address.
332
+ # Describes an Elastic IP address, or a carrier IP address.
333
333
  #
334
334
  # @!attribute [rw] instance_id
335
335
  # The ID of the instance that the address is associated with (if any).
@@ -375,7 +375,8 @@ module Aws::EC2
375
375
  # @return [String]
376
376
  #
377
377
  # @!attribute [rw] network_border_group
378
- # The name of the location from which the IP address is advertised.
378
+ # The name of the unique set of Availability Zones, Local Zones, or
379
+ # Wavelength Zones from which AWS advertises IP addresses.
379
380
  # @return [String]
380
381
  #
381
382
  # @!attribute [rw] customer_owned_ip
@@ -386,6 +387,12 @@ module Aws::EC2
386
387
  # The ID of the customer-owned address pool.
387
388
  # @return [String]
388
389
  #
390
+ # @!attribute [rw] carrier_ip
391
+ # The carrier IP address associated. This option is only available for
392
+ # network interfaces which reside in a subnet in a Wavelength Zone
393
+ # (for example an EC2 instance).
394
+ # @return [String]
395
+ #
389
396
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Address AWS API Documentation
390
397
  #
391
398
  class Address < Struct.new(
@@ -401,7 +408,8 @@ module Aws::EC2
401
408
  :public_ipv_4_pool,
402
409
  :network_border_group,
403
410
  :customer_owned_ip,
404
- :customer_owned_ipv_4_pool)
411
+ :customer_owned_ipv_4_pool,
412
+ :carrier_ip)
405
413
  SENSITIVE = []
406
414
  include Aws::Structure
407
415
  end
@@ -481,13 +489,10 @@ module Aws::EC2
481
489
  # @return [String]
482
490
  #
483
491
  # @!attribute [rw] network_border_group
484
- # The location from which the IP address is advertised. Use this
485
- # parameter to limit the address to this location.
486
- #
487
- # A network border group is a unique set of Availability Zones or
488
- # Local Zones from where AWS advertises IP addresses and limits the
489
- # addresses to the group. IP addresses cannot move between network
490
- # border groups.
492
+ # A unique set of Availability Zones, Local Zones, or Wavelength Zones
493
+ # from which AWS advertises IP addresses. Use this parameter to limit
494
+ # the IP address to this location. IP addresses cannot move between
495
+ # network border groups.
491
496
  #
492
497
  # Use [DescribeAvailabilityZones][1] to view the network border
493
498
  # groups.
@@ -545,7 +550,8 @@ module Aws::EC2
545
550
  # @return [String]
546
551
  #
547
552
  # @!attribute [rw] network_border_group
548
- # The location from which the IP address is advertised.
553
+ # The set of Availability Zones, Local Zones, or Wavelength Zones from
554
+ # which AWS advertises IP addresses.
549
555
  # @return [String]
550
556
  #
551
557
  # @!attribute [rw] domain
@@ -561,6 +567,12 @@ module Aws::EC2
561
567
  # The ID of the customer-owned address pool.
562
568
  # @return [String]
563
569
  #
570
+ # @!attribute [rw] carrier_ip
571
+ # The carrier IP address. This option is only available for network
572
+ # interfaces which reside in a subnet in a Wavelength Zone (for
573
+ # example an EC2 instance).
574
+ # @return [String]
575
+ #
564
576
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddressResult AWS API Documentation
565
577
  #
566
578
  class AllocateAddressResult < Struct.new(
@@ -570,7 +582,8 @@ module Aws::EC2
570
582
  :network_border_group,
571
583
  :domain,
572
584
  :customer_owned_ip,
573
- :customer_owned_ipv_4_pool)
585
+ :customer_owned_ipv_4_pool,
586
+ :carrier_ip)
574
587
  SENSITIVE = []
575
588
  include Aws::Structure
576
589
  end
@@ -1365,7 +1378,7 @@ module Aws::EC2
1365
1378
  #
1366
1379
  # @!attribute [rw] ipv_6_cidr_block_network_border_group
1367
1380
  # The name of the location from which we advertise the IPV6 CIDR
1368
- # block. Use this parameter to limit the CiDR block to this location.
1381
+ # block. Use this parameter to limit the CIDR block to this location.
1369
1382
  #
1370
1383
  # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this
1371
1384
  # parameter.
@@ -2133,22 +2146,23 @@ module Aws::EC2
2133
2146
  include Aws::Structure
2134
2147
  end
2135
2148
 
2136
- # Describes a Zone.
2149
+ # Describes Availability Zones, Local Zones, and Wavelength Zones.
2137
2150
  #
2138
2151
  # @!attribute [rw] state
2139
- # The state of the Zone.
2152
+ # The state of the Availability Zone, Local Zone, or Wavelength Zone.
2140
2153
  # @return [String]
2141
2154
  #
2142
2155
  # @!attribute [rw] opt_in_status
2143
2156
  # For Availability Zones, this parameter always has the value of
2144
2157
  # `opt-in-not-required`.
2145
2158
  #
2146
- # For Local Zones, this parameter is the opt in status. The possible
2147
- # values are `opted-in`, and `not-opted-in`.
2159
+ # For Local Zones and Wavelength Zones, this parameter is the opt-in
2160
+ # status. The possible values are `opted-in`, and `not-opted-in`.
2148
2161
  # @return [String]
2149
2162
  #
2150
2163
  # @!attribute [rw] messages
2151
- # Any messages about the Zone.
2164
+ # Any messages about the Availability Zone, Local Zone, or Wavelength
2165
+ # Zone.
2152
2166
  # @return [Array<Types::AvailabilityZoneMessage>]
2153
2167
  #
2154
2168
  # @!attribute [rw] region_name
@@ -2156,11 +2170,11 @@ module Aws::EC2
2156
2170
  # @return [String]
2157
2171
  #
2158
2172
  # @!attribute [rw] zone_name
2159
- # The name of the Zone.
2173
+ # The name of the Availability Zone, Local Zone, or Wavelength Zone.
2160
2174
  # @return [String]
2161
2175
  #
2162
2176
  # @!attribute [rw] zone_id
2163
- # The ID of the Zone.
2177
+ # The ID of the Availability Zone, Local Zone, or Wavelength Zone.
2164
2178
  # @return [String]
2165
2179
  #
2166
2180
  # @!attribute [rw] group_name
@@ -2169,25 +2183,28 @@ module Aws::EC2
2169
2183
  #
2170
2184
  # For Local Zones, the name of the associated group, for example
2171
2185
  # `us-west-2-lax-1`.
2186
+ #
2187
+ # For Wavelength Zones, the name of the associated group, for example
2188
+ # `us-east-1-wl1-bos-wlz-1`.
2172
2189
  # @return [String]
2173
2190
  #
2174
2191
  # @!attribute [rw] network_border_group
2175
- # The name of the location from which the address is advertised.
2192
+ # The name of the network border group.
2176
2193
  # @return [String]
2177
2194
  #
2178
2195
  # @!attribute [rw] zone_type
2179
- # The type of zone. The valid values are `availability-zone` and
2180
- # `local-zone`.
2196
+ # The type of zone. The valid values are `availability-zone`,
2197
+ # `local-zone`, and `wavelength-zone`.
2181
2198
  # @return [String]
2182
2199
  #
2183
2200
  # @!attribute [rw] parent_zone_name
2184
- # The name of the zone that handles some of the Local Zone control
2185
- # plane operations, such as API calls.
2201
+ # The name of the zone that handles some of the Local Zone or
2202
+ # Wavelength Zone control plane operations, such as API calls.
2186
2203
  # @return [String]
2187
2204
  #
2188
2205
  # @!attribute [rw] parent_zone_id
2189
- # The ID of the zone that handles some of the Local Zone control plane
2190
- # operations, such as API calls.
2206
+ # The ID of the zone that handles some of the Local Zone or Wavelength
2207
+ # Zone control plane operations, such as API calls.
2191
2208
  # @return [String]
2192
2209
  #
2193
2210
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZone AWS API Documentation
@@ -2208,10 +2225,12 @@ module Aws::EC2
2208
2225
  include Aws::Structure
2209
2226
  end
2210
2227
 
2211
- # Describes a message about a Zone.
2228
+ # Describes a message about an Availability Zone, Local Zone, or
2229
+ # Wavelength Zone.
2212
2230
  #
2213
2231
  # @!attribute [rw] message
2214
- # The message about the Zone.
2232
+ # The message about the Availability Zone, Local Zone, or Wavelength
2233
+ # Zone.
2215
2234
  # @return [String]
2216
2235
  #
2217
2236
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZoneMessage AWS API Documentation
@@ -3313,6 +3332,40 @@ module Aws::EC2
3313
3332
  include Aws::Structure
3314
3333
  end
3315
3334
 
3335
+ # Describes a carrier gateway.
3336
+ #
3337
+ # @!attribute [rw] carrier_gateway_id
3338
+ # The ID of the carrier gateway.
3339
+ # @return [String]
3340
+ #
3341
+ # @!attribute [rw] vpc_id
3342
+ # The ID of the VPC associated with the carrier gateway.
3343
+ # @return [String]
3344
+ #
3345
+ # @!attribute [rw] state
3346
+ # The state of the carrier gateway.
3347
+ # @return [String]
3348
+ #
3349
+ # @!attribute [rw] owner_id
3350
+ # The AWS account ID of the owner of the carrier gateway.
3351
+ # @return [String]
3352
+ #
3353
+ # @!attribute [rw] tags
3354
+ # The tags assigned to the carrier gateway.
3355
+ # @return [Array<Types::Tag>]
3356
+ #
3357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CarrierGateway AWS API Documentation
3358
+ #
3359
+ class CarrierGateway < Struct.new(
3360
+ :carrier_gateway_id,
3361
+ :vpc_id,
3362
+ :state,
3363
+ :owner_id,
3364
+ :tags)
3365
+ SENSITIVE = []
3366
+ include Aws::Structure
3367
+ end
3368
+
3316
3369
  # Information about the client certificate used for authentication.
3317
3370
  #
3318
3371
  # @!attribute [rw] client_root_certificate_chain
@@ -4836,6 +4889,77 @@ module Aws::EC2
4836
4889
  include Aws::Structure
4837
4890
  end
4838
4891
 
4892
+ # @note When making an API call, you may pass CreateCarrierGatewayRequest
4893
+ # data as a hash:
4894
+ #
4895
+ # {
4896
+ # vpc_id: "VpcId", # required
4897
+ # tag_specifications: [
4898
+ # {
4899
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
4900
+ # tags: [
4901
+ # {
4902
+ # key: "String",
4903
+ # value: "String",
4904
+ # },
4905
+ # ],
4906
+ # },
4907
+ # ],
4908
+ # dry_run: false,
4909
+ # client_token: "String",
4910
+ # }
4911
+ #
4912
+ # @!attribute [rw] vpc_id
4913
+ # The ID of the VPC to associate with the carrier gateway.
4914
+ # @return [String]
4915
+ #
4916
+ # @!attribute [rw] tag_specifications
4917
+ # The tags to associate with the carrier gateway.
4918
+ # @return [Array<Types::TagSpecification>]
4919
+ #
4920
+ # @!attribute [rw] dry_run
4921
+ # Checks whether you have the required permissions for the action,
4922
+ # without actually making the request, and provides an error response.
4923
+ # If you have the required permissions, the error response is
4924
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4925
+ # @return [Boolean]
4926
+ #
4927
+ # @!attribute [rw] client_token
4928
+ # Unique, case-sensitive identifier that you provide to ensure the
4929
+ # idempotency of the request. For more information, see [How to Ensure
4930
+ # Idempotency][1].
4931
+ #
4932
+ # **A suitable default value is auto-generated.** You should normally
4933
+ # not need to pass this option.
4934
+ #
4935
+ #
4936
+ #
4937
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html
4938
+ # @return [String]
4939
+ #
4940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayRequest AWS API Documentation
4941
+ #
4942
+ class CreateCarrierGatewayRequest < Struct.new(
4943
+ :vpc_id,
4944
+ :tag_specifications,
4945
+ :dry_run,
4946
+ :client_token)
4947
+ SENSITIVE = []
4948
+ include Aws::Structure
4949
+ end
4950
+
4951
+ # @!attribute [rw] carrier_gateway
4952
+ # Information about the carrier gateway.
4953
+ # @return [Types::CarrierGateway]
4954
+ #
4955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayResult AWS API Documentation
4956
+ #
4957
+ class CreateCarrierGatewayResult < Struct.new(
4958
+ :carrier_gateway)
4959
+ SENSITIVE = []
4960
+ include Aws::Structure
4961
+ end
4962
+
4839
4963
  # @note When making an API call, you may pass CreateClientVpnEndpointRequest
4840
4964
  # data as a hash:
4841
4965
  #
@@ -6304,6 +6428,7 @@ module Aws::EC2
6304
6428
  # ],
6305
6429
  # network_interfaces: [
6306
6430
  # {
6431
+ # associate_carrier_ip_address: false,
6307
6432
  # associate_public_ip_address: false,
6308
6433
  # delete_on_termination: false,
6309
6434
  # description: "String",
@@ -6525,6 +6650,7 @@ module Aws::EC2
6525
6650
  # ],
6526
6651
  # network_interfaces: [
6527
6652
  # {
6653
+ # associate_carrier_ip_address: false,
6528
6654
  # associate_public_ip_address: false,
6529
6655
  # delete_on_termination: false,
6530
6656
  # description: "String",
@@ -7538,6 +7664,7 @@ module Aws::EC2
7538
7664
  # nat_gateway_id: "NatGatewayId",
7539
7665
  # transit_gateway_id: "TransitGatewayId",
7540
7666
  # local_gateway_id: "LocalGatewayId",
7667
+ # carrier_gateway_id: "CarrierGatewayId",
7541
7668
  # network_interface_id: "NetworkInterfaceId",
7542
7669
  # route_table_id: "RouteTableId", # required
7543
7670
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
@@ -7593,6 +7720,13 @@ module Aws::EC2
7593
7720
  # The ID of the local gateway.
7594
7721
  # @return [String]
7595
7722
  #
7723
+ # @!attribute [rw] carrier_gateway_id
7724
+ # The ID of the carrier gateway.
7725
+ #
7726
+ # You can only use this option when the VPC contains a subnet which is
7727
+ # associated with a Wavelength Zone.
7728
+ # @return [String]
7729
+ #
7596
7730
  # @!attribute [rw] network_interface_id
7597
7731
  # The ID of a network interface.
7598
7732
  # @return [String]
@@ -7618,6 +7752,7 @@ module Aws::EC2
7618
7752
  :nat_gateway_id,
7619
7753
  :transit_gateway_id,
7620
7754
  :local_gateway_id,
7755
+ :carrier_gateway_id,
7621
7756
  :network_interface_id,
7622
7757
  :route_table_id,
7623
7758
  :vpc_peering_connection_id)
@@ -9719,9 +9854,11 @@ module Aws::EC2
9719
9854
  # options: {
9720
9855
  # enable_acceleration: false,
9721
9856
  # static_routes_only: false,
9857
+ # tunnel_inside_ip_version: "ipv4", # accepts ipv4, ipv6
9722
9858
  # tunnel_options: [
9723
9859
  # {
9724
9860
  # tunnel_inside_cidr: "String",
9861
+ # tunnel_inside_ipv_6_cidr: "String",
9725
9862
  # pre_shared_key: "String",
9726
9863
  # phase_1_lifetime_seconds: 1,
9727
9864
  # phase_2_lifetime_seconds: 1,
@@ -10037,6 +10174,46 @@ module Aws::EC2
10037
10174
  include Aws::Structure
10038
10175
  end
10039
10176
 
10177
+ # @note When making an API call, you may pass DeleteCarrierGatewayRequest
10178
+ # data as a hash:
10179
+ #
10180
+ # {
10181
+ # carrier_gateway_id: "CarrierGatewayId", # required
10182
+ # dry_run: false,
10183
+ # }
10184
+ #
10185
+ # @!attribute [rw] carrier_gateway_id
10186
+ # The ID of the carrier gateway.
10187
+ # @return [String]
10188
+ #
10189
+ # @!attribute [rw] dry_run
10190
+ # Checks whether you have the required permissions for the action,
10191
+ # without actually making the request, and provides an error response.
10192
+ # If you have the required permissions, the error response is
10193
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10194
+ # @return [Boolean]
10195
+ #
10196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayRequest AWS API Documentation
10197
+ #
10198
+ class DeleteCarrierGatewayRequest < Struct.new(
10199
+ :carrier_gateway_id,
10200
+ :dry_run)
10201
+ SENSITIVE = []
10202
+ include Aws::Structure
10203
+ end
10204
+
10205
+ # @!attribute [rw] carrier_gateway
10206
+ # Information about the carrier gateway.
10207
+ # @return [Types::CarrierGateway]
10208
+ #
10209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayResult AWS API Documentation
10210
+ #
10211
+ class DeleteCarrierGatewayResult < Struct.new(
10212
+ :carrier_gateway)
10213
+ SENSITIVE = []
10214
+ include Aws::Structure
10215
+ end
10216
+
10040
10217
  # @note When making an API call, you may pass DeleteClientVpnEndpointRequest
10041
10218
  # data as a hash:
10042
10219
  #
@@ -12339,8 +12516,8 @@ module Aws::EC2
12339
12516
  # * `instance-id` - The ID of the instance the address is associated
12340
12517
  # with, if any.
12341
12518
  #
12342
- # * `network-border-group` - The location from where the IP address is
12343
- # advertised.
12519
+ # * `network-border-group` - A unique set of Availability Zones, Local
12520
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
12344
12521
  #
12345
12522
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network
12346
12523
  # interface that the address is associated with, if any.
@@ -12350,7 +12527,7 @@ module Aws::EC2
12350
12527
  # * `private-ip-address` - \[EC2-VPC\] The private IP address
12351
12528
  # associated with the Elastic IP address.
12352
12529
  #
12353
- # * `public-ip` - The Elastic IP address.
12530
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
12354
12531
  #
12355
12532
  # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
12356
12533
  # to the resource. Use the tag key in the filter name and the tag
@@ -12465,45 +12642,56 @@ module Aws::EC2
12465
12642
  #
12466
12643
  # * `group-name` - For Availability Zones, use the Region name. For
12467
12644
  # Local Zones, use the name of the group associated with the Local
12468
- # Zone (for example, `us-west-2-lax-1`).
12645
+ # Zone (for example, `us-west-2-lax-1`) For Wavelength Zones, use
12646
+ # the name of the group associated with the Wavelength Zone (for
12647
+ # example, `us-east-1-wl1-bos-wlz-1`).
12469
12648
  #
12470
12649
  # * `message` - The Zone message.
12471
12650
  #
12472
- # * `opt-in-status` - The opt in status (`opted-in`, and
12651
+ # * `opt-in-status` - The opt-in status (`opted-in`, and
12473
12652
  # `not-opted-in` \| `opt-in-not-required`).
12474
12653
  #
12475
- # * The ID of the zone that handles some of the Local Zone control
12476
- # plane operations, such as API calls.
12654
+ # * `parent-zoneID` - The ID of the zone that handles some of the
12655
+ # Local Zone and Wavelength Zone control plane operations, such as
12656
+ # API calls.
12657
+ #
12658
+ # * `parent-zoneName` - The ID of the zone that handles some of the
12659
+ # Local Zone and Wavelength Zone control plane operations, such as
12660
+ # API calls.
12477
12661
  #
12478
12662
  # * `region-name` - The name of the Region for the Zone (for example,
12479
12663
  # `us-east-1`).
12480
12664
  #
12481
- # * `state` - The state of the Availability Zone or Local Zone
12482
- # (`available` \| `information` \| `impaired` \| `unavailable`).
12665
+ # * `state` - The state of the Availability Zone, the Local Zone, or
12666
+ # the Wavelength Zone (`available` \| `information` \| `impaired` \|
12667
+ # `unavailable`).
12483
12668
  #
12484
12669
  # * `zone-id` - The ID of the Availability Zone (for example,
12485
- # `use1-az1`) or the Local Zone (for example, use `usw2-lax1-az1`).
12670
+ # `use1-az1`), the Local Zone (for example, `usw2-lax1-az1`), or the
12671
+ # Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12486
12672
  #
12487
12673
  # * `zone-type` - The type of zone, for example, `local-zone`.
12488
12674
  #
12489
12675
  # * `zone-name` - The name of the Availability Zone (for example,
12490
- # `us-east-1a`) or the Local Zone (for example, use
12491
- # `us-west-2-lax-1a`).
12676
+ # `us-east-1a`), the Local Zone (for example, `us-west-2-lax-1a`),
12677
+ # or the Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12492
12678
  #
12493
12679
  # * `zone-type` - The type of zone, for example, `local-zone`.
12494
12680
  # @return [Array<Types::Filter>]
12495
12681
  #
12496
12682
  # @!attribute [rw] zone_names
12497
- # The names of the Zones.
12683
+ # The names of the Availability Zones, Local Zones, and Wavelength
12684
+ # Zones.
12498
12685
  # @return [Array<String>]
12499
12686
  #
12500
12687
  # @!attribute [rw] zone_ids
12501
- # The IDs of the Zones.
12688
+ # The IDs of the Availability Zones, Local Zones, and Wavelength
12689
+ # Zones.
12502
12690
  # @return [Array<String>]
12503
12691
  #
12504
12692
  # @!attribute [rw] all_availability_zones
12505
- # Include all Availability Zones and Local Zones regardless of your
12506
- # opt in status.
12693
+ # Include all Availability Zones, Local Zones, and Wavelength Zones
12694
+ # regardless of your opt-in status.
12507
12695
  #
12508
12696
  # If you do not use this parameter, the results include only the zones
12509
12697
  # for the Regions where you have chosen the option to opt in.
@@ -12529,7 +12717,8 @@ module Aws::EC2
12529
12717
  end
12530
12718
 
12531
12719
  # @!attribute [rw] availability_zones
12532
- # Information about the Zones.
12720
+ # Information about the Availability Zones, Local Zones, and
12721
+ # Wavelength Zones.
12533
12722
  # @return [Array<Types::AvailabilityZone>]
12534
12723
  #
12535
12724
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesResult AWS API Documentation
@@ -12823,6 +13012,97 @@ module Aws::EC2
12823
13012
  include Aws::Structure
12824
13013
  end
12825
13014
 
13015
+ # @note When making an API call, you may pass DescribeCarrierGatewaysRequest
13016
+ # data as a hash:
13017
+ #
13018
+ # {
13019
+ # carrier_gateway_ids: ["CarrierGatewayId"],
13020
+ # filters: [
13021
+ # {
13022
+ # name: "String",
13023
+ # values: ["String"],
13024
+ # },
13025
+ # ],
13026
+ # max_results: 1,
13027
+ # next_token: "String",
13028
+ # dry_run: false,
13029
+ # }
13030
+ #
13031
+ # @!attribute [rw] carrier_gateway_ids
13032
+ # One or more carrier gateway IDs.
13033
+ # @return [Array<String>]
13034
+ #
13035
+ # @!attribute [rw] filters
13036
+ # One or more filters.
13037
+ #
13038
+ # * `carrier-gateway-id` - The ID of the carrier gateway.
13039
+ #
13040
+ # * `state` - The state of the carrier gateway (`pending` \| `failed`
13041
+ # \| `available` \| `deleting` \| `deleted`).
13042
+ #
13043
+ # * `owner-id` - The AWS account ID of the owner of the carrier
13044
+ # gateway.
13045
+ #
13046
+ # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
13047
+ # to the resource. Use the tag key in the filter name and the tag
13048
+ # value as the filter value. For example, to find all resources that
13049
+ # have a tag with the key `Owner` and the value `TeamA`, specify
13050
+ # `tag:Owner` for the filter name and `TeamA` for the filter value.
13051
+ #
13052
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
13053
+ # filter to find all resources assigned a tag with a specific key,
13054
+ # regardless of the tag value.
13055
+ #
13056
+ # * `vpc-id` - The ID of the VPC associated with the carrier gateway.
13057
+ # @return [Array<Types::Filter>]
13058
+ #
13059
+ # @!attribute [rw] max_results
13060
+ # The maximum number of results to return with a single call. To
13061
+ # retrieve the remaining results, make another call with the returned
13062
+ # `nextToken` value.
13063
+ # @return [Integer]
13064
+ #
13065
+ # @!attribute [rw] next_token
13066
+ # The token for the next page of results.
13067
+ # @return [String]
13068
+ #
13069
+ # @!attribute [rw] dry_run
13070
+ # Checks whether you have the required permissions for the action,
13071
+ # without actually making the request, and provides an error response.
13072
+ # If you have the required permissions, the error response is
13073
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13074
+ # @return [Boolean]
13075
+ #
13076
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysRequest AWS API Documentation
13077
+ #
13078
+ class DescribeCarrierGatewaysRequest < Struct.new(
13079
+ :carrier_gateway_ids,
13080
+ :filters,
13081
+ :max_results,
13082
+ :next_token,
13083
+ :dry_run)
13084
+ SENSITIVE = []
13085
+ include Aws::Structure
13086
+ end
13087
+
13088
+ # @!attribute [rw] carrier_gateways
13089
+ # Information about the carrier gateway.
13090
+ # @return [Array<Types::CarrierGateway>]
13091
+ #
13092
+ # @!attribute [rw] next_token
13093
+ # The token to use to retrieve the next page of results. This value is
13094
+ # `null` when there are no more results to return.
13095
+ # @return [String]
13096
+ #
13097
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysResult AWS API Documentation
13098
+ #
13099
+ class DescribeCarrierGatewaysResult < Struct.new(
13100
+ :carrier_gateways,
13101
+ :next_token)
13102
+ SENSITIVE = []
13103
+ include Aws::Structure
13104
+ end
13105
+
12826
13106
  # @note When making an API call, you may pass DescribeClassicLinkInstancesRequest
12827
13107
  # data as a hash:
12828
13108
  #
@@ -24023,7 +24303,7 @@ module Aws::EC2
24023
24303
  # Cloud User Guide*.
24024
24304
  #
24025
24305
  # Constraints: Range is 100-16,000 IOPS for `gp2` volumes and 100 to
24026
- # 64,000IOPS for `io1` volumes in most Regions. Maximum `io1` IOPS of
24306
+ # 64,000 IOPS for `io1` volumes in most Regions. Maximum `io1` IOPS of
24027
24307
  # 64,000 is guaranteed only on [Nitro-based instances][2]. Other
24028
24308
  # instance families guarantee performance up to 32,000 IOPS. For more
24029
24309
  # information, see [Amazon EBS Volume Types][1] in the *Amazon Elastic
@@ -29768,7 +30048,11 @@ module Aws::EC2
29768
30048
  # @return [String]
29769
30049
  #
29770
30050
  # @!attribute [rw] public_ip_address
29771
- # The public IPv4 address assigned to the instance, if applicable.
30051
+ # The public IPv4 address, or the Carrier IP address assigned to the
30052
+ # instance, if applicable.
30053
+ #
30054
+ # A Carrier IP address only applies to an instance launched in a
30055
+ # subnet associated with a Wavelength Zone.
29772
30056
  # @return [String]
29773
30057
  #
29774
30058
  # @!attribute [rw] ramdisk_id
@@ -30577,6 +30861,10 @@ module Aws::EC2
30577
30861
 
30578
30862
  # Describes association information for an Elastic IP address (IPv4).
30579
30863
  #
30864
+ # @!attribute [rw] carrier_ip
30865
+ # The carrier IP address associated with the network interface.
30866
+ # @return [String]
30867
+ #
30580
30868
  # @!attribute [rw] ip_owner_id
30581
30869
  # The ID of the owner of the Elastic IP address.
30582
30870
  # @return [String]
@@ -30593,6 +30881,7 @@ module Aws::EC2
30593
30881
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceAssociation AWS API Documentation
30594
30882
  #
30595
30883
  class InstanceNetworkInterfaceAssociation < Struct.new(
30884
+ :carrier_ip,
30596
30885
  :ip_owner_id,
30597
30886
  :public_dns_name,
30598
30887
  :public_ip)
@@ -30663,6 +30952,7 @@ module Aws::EC2
30663
30952
  # ],
30664
30953
  # secondary_private_ip_address_count: 1,
30665
30954
  # subnet_id: "String",
30955
+ # associate_carrier_ip_address: false,
30666
30956
  # interface_type: "String",
30667
30957
  # }
30668
30958
  #
@@ -30760,6 +31050,16 @@ module Aws::EC2
30760
31050
  # only if creating a network interface when launching an instance.
30761
31051
  # @return [String]
30762
31052
  #
31053
+ # @!attribute [rw] associate_carrier_ip_address
31054
+ # Indicates whether to assign a carrier IP address to the network
31055
+ # interface.
31056
+ #
31057
+ # You can only assign a carrier IP address to a network interface that
31058
+ # is in a subnet in a Wavelength Zone. For more information about
31059
+ # carrier IP addresses, see Carrier IP addresses in the AWS Wavelength
31060
+ # Developer Guide.
31061
+ # @return [Boolean]
31062
+ #
30763
31063
  # @!attribute [rw] interface_type
30764
31064
  # The type of network interface. To create an Elastic Fabric Adapter
30765
31065
  # (EFA), specify `efa`. For more information, see [Elastic Fabric
@@ -30790,6 +31090,7 @@ module Aws::EC2
30790
31090
  :private_ip_addresses,
30791
31091
  :secondary_private_ip_address_count,
30792
31092
  :subnet_id,
31093
+ :associate_carrier_ip_address,
30793
31094
  :interface_type)
30794
31095
  SENSITIVE = []
30795
31096
  include Aws::Structure
@@ -32577,6 +32878,20 @@ module Aws::EC2
32577
32878
 
32578
32879
  # Describes a network interface.
32579
32880
  #
32881
+ # @!attribute [rw] associate_carrier_ip_address
32882
+ # Indicates whether to associate a Carrier IP address with eth0 for a
32883
+ # new network interface.
32884
+ #
32885
+ # Use this option when you launch an instance in a Wavelength Zone and
32886
+ # want to associate a Carrier IP address with the network interface.
32887
+ # For more information about Carrier IP addresses, see [Carrier IP
32888
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
32889
+ #
32890
+ #
32891
+ #
32892
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
32893
+ # @return [Boolean]
32894
+ #
32580
32895
  # @!attribute [rw] associate_public_ip_address
32581
32896
  # Indicates whether to associate a public IPv4 address with eth0 for a
32582
32897
  # new network interface.
@@ -32635,6 +32950,7 @@ module Aws::EC2
32635
32950
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecification AWS API Documentation
32636
32951
  #
32637
32952
  class LaunchTemplateInstanceNetworkInterfaceSpecification < Struct.new(
32953
+ :associate_carrier_ip_address,
32638
32954
  :associate_public_ip_address,
32639
32955
  :delete_on_termination,
32640
32956
  :description,
@@ -32658,6 +32974,7 @@ module Aws::EC2
32658
32974
  # data as a hash:
32659
32975
  #
32660
32976
  # {
32977
+ # associate_carrier_ip_address: false,
32661
32978
  # associate_public_ip_address: false,
32662
32979
  # delete_on_termination: false,
32663
32980
  # description: "String",
@@ -32682,6 +32999,20 @@ module Aws::EC2
32682
32999
  # subnet_id: "SubnetId",
32683
33000
  # }
32684
33001
  #
33002
+ # @!attribute [rw] associate_carrier_ip_address
33003
+ # Associates a Carrier IP address with eth0 for a new network
33004
+ # interface.
33005
+ #
33006
+ # Use this option when you launch an instance in a Wavelength Zone and
33007
+ # want to associate a Carrier IP address with the network interface.
33008
+ # For more information about Carrier IP addresses, see [Carrier IP
33009
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
33010
+ #
33011
+ #
33012
+ #
33013
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
33014
+ # @return [Boolean]
33015
+ #
32685
33016
  # @!attribute [rw] associate_public_ip_address
32686
33017
  # Associates a public IPv4 address with eth0 for a new network
32687
33018
  # interface.
@@ -32756,6 +33087,7 @@ module Aws::EC2
32756
33087
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest AWS API Documentation
32757
33088
  #
32758
33089
  class LaunchTemplateInstanceNetworkInterfaceSpecificationRequest < Struct.new(
33090
+ :associate_carrier_ip_address,
32759
33091
  :associate_public_ip_address,
32760
33092
  :delete_on_termination,
32761
33093
  :description,
@@ -33761,13 +34093,15 @@ module Aws::EC2
33761
34093
  # }
33762
34094
  #
33763
34095
  # @!attribute [rw] group_name
33764
- # The name of the Availability Zone Group.
34096
+ # The name of the Availability Zone group, Local Zone group, or
34097
+ # Wavelength Zone group.
33765
34098
  # @return [String]
33766
34099
  #
33767
34100
  # @!attribute [rw] opt_in_status
33768
- # Indicates whether to enable or disable membership. The valid values
33769
- # are `opted-in`. You must contact [AWS Support][1] to disable an
33770
- # Availability Zone group.
34101
+ # Indicates whether you are opted in to the Local Zone group or
34102
+ # Wavelength Zone group. The only valid value is `opted-in`. You must
34103
+ # contact [AWS Support][1] to opt out of a Local Zone group, or
34104
+ # Wavelength Zone group.
33771
34105
  #
33772
34106
  #
33773
34107
  #
@@ -35482,10 +35816,6 @@ module Aws::EC2
35482
35816
  # value: false,
35483
35817
  # },
35484
35818
  # subnet_id: "SubnetId", # required
35485
- # map_customer_owned_ip_on_launch: {
35486
- # value: false,
35487
- # },
35488
- # customer_owned_ipv_4_pool: "CoipPoolId",
35489
35819
  # }
35490
35820
  #
35491
35821
  # @!attribute [rw] assign_ipv_6_address_on_creation
@@ -35509,30 +35839,12 @@ module Aws::EC2
35509
35839
  # The ID of the subnet.
35510
35840
  # @return [String]
35511
35841
  #
35512
- # @!attribute [rw] map_customer_owned_ip_on_launch
35513
- # Specify `true` to indicate that network interfaces attached to
35514
- # instances created in the specified subnet should be assigned a
35515
- # customer-owned IPv4 address.
35516
- #
35517
- # When this value is `true`, you must specify the customer-owned IP
35518
- # pool using `CustomerOwnedIpv4Pool`.
35519
- # @return [Types::AttributeBooleanValue]
35520
- #
35521
- # @!attribute [rw] customer_owned_ipv_4_pool
35522
- # The customer-owned IPv4 address pool associated with the subnet.
35523
- #
35524
- # You must set this value when you specify `true` for
35525
- # `MapCustomerOwnedIpOnLaunch`.
35526
- # @return [String]
35527
- #
35528
35842
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySubnetAttributeRequest AWS API Documentation
35529
35843
  #
35530
35844
  class ModifySubnetAttributeRequest < Struct.new(
35531
35845
  :assign_ipv_6_address_on_creation,
35532
35846
  :map_public_ip_on_launch,
35533
- :subnet_id,
35534
- :map_customer_owned_ip_on_launch,
35535
- :customer_owned_ipv_4_pool)
35847
+ :subnet_id)
35536
35848
  SENSITIVE = []
35537
35849
  include Aws::Structure
35538
35850
  end
@@ -36576,6 +36888,7 @@ module Aws::EC2
36576
36888
  # vpn_tunnel_outside_ip_address: "String", # required
36577
36889
  # tunnel_options: { # required
36578
36890
  # tunnel_inside_cidr: "String",
36891
+ # tunnel_inside_ipv_6_cidr: "String",
36579
36892
  # pre_shared_key: "String",
36580
36893
  # phase_1_lifetime_seconds: 1,
36581
36894
  # phase_2_lifetime_seconds: 1,
@@ -36671,6 +36984,7 @@ module Aws::EC2
36671
36984
  #
36672
36985
  # {
36673
36986
  # tunnel_inside_cidr: "String",
36987
+ # tunnel_inside_ipv_6_cidr: "String",
36674
36988
  # pre_shared_key: "String",
36675
36989
  # phase_1_lifetime_seconds: 1,
36676
36990
  # phase_2_lifetime_seconds: 1,
@@ -36716,9 +37030,9 @@ module Aws::EC2
36716
37030
  # }
36717
37031
  #
36718
37032
  # @!attribute [rw] tunnel_inside_cidr
36719
- # The range of inside IP addresses for the tunnel. Any specified CIDR
36720
- # blocks must be unique across all VPN connections that use the same
36721
- # virtual private gateway.
37033
+ # The range of inside IPv4 addresses for the tunnel. Any specified
37034
+ # CIDR blocks must be unique across all VPN connections that use the
37035
+ # same virtual private gateway.
36722
37036
  #
36723
37037
  # Constraints: A size /30 CIDR block from the `169.254.0.0/16` range.
36724
37038
  # The following CIDR blocks are reserved and cannot be used:
@@ -36738,6 +37052,14 @@ module Aws::EC2
36738
37052
  # * `169.254.169.252/30`
36739
37053
  # @return [String]
36740
37054
  #
37055
+ # @!attribute [rw] tunnel_inside_ipv_6_cidr
37056
+ # The range of inside IPv6 addresses for the tunnel. Any specified
37057
+ # CIDR blocks must be unique across all VPN connections that use the
37058
+ # same transit gateway.
37059
+ #
37060
+ # Constraints: A size /126 CIDR block from the local `fd00::/8` range.
37061
+ # @return [String]
37062
+ #
36741
37063
  # @!attribute [rw] pre_shared_key
36742
37064
  # The pre-shared key (PSK) to establish initial authentication between
36743
37065
  # the virtual private gateway and the customer gateway.
@@ -36805,36 +37127,38 @@ module Aws::EC2
36805
37127
  # One or more encryption algorithms that are permitted for the VPN
36806
37128
  # tunnel for phase 1 IKE negotiations.
36807
37129
  #
36808
- # Valid values: `AES128` \| `AES256`
37130
+ # Valid values: `AES128` \| `AES256` \| `AES128-GCM-16` \|
37131
+ # `AES256-GCM-16`
36809
37132
  # @return [Array<Types::Phase1EncryptionAlgorithmsRequestListValue>]
36810
37133
  #
36811
37134
  # @!attribute [rw] phase_2_encryption_algorithms
36812
37135
  # One or more encryption algorithms that are permitted for the VPN
36813
37136
  # tunnel for phase 2 IKE negotiations.
36814
37137
  #
36815
- # Valid values: `AES128` \| `AES256`
37138
+ # Valid values: `AES128` \| `AES256` \| `AES128-GCM-16` \|
37139
+ # `AES256-GCM-16`
36816
37140
  # @return [Array<Types::Phase2EncryptionAlgorithmsRequestListValue>]
36817
37141
  #
36818
37142
  # @!attribute [rw] phase_1_integrity_algorithms
36819
37143
  # One or more integrity algorithms that are permitted for the VPN
36820
37144
  # tunnel for phase 1 IKE negotiations.
36821
37145
  #
36822
- # Valid values: `SHA1` \| `SHA2-256`
37146
+ # Valid values: `SHA1` \| `SHA2-256` \| `SHA2-384` \| `SHA2-512`
36823
37147
  # @return [Array<Types::Phase1IntegrityAlgorithmsRequestListValue>]
36824
37148
  #
36825
37149
  # @!attribute [rw] phase_2_integrity_algorithms
36826
37150
  # One or more integrity algorithms that are permitted for the VPN
36827
37151
  # tunnel for phase 2 IKE negotiations.
36828
37152
  #
36829
- # Valid values: `SHA1` \| `SHA2-256`
37153
+ # Valid values: `SHA1` \| `SHA2-256` \| `SHA2-384` \| `SHA2-512`
36830
37154
  # @return [Array<Types::Phase2IntegrityAlgorithmsRequestListValue>]
36831
37155
  #
36832
37156
  # @!attribute [rw] phase_1_dh_group_numbers
36833
37157
  # One or more Diffie-Hellman group numbers that are permitted for the
36834
37158
  # VPN tunnel for phase 1 IKE negotiations.
36835
37159
  #
36836
- # Valid values: `2` \| `14` \| `15` \| `16` \| `17` \| `18` \| `22` \|
36837
- # `23` \| `24`
37160
+ # Valid values: `2` \| `14` \| `15` \| `16` \| `17` \| `18` \| `19` \|
37161
+ # `20` \| `21` \| `22` \| `23` \| `24`
36838
37162
  # @return [Array<Types::Phase1DHGroupNumbersRequestListValue>]
36839
37163
  #
36840
37164
  # @!attribute [rw] phase_2_dh_group_numbers
@@ -36842,7 +37166,7 @@ module Aws::EC2
36842
37166
  # VPN tunnel for phase 2 IKE negotiations.
36843
37167
  #
36844
37168
  # Valid values: `2` \| `5` \| `14` \| `15` \| `16` \| `17` \| `18` \|
36845
- # `22` \| `23` \| `24`
37169
+ # `19` \| `20` \| `21` \| `22` \| `23` \| `24`
36846
37170
  # @return [Array<Types::Phase2DHGroupNumbersRequestListValue>]
36847
37171
  #
36848
37172
  # @!attribute [rw] ike_versions
@@ -36855,6 +37179,7 @@ module Aws::EC2
36855
37179
  #
36856
37180
  class ModifyVpnTunnelOptionsSpecification < Struct.new(
36857
37181
  :tunnel_inside_cidr,
37182
+ :tunnel_inside_ipv_6_cidr,
36858
37183
  :pre_shared_key,
36859
37184
  :phase_1_lifetime_seconds,
36860
37185
  :phase_2_lifetime_seconds,
@@ -37416,7 +37741,8 @@ module Aws::EC2
37416
37741
  end
37417
37742
 
37418
37743
  # Describes association information for an Elastic IP address (IPv4
37419
- # only).
37744
+ # only), or a Carrier IP address (for a network interface which resides
37745
+ # in a subnet in a Wavelength Zone).
37420
37746
  #
37421
37747
  # @!attribute [rw] allocation_id
37422
37748
  # The allocation ID.
@@ -37435,8 +37761,15 @@ module Aws::EC2
37435
37761
  # @return [String]
37436
37762
  #
37437
37763
  # @!attribute [rw] public_ip
37438
- # The address of the Elastic IP address bound to the network
37439
- # interface.
37764
+ # The address of the Elastic IP address or Carrier IP address bound to
37765
+ # the network interface.
37766
+ # @return [String]
37767
+ #
37768
+ # @!attribute [rw] carrier_ip
37769
+ # The carrier IP address associated with the network interface.
37770
+ #
37771
+ # This option is only available when the network interface is in a
37772
+ # subnet which is associated with a Wavelength Zone.
37440
37773
  # @return [String]
37441
37774
  #
37442
37775
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAssociation AWS API Documentation
@@ -37446,7 +37779,8 @@ module Aws::EC2
37446
37779
  :association_id,
37447
37780
  :ip_owner_id,
37448
37781
  :public_dns_name,
37449
- :public_ip)
37782
+ :public_ip,
37783
+ :carrier_ip)
37450
37784
  SENSITIVE = []
37451
37785
  include Aws::Structure
37452
37786
  end
@@ -39836,7 +40170,8 @@ module Aws::EC2
39836
40170
  # @return [String]
39837
40171
  #
39838
40172
  # @!attribute [rw] network_border_group
39839
- # The location that the IP address is released from.
40173
+ # The set of Availability Zones, Local Zones, or Wavelength Zones from
40174
+ # which AWS advertises IP addresses.
39840
40175
  #
39841
40176
  # If you provide an incorrect network border group, you will receive
39842
40177
  # an `InvalidAddress.NotFound` error. For more information, see [Error
@@ -40129,6 +40464,7 @@ module Aws::EC2
40129
40464
  # nat_gateway_id: "NatGatewayId",
40130
40465
  # transit_gateway_id: "TransitGatewayId",
40131
40466
  # local_gateway_id: "LocalGatewayId",
40467
+ # carrier_gateway_id: "CarrierGatewayId",
40132
40468
  # network_interface_id: "NetworkInterfaceId",
40133
40469
  # route_table_id: "RouteTableId", # required
40134
40470
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
@@ -40186,6 +40522,10 @@ module Aws::EC2
40186
40522
  # The ID of the local gateway.
40187
40523
  # @return [String]
40188
40524
  #
40525
+ # @!attribute [rw] carrier_gateway_id
40526
+ # \[IPv4 traffic only\] The ID of a carrier gateway.
40527
+ # @return [String]
40528
+ #
40189
40529
  # @!attribute [rw] network_interface_id
40190
40530
  # The ID of a network interface.
40191
40531
  # @return [String]
@@ -40212,6 +40552,7 @@ module Aws::EC2
40212
40552
  :nat_gateway_id,
40213
40553
  :transit_gateway_id,
40214
40554
  :local_gateway_id,
40555
+ :carrier_gateway_id,
40215
40556
  :network_interface_id,
40216
40557
  :route_table_id,
40217
40558
  :vpc_peering_connection_id)
@@ -40442,6 +40783,7 @@ module Aws::EC2
40442
40783
  # ],
40443
40784
  # network_interfaces: [
40444
40785
  # {
40786
+ # associate_carrier_ip_address: false,
40445
40787
  # associate_public_ip_address: false,
40446
40788
  # delete_on_termination: false,
40447
40789
  # description: "String",
@@ -40861,6 +41203,7 @@ module Aws::EC2
40861
41203
  # ],
40862
41204
  # secondary_private_ip_address_count: 1,
40863
41205
  # subnet_id: "String",
41206
+ # associate_carrier_ip_address: false,
40864
41207
  # interface_type: "String",
40865
41208
  # },
40866
41209
  # ],
@@ -41049,6 +41392,7 @@ module Aws::EC2
41049
41392
  # ],
41050
41393
  # secondary_private_ip_address_count: 1,
41051
41394
  # subnet_id: "String",
41395
+ # associate_carrier_ip_address: false,
41052
41396
  # interface_type: "String",
41053
41397
  # },
41054
41398
  # ],
@@ -41296,6 +41640,7 @@ module Aws::EC2
41296
41640
  # ],
41297
41641
  # secondary_private_ip_address_count: 1,
41298
41642
  # subnet_id: "String",
41643
+ # associate_carrier_ip_address: false,
41299
41644
  # interface_type: "String",
41300
41645
  # },
41301
41646
  # ],
@@ -42790,6 +43135,10 @@ module Aws::EC2
42790
43135
  # The ID of the local gateway.
42791
43136
  # @return [String]
42792
43137
  #
43138
+ # @!attribute [rw] carrier_gateway_id
43139
+ # The ID of the carrier gateway.
43140
+ # @return [String]
43141
+ #
42793
43142
  # @!attribute [rw] network_interface_id
42794
43143
  # The ID of the network interface.
42795
43144
  # @return [String]
@@ -42830,6 +43179,7 @@ module Aws::EC2
42830
43179
  :nat_gateway_id,
42831
43180
  :transit_gateway_id,
42832
43181
  :local_gateway_id,
43182
+ :carrier_gateway_id,
42833
43183
  :network_interface_id,
42834
43184
  :origin,
42835
43185
  :state,
@@ -43049,6 +43399,7 @@ module Aws::EC2
43049
43399
  # ],
43050
43400
  # secondary_private_ip_address_count: 1,
43051
43401
  # subnet_id: "String",
43402
+ # associate_carrier_ip_address: false,
43052
43403
  # interface_type: "String",
43053
43404
  # },
43054
43405
  # ],
@@ -45524,6 +45875,7 @@ module Aws::EC2
45524
45875
  # ],
45525
45876
  # secondary_private_ip_address_count: 1,
45526
45877
  # subnet_id: "String",
45878
+ # associate_carrier_ip_address: false,
45527
45879
  # interface_type: "String",
45528
45880
  # },
45529
45881
  # ],
@@ -45818,6 +46170,7 @@ module Aws::EC2
45818
46170
  # ],
45819
46171
  # secondary_private_ip_address_count: 1,
45820
46172
  # subnet_id: "String",
46173
+ # associate_carrier_ip_address: false,
45821
46174
  # interface_type: "String",
45822
46175
  # },
45823
46176
  # ],
@@ -48847,7 +49200,11 @@ module Aws::EC2
48847
49200
  # @return [String]
48848
49201
  #
48849
49202
  # @!attribute [rw] tunnel_inside_cidr
48850
- # The range of inside IP addresses for the tunnel.
49203
+ # The range of inside IPv4 addresses for the tunnel.
49204
+ # @return [String]
49205
+ #
49206
+ # @!attribute [rw] tunnel_inside_ipv_6_cidr
49207
+ # The range of inside IPv6 addresses for the tunnel.
48851
49208
  # @return [String]
48852
49209
  #
48853
49210
  # @!attribute [rw] pre_shared_key
@@ -48922,6 +49279,7 @@ module Aws::EC2
48922
49279
  class TunnelOption < Struct.new(
48923
49280
  :outside_ip_address,
48924
49281
  :tunnel_inside_cidr,
49282
+ :tunnel_inside_ipv_6_cidr,
48925
49283
  :pre_shared_key,
48926
49284
  :phase_1_lifetime_seconds,
48927
49285
  :phase_2_lifetime_seconds,
@@ -50005,8 +50363,7 @@ module Aws::EC2
50005
50363
  # @return [String]
50006
50364
  #
50007
50365
  # @!attribute [rw] dhcp_options_id
50008
- # The ID of the set of DHCP options you've associated with the VPC
50009
- # (or `default` if the default options are associated with the VPC).
50366
+ # The ID of the set of DHCP options you've associated with the VPC.
50010
50367
  # @return [String]
50011
50368
  #
50012
50369
  # @!attribute [rw] state
@@ -50303,8 +50660,9 @@ module Aws::EC2
50303
50660
  # @return [Types::VpcCidrBlockState]
50304
50661
  #
50305
50662
  # @!attribute [rw] network_border_group
50306
- # The name of the location from which we advertise the IPV6 CIDR
50307
- # block.
50663
+ # The name of the unique set of Availability Zones, Local Zones, or
50664
+ # Wavelength Zones from which AWS advertises IP addresses, for
50665
+ # example, `us-east-1-wl1-bos-wlz-1`.
50308
50666
  # @return [String]
50309
50667
  #
50310
50668
  # @!attribute [rw] ipv_6_pool
@@ -50544,6 +50902,10 @@ module Aws::EC2
50544
50902
  # routes must be used for devices that don't support BGP.
50545
50903
  # @return [Boolean]
50546
50904
  #
50905
+ # @!attribute [rw] tunnel_inside_ip_version
50906
+ # Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.
50907
+ # @return [String]
50908
+ #
50547
50909
  # @!attribute [rw] tunnel_options
50548
50910
  # Indicates the VPN tunnel options.
50549
50911
  # @return [Array<Types::TunnelOption>]
@@ -50553,6 +50915,7 @@ module Aws::EC2
50553
50915
  class VpnConnectionOptions < Struct.new(
50554
50916
  :enable_acceleration,
50555
50917
  :static_routes_only,
50918
+ :tunnel_inside_ip_version,
50556
50919
  :tunnel_options)
50557
50920
  SENSITIVE = []
50558
50921
  include Aws::Structure
@@ -50566,9 +50929,11 @@ module Aws::EC2
50566
50929
  # {
50567
50930
  # enable_acceleration: false,
50568
50931
  # static_routes_only: false,
50932
+ # tunnel_inside_ip_version: "ipv4", # accepts ipv4, ipv6
50569
50933
  # tunnel_options: [
50570
50934
  # {
50571
50935
  # tunnel_inside_cidr: "String",
50936
+ # tunnel_inside_ipv_6_cidr: "String",
50572
50937
  # pre_shared_key: "String",
50573
50938
  # phase_1_lifetime_seconds: 1,
50574
50939
  # phase_2_lifetime_seconds: 1,
@@ -50630,6 +50995,12 @@ module Aws::EC2
50630
50995
  # Default: `false`
50631
50996
  # @return [Boolean]
50632
50997
  #
50998
+ # @!attribute [rw] tunnel_inside_ip_version
50999
+ # Indicate whether the VPN tunnels process IPv4 or IPv6 traffic.
51000
+ #
51001
+ # Default: `ipv4`
51002
+ # @return [String]
51003
+ #
50633
51004
  # @!attribute [rw] tunnel_options
50634
51005
  # The tunnel options for the VPN connection.
50635
51006
  # @return [Array<Types::VpnTunnelOptionsSpecification>]
@@ -50639,6 +51010,7 @@ module Aws::EC2
50639
51010
  class VpnConnectionOptionsSpecification < Struct.new(
50640
51011
  :enable_acceleration,
50641
51012
  :static_routes_only,
51013
+ :tunnel_inside_ip_version,
50642
51014
  :tunnel_options)
50643
51015
  SENSITIVE = []
50644
51016
  include Aws::Structure
@@ -50722,6 +51094,7 @@ module Aws::EC2
50722
51094
  #
50723
51095
  # {
50724
51096
  # tunnel_inside_cidr: "String",
51097
+ # tunnel_inside_ipv_6_cidr: "String",
50725
51098
  # pre_shared_key: "String",
50726
51099
  # phase_1_lifetime_seconds: 1,
50727
51100
  # phase_2_lifetime_seconds: 1,
@@ -50767,9 +51140,9 @@ module Aws::EC2
50767
51140
  # }
50768
51141
  #
50769
51142
  # @!attribute [rw] tunnel_inside_cidr
50770
- # The range of inside IP addresses for the tunnel. Any specified CIDR
50771
- # blocks must be unique across all VPN connections that use the same
50772
- # virtual private gateway.
51143
+ # The range of inside IPv4 addresses for the tunnel. Any specified
51144
+ # CIDR blocks must be unique across all VPN connections that use the
51145
+ # same virtual private gateway.
50773
51146
  #
50774
51147
  # Constraints: A size /30 CIDR block from the `169.254.0.0/16` range.
50775
51148
  # The following CIDR blocks are reserved and cannot be used:
@@ -50789,6 +51162,14 @@ module Aws::EC2
50789
51162
  # * `169.254.169.252/30`
50790
51163
  # @return [String]
50791
51164
  #
51165
+ # @!attribute [rw] tunnel_inside_ipv_6_cidr
51166
+ # The range of inside IPv6 addresses for the tunnel. Any specified
51167
+ # CIDR blocks must be unique across all VPN connections that use the
51168
+ # same transit gateway.
51169
+ #
51170
+ # Constraints: A size /126 CIDR block from the local `fd00::/8` range.
51171
+ # @return [String]
51172
+ #
50792
51173
  # @!attribute [rw] pre_shared_key
50793
51174
  # The pre-shared key (PSK) to establish initial authentication between
50794
51175
  # the virtual private gateway and customer gateway.
@@ -50856,36 +51237,38 @@ module Aws::EC2
50856
51237
  # One or more encryption algorithms that are permitted for the VPN
50857
51238
  # tunnel for phase 1 IKE negotiations.
50858
51239
  #
50859
- # Valid values: `AES128` \| `AES256`
51240
+ # Valid values: `AES128` \| `AES256` \| `AES128-GCM-16` \|
51241
+ # `AES256-GCM-16`
50860
51242
  # @return [Array<Types::Phase1EncryptionAlgorithmsRequestListValue>]
50861
51243
  #
50862
51244
  # @!attribute [rw] phase_2_encryption_algorithms
50863
51245
  # One or more encryption algorithms that are permitted for the VPN
50864
51246
  # tunnel for phase 2 IKE negotiations.
50865
51247
  #
50866
- # Valid values: `AES128` \| `AES256`
51248
+ # Valid values: `AES128` \| `AES256` \| `AES128-GCM-16` \|
51249
+ # `AES256-GCM-16`
50867
51250
  # @return [Array<Types::Phase2EncryptionAlgorithmsRequestListValue>]
50868
51251
  #
50869
51252
  # @!attribute [rw] phase_1_integrity_algorithms
50870
51253
  # One or more integrity algorithms that are permitted for the VPN
50871
51254
  # tunnel for phase 1 IKE negotiations.
50872
51255
  #
50873
- # Valid values: `SHA1` \| `SHA2-256`
51256
+ # Valid values: `SHA1` \| `SHA2-256` \| `SHA2-384` \| `SHA2-512`
50874
51257
  # @return [Array<Types::Phase1IntegrityAlgorithmsRequestListValue>]
50875
51258
  #
50876
51259
  # @!attribute [rw] phase_2_integrity_algorithms
50877
51260
  # One or more integrity algorithms that are permitted for the VPN
50878
51261
  # tunnel for phase 2 IKE negotiations.
50879
51262
  #
50880
- # Valid values: `SHA1` \| `SHA2-256`
51263
+ # Valid values: `SHA1` \| `SHA2-256` \| `SHA2-384` \| `SHA2-512`
50881
51264
  # @return [Array<Types::Phase2IntegrityAlgorithmsRequestListValue>]
50882
51265
  #
50883
51266
  # @!attribute [rw] phase_1_dh_group_numbers
50884
51267
  # One or more Diffie-Hellman group numbers that are permitted for the
50885
51268
  # VPN tunnel for phase 1 IKE negotiations.
50886
51269
  #
50887
- # Valid values: `2` \| `14` \| `15` \| `16` \| `17` \| `18` \| `22` \|
50888
- # `23` \| `24`
51270
+ # Valid values: `2` \| `14` \| `15` \| `16` \| `17` \| `18` \| `19` \|
51271
+ # `20` \| `21` \| `22` \| `23` \| `24`
50889
51272
  # @return [Array<Types::Phase1DHGroupNumbersRequestListValue>]
50890
51273
  #
50891
51274
  # @!attribute [rw] phase_2_dh_group_numbers
@@ -50893,7 +51276,7 @@ module Aws::EC2
50893
51276
  # VPN tunnel for phase 2 IKE negotiations.
50894
51277
  #
50895
51278
  # Valid values: `2` \| `5` \| `14` \| `15` \| `16` \| `17` \| `18` \|
50896
- # `22` \| `23` \| `24`
51279
+ # `19` \| `20` \| `21` \| `22` \| `23` \| `24`
50897
51280
  # @return [Array<Types::Phase2DHGroupNumbersRequestListValue>]
50898
51281
  #
50899
51282
  # @!attribute [rw] ike_versions
@@ -50906,6 +51289,7 @@ module Aws::EC2
50906
51289
  #
50907
51290
  class VpnTunnelOptionsSpecification < Struct.new(
50908
51291
  :tunnel_inside_cidr,
51292
+ :tunnel_inside_ipv_6_cidr,
50909
51293
  :pre_shared_key,
50910
51294
  :phase_1_lifetime_seconds,
50911
51295
  :phase_2_lifetime_seconds,