aws-sdk-ec2 1.182.0 → 1.183.0

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.
@@ -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')
@@ -2143,6 +2155,7 @@ module Aws::EC2
2143
2155
  Address.add_member(:network_border_group, Shapes::ShapeRef.new(shape: String, location_name: "networkBorderGroup"))
2144
2156
  Address.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2145
2157
  Address.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2158
+ Address.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2146
2159
  Address.struct_class = Types::Address
2147
2160
 
2148
2161
  AddressList.member = Shapes::ShapeRef.new(shape: Address, location_name: "item")
@@ -2169,6 +2182,7 @@ module Aws::EC2
2169
2182
  AllocateAddressResult.add_member(:domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "domain"))
2170
2183
  AllocateAddressResult.add_member(:customer_owned_ip, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIp"))
2171
2184
  AllocateAddressResult.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: String, location_name: "customerOwnedIpv4Pool"))
2185
+ AllocateAddressResult.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
2172
2186
  AllocateAddressResult.struct_class = Types::AllocateAddressResult
2173
2187
 
2174
2188
  AllocateHostsRequest.add_member(:auto_placement, Shapes::ShapeRef.new(shape: AutoPlacement, location_name: "autoPlacement"))
@@ -2615,6 +2629,17 @@ module Aws::EC2
2615
2629
  CapacityReservationTargetResponse.add_member(:capacity_reservation_resource_group_arn, Shapes::ShapeRef.new(shape: String, location_name: "capacityReservationResourceGroupArn"))
2616
2630
  CapacityReservationTargetResponse.struct_class = Types::CapacityReservationTargetResponse
2617
2631
 
2632
+ CarrierGateway.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "carrierGatewayId"))
2633
+ CarrierGateway.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
2634
+ CarrierGateway.add_member(:state, Shapes::ShapeRef.new(shape: CarrierGatewayState, location_name: "state"))
2635
+ CarrierGateway.add_member(:owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ownerId"))
2636
+ CarrierGateway.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
2637
+ CarrierGateway.struct_class = Types::CarrierGateway
2638
+
2639
+ CarrierGatewayIdSet.member = Shapes::ShapeRef.new(shape: CarrierGatewayId)
2640
+
2641
+ CarrierGatewaySet.member = Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "item")
2642
+
2618
2643
  CertificateAuthentication.add_member(:client_root_certificate_chain, Shapes::ShapeRef.new(shape: String, location_name: "clientRootCertificateChain"))
2619
2644
  CertificateAuthentication.struct_class = Types::CertificateAuthentication
2620
2645
 
@@ -2877,6 +2902,15 @@ module Aws::EC2
2877
2902
  CreateCapacityReservationResult.add_member(:capacity_reservation, Shapes::ShapeRef.new(shape: CapacityReservation, location_name: "capacityReservation"))
2878
2903
  CreateCapacityReservationResult.struct_class = Types::CreateCapacityReservationResult
2879
2904
 
2905
+ CreateCarrierGatewayRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "VpcId"))
2906
+ CreateCarrierGatewayRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
2907
+ CreateCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
2908
+ CreateCarrierGatewayRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
2909
+ CreateCarrierGatewayRequest.struct_class = Types::CreateCarrierGatewayRequest
2910
+
2911
+ CreateCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
2912
+ CreateCarrierGatewayResult.struct_class = Types::CreateCarrierGatewayResult
2913
+
2880
2914
  CreateClientVpnEndpointRequest.add_member(:client_cidr_block, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ClientCidrBlock"))
2881
2915
  CreateClientVpnEndpointRequest.add_member(:server_certificate_arn, Shapes::ShapeRef.new(shape: String, required: true, location_name: "ServerCertificateArn"))
2882
2916
  CreateClientVpnEndpointRequest.add_member(:authentication_options, Shapes::ShapeRef.new(shape: ClientVpnAuthenticationRequestList, required: true, location_name: "Authentication"))
@@ -3195,6 +3229,7 @@ module Aws::EC2
3195
3229
  CreateRouteRequest.add_member(:nat_gateway_id, Shapes::ShapeRef.new(shape: NatGatewayId, location_name: "natGatewayId"))
3196
3230
  CreateRouteRequest.add_member(:transit_gateway_id, Shapes::ShapeRef.new(shape: TransitGatewayId, location_name: "TransitGatewayId"))
3197
3231
  CreateRouteRequest.add_member(:local_gateway_id, Shapes::ShapeRef.new(shape: LocalGatewayId, location_name: "LocalGatewayId"))
3232
+ CreateRouteRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, location_name: "CarrierGatewayId"))
3198
3233
  CreateRouteRequest.add_member(:network_interface_id, Shapes::ShapeRef.new(shape: NetworkInterfaceId, location_name: "networkInterfaceId"))
3199
3234
  CreateRouteRequest.add_member(:route_table_id, Shapes::ShapeRef.new(shape: RouteTableId, required: true, location_name: "routeTableId"))
