aws-sdk-ec2 1.182.0 → 1.183.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')
@@ -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