3200
3235
  CreateRouteRequest.add_member(:vpc_peering_connection_id, Shapes::ShapeRef.new(shape: VpcPeeringConnectionId, location_name: "vpcPeeringConnectionId"))
@@ -3515,6 +3550,13 @@ module Aws::EC2
3515
3550
 
3516
3551
  CustomerGatewayList.member = Shapes::ShapeRef.new(shape: CustomerGateway, location_name: "item")
3517
3552
 
3553
+ DeleteCarrierGatewayRequest.add_member(:carrier_gateway_id, Shapes::ShapeRef.new(shape: CarrierGatewayId, required: true, location_name: "CarrierGatewayId"))
3554
+ DeleteCarrierGatewayRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3555
+ DeleteCarrierGatewayRequest.struct_class = Types::DeleteCarrierGatewayRequest
3556
+
3557
+ DeleteCarrierGatewayResult.add_member(:carrier_gateway, Shapes::ShapeRef.new(shape: CarrierGateway, location_name: "carrierGateway"))
3558
+ DeleteCarrierGatewayResult.struct_class = Types::DeleteCarrierGatewayResult
3559
+
3518
3560
  DeleteClientVpnEndpointRequest.add_member(:client_vpn_endpoint_id, Shapes::ShapeRef.new(shape: ClientVpnEndpointId, required: true, location_name: "ClientVpnEndpointId"))
3519
3561
  DeleteClientVpnEndpointRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3520
3562
  DeleteClientVpnEndpointRequest.struct_class = Types::DeleteClientVpnEndpointRequest
@@ -3949,6 +3991,17 @@ module Aws::EC2
3949
3991
  DescribeCapacityReservationsResult.add_member(:capacity_reservations, Shapes::ShapeRef.new(shape: CapacityReservationSet, location_name: "capacityReservationSet"))
3950
3992
  DescribeCapacityReservationsResult.struct_class = Types::DescribeCapacityReservationsResult
3951
3993
 
3994
+ DescribeCarrierGatewaysRequest.add_member(:carrier_gateway_ids, Shapes::ShapeRef.new(shape: CarrierGatewayIdSet, location_name: "CarrierGatewayId"))
3995
+ DescribeCarrierGatewaysRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3996
+ DescribeCarrierGatewaysRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: CarrierGatewayMaxResults, location_name: "MaxResults"))
3997
+ DescribeCarrierGatewaysRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "NextToken"))
3998
+ DescribeCarrierGatewaysRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3999
+ DescribeCarrierGatewaysRequest.struct_class = Types::DescribeCarrierGatewaysRequest
4000
+
4001
+ DescribeCarrierGatewaysResult.add_member(:carrier_gateways, Shapes::ShapeRef.new(shape: CarrierGatewaySet, location_name: "carrierGatewaySet"))
4002
+ DescribeCarrierGatewaysResult.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
4003
+ DescribeCarrierGatewaysResult.struct_class = Types::DescribeCarrierGatewaysResult
4004
+
3952
4005
  DescribeClassicLinkInstancesRequest.add_member(:filters, Shapes::ShapeRef.new(shape: FilterList, location_name: "Filter"))
3953
4006
  DescribeClassicLinkInstancesRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
3954
4007
  DescribeClassicLinkInstancesRequest.add_member(:instance_ids, Shapes::ShapeRef.new(shape: InstanceIdStringList, location_name: "InstanceId"))
@@ -6508,6 +6561,7 @@ module Aws::EC2
6508
6561
  InstanceNetworkInterface.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "interfaceType"))
6509
6562
  InstanceNetworkInterface.struct_class = Types::InstanceNetworkInterface
6510
6563
 
6564
+ InstanceNetworkInterfaceAssociation.add_member(:carrier_ip, Shapes::ShapeRef.new(shape: String, location_name: "carrierIp"))
6511
6565
  InstanceNetworkInterfaceAssociation.add_member(:ip_owner_id, Shapes::ShapeRef.new(shape: String, location_name: "ipOwnerId"))
6512
6566
  InstanceNetworkInterfaceAssociation.add_member(:public_dns_name, Shapes::ShapeRef.new(shape: String, location_name: "publicDnsName"))
6513
6567
  InstanceNetworkInterfaceAssociation.add_member(:public_ip, Shapes::ShapeRef.new(shape: String, location_name: "publicIp"))
@@ -6534,6 +6588,7 @@ module Aws::EC2
6534
6588
  InstanceNetworkInterfaceSpecification.add_member(:private_ip_addresses, Shapes::ShapeRef.new(shape: PrivateIpAddressSpecificationList, location_name: "privateIpAddressesSet", metadata: {"queryName"=>"PrivateIpAddresses"}))
6535
6589
  InstanceNetworkInterfaceSpecification.add_member(:secondary_private_ip_address_count, Shapes::ShapeRef.new(shape: Integer, location_name: "secondaryPrivateIpAddressCount"))
6536
6590
  InstanceNetworkInterfaceSpecification.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
6591
+ InstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6537
6592
  InstanceNetworkInterfaceSpecification.add_member(:interface_type, Shapes::ShapeRef.new(shape: String, location_name: "InterfaceType"))
6538
6593
  InstanceNetworkInterfaceSpecification.struct_class = Types::InstanceNetworkInterfaceSpecification
6539
6594
 
@@ -6878,6 +6933,7 @@ module Aws::EC2
6878
6933
  LaunchTemplateInstanceMetadataOptionsRequest.add_member(:http_endpoint, Shapes::ShapeRef.new(shape: LaunchTemplateInstanceMetadataEndpointState, location_name: "HttpEndpoint"))
6879
6934
  LaunchTemplateInstanceMetadataOptionsRequest.struct_class = Types::LaunchTemplateInstanceMetadataOptionsRequest
6880
6935
 
6936
+ LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associateCarrierIpAddress"))
6881
6937
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "associatePublicIpAddress"))
6882
6938
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "deleteOnTermination"))
6883
6939
  LaunchTemplateInstanceNetworkInterfaceSpecification.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "description"))
@@ -6895,6 +6951,7 @@ module Aws::EC2
6895
6951
 
6896
6952
  LaunchTemplateInstanceNetworkInterfaceSpecificationList.member = Shapes::ShapeRef.new(shape: LaunchTemplateInstanceNetworkInterfaceSpecification, location_name: "item")
6897
6953
 
6954
+ LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_carrier_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociateCarrierIpAddress"))
6898
6955
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:associate_public_ip_address, Shapes::ShapeRef.new(shape: Boolean, location_name: "AssociatePublicIpAddress"))
6899
6956
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:delete_on_termination, Shapes::ShapeRef.new(shape: Boolean, location_name: "DeleteOnTermination"))
6900
6957
  LaunchTemplateInstanceNetworkInterfaceSpecificationRequest.add_member(:description, Shapes::ShapeRef.new(shape: String, location_name: "Description"))
@@ -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"))
@@ -10379,6 +10439,14 @@ module Aws::EC2
10379
10439
  o.output = Shapes::ShapeRef.new(shape: CreateCapacityReservationResult)
10380
10440
  end)
10381
10441
 
10442
+ api.add_operation(:create_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10443
+ o.name = "CreateCarrierGateway"
10444
+ o.http_method = "POST"
10445
+ o.http_request_uri = "/"
10446
+ o.input = Shapes::ShapeRef.new(shape: CreateCarrierGatewayRequest)
10447
+ o.output = Shapes::ShapeRef.new(shape: CreateCarrierGatewayResult)
10448
+ end)
10449
+
10382
10450
  api.add_operation(:create_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10383
10451
  o.name = "CreateClientVpnEndpoint"
10384
10452
  o.http_method = "POST"
@@ -10803,6 +10871,14 @@ module Aws::EC2
10803
10871
  o.output = Shapes::ShapeRef.new(shape: CreateVpnGatewayResult)
10804
10872
  end)
10805
10873
 
10874
+ api.add_operation(:delete_carrier_gateway, Seahorse::Model::Operation.new.tap do |o|
10875
+ o.name = "DeleteCarrierGateway"
10876
+ o.http_method = "POST"
10877
+ o.http_request_uri = "/"
10878
+ o.input = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayRequest)
10879
+ o.output = Shapes::ShapeRef.new(shape: DeleteCarrierGatewayResult)
10880
+ end)
10881
+
10806
10882
  api.add_operation(:delete_client_vpn_endpoint, Seahorse::Model::Operation.new.tap do |o|
10807
10883
  o.name = "DeleteClientVpnEndpoint"
10808
10884
  o.http_method = "POST"
@@ -11295,6 +11371,20 @@ module Aws::EC2
11295
11371
  )
11296
11372
  end)
11297
11373
 
11374
+ api.add_operation(:describe_carrier_gateways, Seahorse::Model::Operation.new.tap do |o|
11375
+ o.name = "DescribeCarrierGateways"
11376
+ o.http_method = "POST"
11377
+ o.http_request_uri = "/"
11378
+ o.input = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysRequest)
11379
+ o.output = Shapes::ShapeRef.new(shape: DescribeCarrierGatewaysResult)
11380
+ o[:pager] = Aws::Pager.new(
11381
+ limit_key: "max_results",
11382
+ tokens: {
11383
+ "next_token" => "next_token"
11384
+ }
11385
+ )
11386
+ end)
11387
+
11298
11388
  api.add_operation(:describe_classic_link_instances, Seahorse::Model::Operation.new.tap do |o|
11299
11389
  o.name = "DescribeClassicLinkInstances"
11300
11390
  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)
@@ -10037,6 +10172,46 @@ module Aws::EC2
10037
10172
  include Aws::Structure
10038
10173
  end
10039
10174
 
10175
+ # @note When making an API call, you may pass DeleteCarrierGatewayRequest
10176
+ # data as a hash:
10177
+ #
10178
+ # {
10179
+ # carrier_gateway_id: "CarrierGatewayId", # required
10180
+ # dry_run: false,
10181
+ # }
10182
+ #
10183
+ # @!attribute [rw] carrier_gateway_id
10184
+ # The ID of the carrier gateway.
10185
+ # @return [String]
10186
+ #
10187
+ # @!attribute [rw] dry_run
10188
+ # Checks whether you have the required permissions for the action,
10189
+ # without actually making the request, and provides an error response.
10190
+ # If you have the required permissions, the error response is
10191
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10192
+ # @return [Boolean]
10193
+ #
10194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayRequest AWS API Documentation
10195
+ #
10196
+ class DeleteCarrierGatewayRequest < Struct.new(
10197
+ :carrier_gateway_id,
10198
+ :dry_run)
10199
+ SENSITIVE = []
10200
+ include Aws::Structure
10201
+ end
10202
+
10203
+ # @!attribute [rw] carrier_gateway
10204
+ # Information about the carrier gateway.
10205
+ # @return [Types::CarrierGateway]
10206
+ #
10207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayResult AWS API Documentation
10208
+ #
10209
+ class DeleteCarrierGatewayResult < Struct.new(
10210
+ :carrier_gateway)
10211
+ SENSITIVE = []
10212
+ include Aws::Structure
10213
+ end
10214
+
10040
10215
  # @note When making an API call, you may pass DeleteClientVpnEndpointRequest
10041
10216
  # data as a hash:
10042
10217
  #
@@ -12339,8 +12514,8 @@ module Aws::EC2
12339
12514
  # * `instance-id` - The ID of the instance the address is associated
12340
12515
  # with, if any.
12341
12516
  #
12342
- # * `network-border-group` - The location from where the IP address is
12343
- # advertised.
12517
+ # * `network-border-group` - A unique set of Availability Zones, Local
12518
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
12344
12519
  #
12345
12520
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network
12346
12521
  # interface that the address is associated with, if any.
@@ -12350,7 +12525,7 @@ module Aws::EC2
12350
12525
  # * `private-ip-address` - \[EC2-VPC\] The private IP address
12351
12526
  # associated with the Elastic IP address.
12352
12527
  #
12353
- # * `public-ip` - The Elastic IP address.
12528
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
12354
12529
  #
12355
12530
  # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
12356
12531
  # to the resource. Use the tag key in the filter name and the tag
@@ -12465,45 +12640,56 @@ module Aws::EC2
12465
12640
  #
12466
12641
  # * `group-name` - For Availability Zones, use the Region name. For
12467
12642
  # Local Zones, use the name of the group associated with the Local
12468
- # Zone (for example, `us-west-2-lax-1`).
12643
+ # Zone (for example, `us-west-2-lax-1`) For Wavelength Zones, use
12644
+ # the name of the group associated with the Wavelength Zone (for
12645
+ # example, `us-east-1-wl1-bos-wlz-1`).
12469
12646
  #
12470
12647
  # * `message` - The Zone message.
12471
12648
  #
12472
- # * `opt-in-status` - The opt in status (`opted-in`, and
12649
+ # * `opt-in-status` - The opt-in status (`opted-in`, and
12473
12650
  # `not-opted-in` \| `opt-in-not-required`).
12474
12651
  #
12475
- # * The ID of the zone that handles some of the Local Zone control
12476
- # plane operations, such as API calls.
12652
+ # * `parent-zoneID` - The ID of the zone that handles some of the
12653
+ # Local Zone and Wavelength Zone control plane operations, such as
12654
+ # API calls.
12655
+ #
12656
+ # * `parent-zoneName` - The ID of the zone that handles some of the
12657
+ # Local Zone and Wavelength Zone control plane operations, such as
12658
+ # API calls.
12477
12659
  #
12478
12660
  # * `region-name` - The name of the Region for the Zone (for example,
12479
12661
  # `us-east-1`).
12480
12662
  #
12481
- # * `state` - The state of the Availability Zone or Local Zone
12482
- # (`available` \| `information` \| `impaired` \| `unavailable`).
12663
+ # * `state` - The state of the Availability Zone, the Local Zone, or
12664
+ # the Wavelength Zone (`available` \| `information` \| `impaired` \|
12665
+ # `unavailable`).
12483
12666
  #
12484
12667
  # * `zone-id` - The ID of the Availability Zone (for example,
12485
- # `use1-az1`) or the Local Zone (for example, use `usw2-lax1-az1`).
12668
+ # `use1-az1`), the Local Zone (for example, `usw2-lax1-az1`), or the
12669
+ # Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12486
12670
  #
12487
12671
  # * `zone-type` - The type of zone, for example, `local-zone`.
12488
12672
  #
12489
12673
  # * `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`).
12674
+ # `us-east-1a`), the Local Zone (for example, `us-west-2-lax-1a`),
12675
+ # or the Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12492
12676
  #
12493
12677
  # * `zone-type` - The type of zone, for example, `local-zone`.
12494
12678
  # @return [Array<Types::Filter>]
12495
12679
  #
12496
12680
  # @!attribute [rw] zone_names
12497
- # The names of the Zones.
12681
+ # The names of the Availability Zones, Local Zones, and Wavelength
12682
+ # Zones.
12498
12683
  # @return [Array<String>]
12499
12684
  #
12500
12685
  # @!attribute [rw] zone_ids
12501
- # The IDs of the Zones.
12686
+ # The IDs of the Availability Zones, Local Zones, and Wavelength
12687
+ # Zones.
12502
12688
  # @return [Array<String>]
12503
12689
  #
12504
12690
  # @!attribute [rw] all_availability_zones
12505
- # Include all Availability Zones and Local Zones regardless of your
12506
- # opt in status.
12691
+ # Include all Availability Zones, Local Zones, and Wavelength Zones
12692
+ # regardless of your opt-in status.
12507
12693
  #
12508
12694
  # If you do not use this parameter, the results include only the zones
12509
12695
  # for the Regions where you have chosen the option to opt in.
@@ -12529,7 +12715,8 @@ module Aws::EC2
12529
12715
  end
12530
12716
 
12531
12717
  # @!attribute [rw] availability_zones
12532
- # Information about the Zones.
12718
+ # Information about the Availability Zones, Local Zones, and
12719
+ # Wavelength Zones.
12533
12720
  # @return [Array<Types::AvailabilityZone>]
12534
12721
  #
12535
12722
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesResult AWS API Documentation
@@ -12823,6 +13010,97 @@ module Aws::EC2
12823
13010
  include Aws::Structure
12824
13011
  end
12825
13012
 
13013
+ # @note When making an API call, you may pass DescribeCarrierGatewaysRequest
13014
+ # data as a hash:
13015
+ #
13016
+ # {
13017
+ # carrier_gateway_ids: ["CarrierGatewayId"],
13018
+ # filters: [
13019
+ # {
13020
+ # name: "String",
13021
+ # values: ["String"],
13022
+ # },
13023
+ # ],
13024
+ # max_results: 1,
13025
+ # next_token: "String",
13026
+ # dry_run: false,
13027
+ # }
13028
+ #
13029
+ # @!attribute [rw] carrier_gateway_ids
13030
+ # One or more carrier gateway IDs.
13031
+ # @return [Array<String>]
13032
+ #
13033
+ # @!attribute [rw] filters
13034
+ # One or more filters.
13035
+ #
13036
+ # * `carrier-gateway-id` - The ID of the carrier gateway.
13037
+ #
13038
+ # * `state` - The state of the carrier gateway (`pending` \| `failed`
13039
+ # \| `available` \| `deleting` \| `deleted`).
13040
+ #
13041
+ # * `owner-id` - The AWS account ID of the owner of the carrier
13042
+ # gateway.
13043
+ #
13044
+ # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
13045
+ # to the resource. Use the tag key in the filter name and the tag
13046
+ # value as the filter value. For example, to find all resources that
13047
+ # have a tag with the key `Owner` and the value `TeamA`, specify
13048
+ # `tag:Owner` for the filter name and `TeamA` for the filter value.
13049
+ #
13050
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
13051
+ # filter to find all resources assigned a tag with a specific key,
13052
+ # regardless of the tag value.
13053
+ #
13054
+ # * `vpc-id` - The ID of the VPC associated with the carrier gateway.
13055
+ # @return [Array<Types::Filter>]
13056
+ #
13057
+ # @!attribute [rw] max_results
13058
+ # The maximum number of results to return with a single call. To
13059
+ # retrieve the remaining results, make another call with the returned
13060
+ # `nextToken` value.
13061
+ # @return [Integer]
13062
+ #
13063
+ # @!attribute [rw] next_token
13064
+ # The token for the next page of results.
13065
+ # @return [String]
13066
+ #
13067
+ # @!attribute [rw] dry_run
13068
+ # Checks whether you have the required permissions for the action,
13069
+ # without actually making the request, and provides an error response.
13070
+ # If you have the required permissions, the error response is
13071
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13072
+ # @return [Boolean]
13073
+ #
13074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysRequest AWS API Documentation
13075
+ #
13076
+ class DescribeCarrierGatewaysRequest < Struct.new(
13077
+ :carrier_gateway_ids,
13078
+ :filters,
13079
+ :max_results,
13080
+ :next_token,
13081
+ :dry_run)
13082
+ SENSITIVE = []
13083
+ include Aws::Structure
13084
+ end
13085
+
13086
+ # @!attribute [rw] carrier_gateways
13087
+ # Information about the carrier gateway.
13088
+ # @return [Array<Types::CarrierGateway>]
13089
+ #
13090
+ # @!attribute [rw] next_token
13091
+ # The token to use to retrieve the next page of results. This value is
13092
+ # `null` when there are no more results to return.
13093
+ # @return [String]
13094
+ #
13095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysResult AWS API Documentation
13096
+ #
13097
+ class DescribeCarrierGatewaysResult < Struct.new(
13098
+ :carrier_gateways,
13099
+ :next_token)
13100
+ SENSITIVE = []
13101
+ include Aws::Structure
13102
+ end
13103
+
12826
13104
  # @note When making an API call, you may pass DescribeClassicLinkInstancesRequest
12827
13105
  # data as a hash:
12828
13106
  #
@@ -24023,7 +24301,7 @@ module Aws::EC2
24023
24301
  # Cloud User Guide*.
24024
24302
  #
24025
24303
  # 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
24304
+ # 64,000 IOPS for `io1` volumes in most Regions. Maximum `io1` IOPS of
24027
24305
  # 64,000 is guaranteed only on [Nitro-based instances][2]. Other
24028
24306
  # instance families guarantee performance up to 32,000 IOPS. For more
24029
24307
  # information, see [Amazon EBS Volume Types][1] in the *Amazon Elastic
@@ -29768,7 +30046,11 @@ module Aws::EC2
29768
30046
  # @return [String]
29769
30047
  #
29770
30048
  # @!attribute [rw] public_ip_address
29771
- # The public IPv4 address assigned to the instance, if applicable.
30049
+ # The public IPv4 address, or the Carrier IP address assigned to the
30050
+ # instance, if applicable.
30051
+ #
30052
+ # A Carrier IP address only applies to an instance launched in a
30053
+ # subnet associated with a Wavelength Zone.
29772
30054
  # @return [String]
29773
30055
  #
29774
30056
  # @!attribute [rw] ramdisk_id
@@ -30577,6 +30859,10 @@ module Aws::EC2
30577
30859
 
30578
30860
  # Describes association information for an Elastic IP address (IPv4).
30579
30861
  #
30862
+ # @!attribute [rw] carrier_ip
30863
+ # The carrier IP address associated with the network interface.
30864
+ # @return [String]
30865
+ #
30580
30866
  # @!attribute [rw] ip_owner_id
30581
30867
  # The ID of the owner of the Elastic IP address.
30582
30868
  # @return [String]
@@ -30593,6 +30879,7 @@ module Aws::EC2
30593
30879
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceAssociation AWS API Documentation
30594
30880
  #
30595
30881
  class InstanceNetworkInterfaceAssociation < Struct.new(
30882
+ :carrier_ip,
30596
30883
  :ip_owner_id,
30597
30884
  :public_dns_name,
30598
30885
  :public_ip)
@@ -30663,6 +30950,7 @@ module Aws::EC2
30663
30950
  # ],
30664
30951
  # secondary_private_ip_address_count: 1,
30665
30952
  # subnet_id: "String",
30953
+ # associate_carrier_ip_address: false,
30666
30954
  # interface_type: "String",
30667
30955
  # }
30668
30956
  #
@@ -30760,6 +31048,16 @@ module Aws::EC2
30760
31048
  # only if creating a network interface when launching an instance.
30761
31049
  # @return [String]
30762
31050
  #
31051
+ # @!attribute [rw] associate_carrier_ip_address
31052
+ # Indicates whether to assign a carrier IP address to the network
31053
+ # interface.
31054
+ #
31055
+ # You can only assign a carrier IP address to a network interface that
31056
+ # is in a subnet in a Wavelength Zone. For more information about
31057
+ # carrier IP addresses, see Carrier IP addresses in the AWS Wavelength
31058
+ # Developer Guide.
31059
+ # @return [Boolean]
31060
+ #
30763
31061
  # @!attribute [rw] interface_type
30764
31062
  # The type of network interface. To create an Elastic Fabric Adapter
30765
31063
  # (EFA), specify `efa`. For more information, see [Elastic Fabric
@@ -30790,6 +31088,7 @@ module Aws::EC2
30790
31088
  :private_ip_addresses,
30791
31089
  :secondary_private_ip_address_count,
30792
31090
  :subnet_id,
31091
+ :associate_carrier_ip_address,
30793
31092
  :interface_type)
30794
31093
  SENSITIVE = []
30795
31094
  include Aws::Structure
@@ -32577,6 +32876,20 @@ module Aws::EC2
32577
32876
 
32578
32877
  # Describes a network interface.
32579
32878
  #
32879
+ # @!attribute [rw] associate_carrier_ip_address
32880
+ # Indicates whether to associate a Carrier IP address with eth0 for a
32881
+ # new network interface.
32882
+ #
32883
+ # Use this option when you launch an instance in a Wavelength Zone and
32884
+ # want to associate a Carrier IP address with the network interface.
32885
+ # For more information about Carrier IP addresses, see [Carrier IP
32886
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
32887
+ #
32888
+ #
32889
+ #
32890
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
32891
+ # @return [Boolean]
32892
+ #
32580
32893
  # @!attribute [rw] associate_public_ip_address
32581
32894
  # Indicates whether to associate a public IPv4 address with eth0 for a
32582
32895
  # new network interface.
@@ -32635,6 +32948,7 @@ module Aws::EC2
32635
32948
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecification AWS API Documentation
32636
32949
  #
32637
32950
  class LaunchTemplateInstanceNetworkInterfaceSpecification < Struct.new(
32951
+ :associate_carrier_ip_address,
32638
32952
  :associate_public_ip_address,
32639
32953
  :delete_on_termination,
32640
32954
  :description,
@@ -32658,6 +32972,7 @@ module Aws::EC2
32658
32972
  # data as a hash:
32659
32973
  #
32660
32974
  # {
32975
+ # associate_carrier_ip_address: false,
32661
32976
  # associate_public_ip_address: false,
32662
32977
  # delete_on_termination: false,
32663
32978
  # description: "String",
@@ -32682,6 +32997,20 @@ module Aws::EC2
32682
32997
  # subnet_id: "SubnetId",
32683
32998
  # }
32684
32999
  #
33000
+ # @!attribute [rw] associate_carrier_ip_address
33001
+ # Associates a Carrier IP address with eth0 for a new network
33002
+ # interface.
33003
+ #
33004
+ # Use this option when you launch an instance in a Wavelength Zone and
33005
+ # want to associate a Carrier IP address with the network interface.
33006
+ # For more information about Carrier IP addresses, see [Carrier IP
33007
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
33008
+ #
33009
+ #
33010
+ #
33011
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
33012
+ # @return [Boolean]
33013
+ #
32685
33014
  # @!attribute [rw] associate_public_ip_address
32686
33015
  # Associates a public IPv4 address with eth0 for a new network
32687
33016
  # interface.
@@ -32756,6 +33085,7 @@ module Aws::EC2
32756
33085
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest AWS API Documentation
32757
33086
  #
32758
33087
  class LaunchTemplateInstanceNetworkInterfaceSpecificationRequest < Struct.new(
33088
+ :associate_carrier_ip_address,
32759
33089
  :associate_public_ip_address,
32760
33090
  :delete_on_termination,
32761
33091
  :description,
@@ -33761,13 +34091,15 @@ module Aws::EC2
33761
34091
  # }
33762
34092
  #
33763
34093
  # @!attribute [rw] group_name
33764
- # The name of the Availability Zone Group.
34094
+ # The name of the Availability Zone group, Local Zone group, or
34095
+ # Wavelength Zone group.
33765
34096
  # @return [String]
33766
34097
  #
33767
34098
  # @!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.
34099
+ # Indicates whether you are opted in to the Local Zone group or
34100
+ # Wavelength Zone group. The only valid value is `opted-in`. You must
34101
+ # contact [AWS Support][1] to opt out of a Local Zone group, or
34102
+ # Wavelength Zone group.
33771
34103
  #
33772
34104
  #
33773
34105
  #
@@ -37416,7 +37748,8 @@ module Aws::EC2
37416
37748
  end
37417
37749
 
37418
37750
  # Describes association information for an Elastic IP address (IPv4
37419
- # only).
37751
+ # only), or a Carrier IP address (for a network interface which resides
37752
+ # in a subnet in a Wavelength Zone).
37420
37753
  #
37421
37754
  # @!attribute [rw] allocation_id
37422
37755
  # The allocation ID.
@@ -37435,8 +37768,15 @@ module Aws::EC2
37435
37768
  # @return [String]
37436
37769
  #
37437
37770
  # @!attribute [rw] public_ip
37438
- # The address of the Elastic IP address bound to the network
37439
- # interface.
37771
+ # The address of the Elastic IP address or Carrier IP address bound to
37772
+ # the network interface.
37773
+ # @return [String]
37774
+ #
37775
+ # @!attribute [rw] carrier_ip
37776
+ # The carrier IP address associated with the network interface.
37777
+ #
37778
+ # This option is only available when the network interface is in a
37779
+ # subnet which is associated with a Wavelength Zone.
37440
37780
  # @return [String]
37441
37781
  #
37442
37782
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAssociation AWS API Documentation
@@ -37446,7 +37786,8 @@ module Aws::EC2
37446
37786
  :association_id,
37447
37787
  :ip_owner_id,
37448
37788
  :public_dns_name,
37449
- :public_ip)
37789
+ :public_ip,
37790
+ :carrier_ip)
37450
37791
  SENSITIVE = []
37451
37792
  include Aws::Structure
37452
37793
  end
@@ -39836,7 +40177,8 @@ module Aws::EC2
39836
40177
  # @return [String]
39837
40178
  #
39838
40179
  # @!attribute [rw] network_border_group
39839
- # The location that the IP address is released from.
40180
+ # The set of Availability Zones, Local Zones, or Wavelength Zones from
40181
+ # which AWS advertises IP addresses.
39840
40182
  #
39841
40183
  # If you provide an incorrect network border group, you will receive
39842
40184
  # an `InvalidAddress.NotFound` error. For more information, see [Error
@@ -40129,6 +40471,7 @@ module Aws::EC2
40129
40471
  # nat_gateway_id: "NatGatewayId",
40130
40472
  # transit_gateway_id: "TransitGatewayId",
40131
40473
  # local_gateway_id: "LocalGatewayId",
40474
+ # carrier_gateway_id: "CarrierGatewayId",
40132
40475
  # network_interface_id: "NetworkInterfaceId",
40133
40476
  # route_table_id: "RouteTableId", # required
40134
40477
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
@@ -40186,6 +40529,10 @@ module Aws::EC2
40186
40529
  # The ID of the local gateway.
40187
40530
  # @return [String]
40188
40531
  #
40532
+ # @!attribute [rw] carrier_gateway_id
40533
+ # \[IPv4 traffic only\] The ID of a carrier gateway.
40534
+ # @return [String]
40535
+ #
40189
40536
  # @!attribute [rw] network_interface_id
40190
40537
  # The ID of a network interface.
40191
40538
  # @return [String]
@@ -40212,6 +40559,7 @@ module Aws::EC2
40212
40559
  :nat_gateway_id,
40213
40560
  :transit_gateway_id,
40214
40561
  :local_gateway_id,
40562
+ :carrier_gateway_id,
40215
40563
  :network_interface_id,
40216
40564
  :route_table_id,
40217
40565
  :vpc_peering_connection_id)
@@ -40442,6 +40790,7 @@ module Aws::EC2
40442
40790
  # ],
40443
40791
  # network_interfaces: [
40444
40792
  # {
40793
+ # associate_carrier_ip_address: false,
40445
40794
  # associate_public_ip_address: false,
40446
40795
  # delete_on_termination: false,
40447
40796
  # description: "String",
@@ -40861,6 +41210,7 @@ module Aws::EC2
40861
41210
  # ],
40862
41211
  # secondary_private_ip_address_count: 1,
40863
41212
  # subnet_id: "String",
41213
+ # associate_carrier_ip_address: false,
40864
41214
  # interface_type: "String",
40865
41215
  # },
40866
41216
  # ],
@@ -41049,6 +41399,7 @@ module Aws::EC2
41049
41399
  # ],
41050
41400
  # secondary_private_ip_address_count: 1,
41051
41401
  # subnet_id: "String",
41402
+ # associate_carrier_ip_address: false,
41052
41403
  # interface_type: "String",
41053
41404
  # },
41054
41405
  # ],
@@ -41296,6 +41647,7 @@ module Aws::EC2
41296
41647
  # ],
41297
41648
  # secondary_private_ip_address_count: 1,
41298
41649
  # subnet_id: "String",
41650
+ # associate_carrier_ip_address: false,
41299
41651
  # interface_type: "String",
41300
41652
  # },
41301
41653
  # ],
@@ -42790,6 +43142,10 @@ module Aws::EC2
42790
43142
  # The ID of the local gateway.
42791
43143
  # @return [String]
42792
43144
  #
43145
+ # @!attribute [rw] carrier_gateway_id
43146
+ # The ID of the carrier gateway.
43147
+ # @return [String]
43148
+ #
42793
43149
  # @!attribute [rw] network_interface_id
42794
43150
  # The ID of the network interface.
42795
43151
  # @return [String]
@@ -42830,6 +43186,7 @@ module Aws::EC2
42830
43186
  :nat_gateway_id,
42831
43187
  :transit_gateway_id,
42832
43188
  :local_gateway_id,
43189
+ :carrier_gateway_id,
42833
43190
  :network_interface_id,
42834
43191
  :origin,
42835
43192
  :state,
@@ -43049,6 +43406,7 @@ module Aws::EC2
43049
43406
  # ],
43050
43407
  # secondary_private_ip_address_count: 1,
43051
43408
  # subnet_id: "String",
43409
+ # associate_carrier_ip_address: false,
43052
43410
  # interface_type: "String",
43053
43411
  # },
43054
43412
  # ],
@@ -45524,6 +45882,7 @@ module Aws::EC2
45524
45882
  # ],
45525
45883
  # secondary_private_ip_address_count: 1,
45526
45884
  # subnet_id: "String",
45885
+ # associate_carrier_ip_address: false,
45527
45886
  # interface_type: "String",
45528
45887
  # },
45529
45888
  # ],
@@ -45818,6 +46177,7 @@ module Aws::EC2
45818
46177
  # ],
45819
46178
  # secondary_private_ip_address_count: 1,
45820
46179
  # subnet_id: "String",
46180
+ # associate_carrier_ip_address: false,
45821
46181
  # interface_type: "String",
45822
46182
  # },
45823
46183
  # ],
@@ -50005,8 +50365,7 @@ module Aws::EC2
50005
50365
  # @return [String]
50006
50366
  #
50007
50367
  # @!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).
50368
+ # The ID of the set of DHCP options you've associated with the VPC.
50010
50369
  # @return [String]
50011
50370
  #
50012
50371
  # @!attribute [rw] state
@@ -50303,8 +50662,9 @@ module Aws::EC2
50303
50662
  # @return [Types::VpcCidrBlockState]
50304
50663
  #
50305
50664
  # @!attribute [rw] network_border_group
50306
- # The name of the location from which we advertise the IPV6 CIDR
50307
- # block.
50665
+ # The name of the unique set of Availability Zones, Local Zones, or
50666
+ # Wavelength Zones from which AWS advertises IP addresses, for
50667
+ # example, `us-east-1-wl1-bos-wlz-1`.
50308
50668
  # @return [String]
50309
50669
  #
50310
50670
  # @!attribute [rw] ipv_6_pool