aws-sdk-ec2 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -31,14 +31,13 @@ module Aws
31
31
  # @return [Boolean]
32
32
  #
33
33
  # @!attribute [rw] reserved_instance_ids
34
- # The IDs of the Convertible Reserved Instances that you want to
35
- # exchange for other Convertible Reserved Instances of the same or
36
- # higher value.
34
+ # The IDs of the Convertible Reserved Instances to exchange for other
35
+ # Convertible Reserved Instances of the same or higher value.
37
36
  # @return [Array<String>]
38
37
  #
39
38
  # @!attribute [rw] target_configurations
40
39
  # The configurations of the Convertible Reserved Instance offerings
41
- # you are purchasing in this exchange.
40
+ # that you are purchasing in this exchange.
42
41
  # @return [Array<Types::TargetConfigurationRequest>]
43
42
  class AcceptReservedInstancesExchangeQuoteRequest < Struct.new(
44
43
  :dry_run,
@@ -288,6 +287,50 @@ module Aws
288
287
  include Aws::Structure
289
288
  end
290
289
 
290
+ # @note When making an API call, pass AssignIpv6AddressesRequest
291
+ # data as a hash:
292
+ #
293
+ # {
294
+ # network_interface_id: "String", # required
295
+ # ipv_6_addresses: ["String"],
296
+ # ipv_6_address_count: 1,
297
+ # }
298
+ # @!attribute [rw] network_interface_id
299
+ # The ID of the network interface.
300
+ # @return [String]
301
+ #
302
+ # @!attribute [rw] ipv_6_addresses
303
+ # One or more specific IPv6 addresses to be assigned to the network
304
+ # interface. You can't use this option if you're specifying a number
305
+ # of IPv6 addresses.
306
+ # @return [Array<String>]
307
+ #
308
+ # @!attribute [rw] ipv_6_address_count
309
+ # The number of IPv6 addresses to assign to the network interface.
310
+ # Amazon EC2 automatically selects the IPv6 addresses from the subnet
311
+ # range. You can't use this option if specifying specific IPv6
312
+ # addresses.
313
+ # @return [Integer]
314
+ class AssignIpv6AddressesRequest < Struct.new(
315
+ :network_interface_id,
316
+ :ipv_6_addresses,
317
+ :ipv_6_address_count)
318
+ include Aws::Structure
319
+ end
320
+
321
+ # @!attribute [rw] network_interface_id
322
+ # The ID of the network interface.
323
+ # @return [String]
324
+ #
325
+ # @!attribute [rw] assigned_ipv_6_addresses
326
+ # The IPv6 addresses assigned to the network interface.
327
+ # @return [Array<String>]
328
+ class AssignIpv6AddressesResult < Struct.new(
329
+ :network_interface_id,
330
+ :assigned_ipv_6_addresses)
331
+ include Aws::Structure
332
+ end
333
+
291
334
  # Contains the parameters for AssignPrivateIpAddresses.
292
335
  # @note When making an API call, pass AssignPrivateIpAddressesRequest
293
336
  # data as a hash:
@@ -479,6 +522,75 @@ module Aws
479
522
  include Aws::Structure
480
523
  end
481
524
 
525
+ # @note When making an API call, pass AssociateSubnetCidrBlockRequest
526
+ # data as a hash:
527
+ #
528
+ # {
529
+ # subnet_id: "String", # required
530
+ # ipv_6_cidr_block: "String", # required
531
+ # }
532
+ # @!attribute [rw] subnet_id
533
+ # The ID of your subnet.
534
+ # @return [String]
535
+ #
536
+ # @!attribute [rw] ipv_6_cidr_block
537
+ # The IPv6 CIDR block for your subnet. The subnet must have a /64
538
+ # prefix length.
539
+ # @return [String]
540
+ class AssociateSubnetCidrBlockRequest < Struct.new(
541
+ :subnet_id,
542
+ :ipv_6_cidr_block)
543
+ include Aws::Structure
544
+ end
545
+
546
+ # @!attribute [rw] subnet_id
547
+ # The ID of the subnet.
548
+ # @return [String]
549
+ #
550
+ # @!attribute [rw] ipv_6_cidr_block_association
551
+ # Information about the IPv6 CIDR block association.
552
+ # @return [Types::SubnetIpv6CidrBlockAssociation]
553
+ class AssociateSubnetCidrBlockResult < Struct.new(
554
+ :subnet_id,
555
+ :ipv_6_cidr_block_association)
556
+ include Aws::Structure
557
+ end
558
+
559
+ # @note When making an API call, pass AssociateVpcCidrBlockRequest
560
+ # data as a hash:
561
+ #
562
+ # {
563
+ # vpc_id: "String", # required
564
+ # amazon_provided_ipv_6_cidr_block: false,
565
+ # }
566
+ # @!attribute [rw] vpc_id
567
+ # The ID of the VPC.
568
+ # @return [String]
569
+ #
570
+ # @!attribute [rw] amazon_provided_ipv_6_cidr_block
571
+ # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length
572
+ # for the VPC. You cannot specify the range of IPv6 addresses, or the
573
+ # size of the CIDR block.
574
+ # @return [Boolean]
575
+ class AssociateVpcCidrBlockRequest < Struct.new(
576
+ :vpc_id,
577
+ :amazon_provided_ipv_6_cidr_block)
578
+ include Aws::Structure
579
+ end
580
+
581
+ # @!attribute [rw] vpc_id
582
+ # The ID of the VPC.
583
+ # @return [String]
584
+ #
585
+ # @!attribute [rw] ipv_6_cidr_block_association
586
+ # Information about the IPv6 CIDR block association.
587
+ # @return [Types::VpcIpv6CidrBlockAssociation]
588
+ class AssociateVpcCidrBlockResult < Struct.new(
589
+ :vpc_id,
590
+ :ipv_6_cidr_block_association)
591
+ include Aws::Structure
592
+ end
593
+
482
594
  # Contains the parameters for AttachClassicLinkVpc.
483
595
  # @note When making an API call, pass AttachClassicLinkVpcRequest
484
596
  # data as a hash:
@@ -742,6 +854,11 @@ module Aws
742
854
  # cidr_ip: "String",
743
855
  # },
744
856
  # ],
857
+ # ipv_6_ranges: [
858
+ # {
859
+ # cidr_ipv_6: "String",
860
+ # },
861
+ # ],
745
862
  # prefix_list_ids: [
746
863
  # {
747
864
  # prefix_list_id: "String",
@@ -791,7 +908,7 @@ module Aws
791
908
  # @return [Integer]
792
909
  #
793
910
  # @!attribute [rw] cidr_ip
794
- # The CIDR IP address range. We recommend that you specify the CIDR
911
+ # The CIDR IPv4 address range. We recommend that you specify the CIDR
795
912
  # range in a set of IP permissions instead.
796
913
  # @return [String]
797
914
  #
@@ -846,6 +963,11 @@ module Aws
846
963
  # cidr_ip: "String",
847
964
  # },
848
965
  # ],
966
+ # ipv_6_ranges: [
967
+ # {
968
+ # cidr_ipv_6: "String",
969
+ # },
970
+ # ],
849
971
  # prefix_list_ids: [
850
972
  # {
851
973
  # prefix_list_id: "String",
@@ -893,9 +1015,13 @@ module Aws
893
1015
  #
894
1016
  # @!attribute [rw] ip_protocol
895
1017
  # The IP protocol name (`tcp`, `udp`, `icmp`) or number (see [Protocol
896
- # Numbers][1]). (VPC only) Use `-1` to specify all traffic. If you
897
- # specify `-1`, traffic on all ports is allowed, regardless of any
898
- # ports you specify.
1018
+ # Numbers][1]). (VPC only) Use `-1` to specify all protocols. If you
1019
+ # specify `-1`, or a protocol number other than `tcp`, `udp`, `icmp`,
1020
+ # or `58` (ICMPv6), traffic on all ports is allowed, regardless of any
1021
+ # ports you specify. For `tcp`, `udp`, and `icmp`, you must specify a
1022
+ # port range. For protocol `58` (ICMPv6), you can optionally specify a
1023
+ # port range; if you don't, traffic for all types and codes is
1024
+ # allowed.
899
1025
  #
900
1026
  #
901
1027
  #
@@ -903,19 +1029,19 @@ module Aws
903
1029
  # @return [String]
904
1030
  #
905
1031
  # @!attribute [rw] from_port
906
- # The start of port range for the TCP and UDP protocols, or an ICMP
907
- # type number. For the ICMP type number, use `-1` to specify all ICMP
908
- # types.
1032
+ # The start of port range for the TCP and UDP protocols, or an
1033
+ # ICMP/ICMPv6 type number. For the ICMP/ICMPv6 type number, use `-1`
1034
+ # to specify all types.
909
1035
  # @return [Integer]
910
1036
  #
911
1037
  # @!attribute [rw] to_port
912
- # The end of port range for the TCP and UDP protocols, or an ICMP code
913
- # number. For the ICMP code number, use `-1` to specify all ICMP codes
914
- # for the ICMP type.
1038
+ # The end of port range for the TCP and UDP protocols, or an
1039
+ # ICMP/ICMPv6 code number. For the ICMP/ICMPv6 code number, use `-1`
1040
+ # to specify all codes.
915
1041
  # @return [Integer]
916
1042
  #
917
1043
  # @!attribute [rw] cidr_ip
918
- # The CIDR IP address range. You can't specify this parameter when
1044
+ # The CIDR IPv4 address range. You can't specify this parameter when
919
1045
  # specifying a source security group.
920
1046
  # @return [String]
921
1047
  #
@@ -1914,6 +2040,56 @@ module Aws
1914
2040
  include Aws::Structure
1915
2041
  end
1916
2042
 
2043
+ # @note When making an API call, pass CreateEgressOnlyInternetGatewayRequest
2044
+ # data as a hash:
2045
+ #
2046
+ # {
2047
+ # dry_run: false,
2048
+ # vpc_id: "String", # required
2049
+ # client_token: "String",
2050
+ # }
2051
+ # @!attribute [rw] dry_run
2052
+ # Checks whether you have the required permissions for the action,
2053
+ # without actually making the request, and provides an error response.
2054
+ # If you have the required permissions, the error response is
2055
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2056
+ # @return [Boolean]
2057
+ #
2058
+ # @!attribute [rw] vpc_id
2059
+ # The ID of the VPC for which to create the egress-only Internet
2060
+ # gateway.
2061
+ # @return [String]
2062
+ #
2063
+ # @!attribute [rw] client_token
2064
+ # Unique, case-sensitive identifier you provide to ensure the
2065
+ # idempotency of the request. For more information, see [How to Ensure
2066
+ # Idempotency][1].
2067
+ #
2068
+ #
2069
+ #
2070
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html
2071
+ # @return [String]
2072
+ class CreateEgressOnlyInternetGatewayRequest < Struct.new(
2073
+ :dry_run,
2074
+ :vpc_id,
2075
+ :client_token)
2076
+ include Aws::Structure
2077
+ end
2078
+
2079
+ # @!attribute [rw] egress_only_internet_gateway
2080
+ # Information about the egress-only Internet gateway.
2081
+ # @return [Types::EgressOnlyInternetGateway]
2082
+ #
2083
+ # @!attribute [rw] client_token
2084
+ # Unique, case-sensitive identifier you provide to ensure the
2085
+ # idempotency of the request.
2086
+ # @return [String]
2087
+ class CreateEgressOnlyInternetGatewayResult < Struct.new(
2088
+ :egress_only_internet_gateway,
2089
+ :client_token)
2090
+ include Aws::Structure
2091
+ end
2092
+
1917
2093
  # Contains the parameters for CreateFlowLogs.
1918
2094
  # @note When making an API call, pass CreateFlowLogsRequest
1919
2095
  # data as a hash:
@@ -2233,7 +2409,8 @@ module Aws
2233
2409
  # protocol: "String", # required
2234
2410
  # rule_action: "allow", # required, accepts allow, deny
2235
2411
  # egress: false, # required
2236
- # cidr_block: "String", # required
2412
+ # cidr_block: "String",
2413
+ # ipv_6_cidr_block: "String",
2237
2414
  # icmp_type_code: {
2238
2415
  # type: 1,
2239
2416
  # code: 1,
@@ -2263,7 +2440,14 @@ module Aws
2263
2440
  # @return [Integer]
2264
2441
  #
2265
2442
  # @!attribute [rw] protocol
2266
- # The protocol. A value of -1 means all protocols.
2443
+ # The protocol. A value of `-1` or `all` means all protocols. If you
2444
+ # specify `all`, `-1`, or a protocol number other than `tcp`, `udp`,
2445
+ # or `icmp`, traffic on all ports is allowed, regardless of any ports
2446
+ # or ICMP types or codes you specify. If you specify protocol `58`
2447
+ # (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types
2448
+ # and codes allowed, regardless of any that you specify. If you
2449
+ # specify protocol `58` (ICMPv6) and specify an IPv6 CIDR block, you
2450
+ # must specify an ICMP type and code.
2267
2451
  # @return [String]
2268
2452
  #
2269
2453
  # @!attribute [rw] rule_action
@@ -2277,13 +2461,19 @@ module Aws
2277
2461
  # @return [Boolean]
2278
2462
  #
2279
2463
  # @!attribute [rw] cidr_block
2280
- # The network range to allow or deny, in CIDR notation (for example
2281
- # `172.16.0.0/24`).
2464
+ # The IPv4 network range to allow or deny, in CIDR notation (for
2465
+ # example `172.16.0.0/24`).
2466
+ # @return [String]
2467
+ #
2468
+ # @!attribute [rw] ipv_6_cidr_block
2469
+ # The IPv6 network range to allow or deny, in CIDR notation (for
2470
+ # example `2001:db8:1234:1a00::/64`).
2282
2471
  # @return [String]
2283
2472
  #
2284
2473
  # @!attribute [rw] icmp_type_code
2285
- # ICMP protocol: The ICMP type and code. Required if specifying ICMP
2286
- # for the protocol.
2474
+ # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
2475
+ # specifying the ICMP protocol, or protocol 58 (ICMPv6) with an IPv6
2476
+ # CIDR block.
2287
2477
  # @return [Types::IcmpTypeCode]
2288
2478
  #
2289
2479
  # @!attribute [rw] port_range
@@ -2297,6 +2487,7 @@ module Aws
2297
2487
  :rule_action,
2298
2488
  :egress,
2299
2489
  :cidr_block,
2490
+ :ipv_6_cidr_block,
2300
2491
  :icmp_type_code,
2301
2492
  :port_range)
2302
2493
  include Aws::Structure
@@ -2351,6 +2542,12 @@ module Aws
2351
2542
  # },
2352
2543
  # ],
2353
2544
  # secondary_private_ip_address_count: 1,
2545
+ # ipv_6_addresses: [
2546
+ # {
2547
+ # ipv_6_address: "String",
2548
+ # },
2549
+ # ],
2550
+ # ipv_6_address_count: 1,
2354
2551
  # dry_run: false,
2355
2552
  # }
2356
2553
  # @!attribute [rw] subnet_id
@@ -2362,11 +2559,11 @@ module Aws
2362
2559
  # @return [String]
2363
2560
  #
2364
2561
  # @!attribute [rw] private_ip_address
2365
- # The primary private IP address of the network interface. If you
2366
- # don't specify an IP address, Amazon EC2 selects one for you from
2367
- # the subnet range. If you specify an IP address, you cannot indicate
2368
- # any IP addresses specified in `privateIpAddresses` as primary (only
2369
- # one IP address can be designated as primary).
2562
+ # The primary private IPv4 address of the network interface. If you
2563
+ # don't specify an IPv4 address, Amazon EC2 selects one for you from
2564
+ # the subnet's IPv4 CIDR range. If you specify an IP address, you
2565
+ # cannot indicate any IP addresses specified in `privateIpAddresses`
2566
+ # as primary (only one IP address can be designated as primary).
2370
2567
  # @return [String]
2371
2568
  #
2372
2569
  # @!attribute [rw] groups
@@ -2374,26 +2571,41 @@ module Aws
2374
2571
  # @return [Array<String>]
2375
2572
  #
2376
2573
  # @!attribute [rw] private_ip_addresses
2377
- # One or more private IP addresses.
2574
+ # One or more private IPv4 addresses.
2378
2575
  # @return [Array<Types::PrivateIpAddressSpecification>]
2379
2576
  #
2380
2577
  # @!attribute [rw] secondary_private_ip_address_count
2381
- # The number of secondary private IP addresses to assign to a network
2382
- # interface. When you specify a number of secondary IP addresses,
2383
- # Amazon EC2 selects these IP addresses within the subnet range. You
2384
- # can't specify this option and specify more than one private IP
2385
- # address using `privateIpAddresses`.
2578
+ # The number of secondary private IPv4 addresses to assign to a
2579
+ # network interface. When you specify a number of secondary IPv4
2580
+ # addresses, Amazon EC2 selects these IP addresses within the
2581
+ # subnet's IPv4 CIDR range. You can't specify this option and
2582
+ # specify more than one private IP address using `privateIpAddresses`.
2386
2583
  #
2387
2584
  # The number of IP addresses you can assign to a network interface
2388
- # varies by instance type. For more information, see [Private IP
2389
- # Addresses Per ENI Per Instance Type][1] in the *Amazon Elastic
2390
- # Compute Cloud User Guide*.
2585
+ # varies by instance type. For more information, see [IP Addresses Per
2586
+ # ENI Per Instance Type][1] in the *Amazon Virtual Private Cloud User
2587
+ # Guide*.
2391
2588
  #
2392
2589
  #
2393
2590
  #
2394
2591
  # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI
2395
2592
  # @return [Integer]
2396
2593
  #
2594
+ # @!attribute [rw] ipv_6_addresses
2595
+ # One or more specific IPv6 addresses from the IPv6 CIDR block range
2596
+ # of your subnet. You can't use this option if you're specifying a
2597
+ # number of IPv6 addresses.
2598
+ # @return [Array<Types::InstanceIpv6Address>]
2599
+ #
2600
+ # @!attribute [rw] ipv_6_address_count
2601
+ # The number of IPv6 addresses to assign to a network interface.
2602
+ # Amazon EC2 automatically selects the IPv6 addresses from the subnet
2603
+ # range. You can't use this option if specifying specific IPv6
2604
+ # addresses. If your subnet has the `AssignIpv6AddressOnCreation`
2605
+ # attribute set to `true`, you can specify `0` to override this
2606
+ # setting.
2607
+ # @return [Integer]
2608
+ #
2397
2609
  # @!attribute [rw] dry_run
2398
2610
  # Checks whether you have the required permissions for the action,
2399
2611
  # without actually making the request, and provides an error response.
@@ -2407,6 +2619,8 @@ module Aws
2407
2619
  :groups,
2408
2620
  :private_ip_addresses,
2409
2621
  :secondary_private_ip_address_count,
2622
+ :ipv_6_addresses,
2623
+ :ipv_6_address_count,
2410
2624
  :dry_run)
2411
2625
  include Aws::Structure
2412
2626
  end
@@ -2517,8 +2731,10 @@ module Aws
2517
2731
  # {
2518
2732
  # dry_run: false,
2519
2733
  # route_table_id: "String", # required
2520
- # destination_cidr_block: "String", # required
2734
+ # destination_cidr_block: "String",
2521
2735
  # gateway_id: "String",
2736
+ # destination_ipv_6_cidr_block: "String",
2737
+ # egress_only_internet_gateway_id: "String",
2522
2738
  # instance_id: "String",
2523
2739
  # network_interface_id: "String",
2524
2740
  # vpc_peering_connection_id: "String",
@@ -2536,7 +2752,7 @@ module Aws
2536
2752
  # @return [String]
2537
2753
  #
2538
2754
  # @!attribute [rw] destination_cidr_block
2539
- # The CIDR address block used for the destination match. Routing
2755
+ # The IPv4 CIDR address block used for the destination match. Routing
2540
2756
  # decisions are based on the most specific match.
2541
2757
  # @return [String]
2542
2758
  #
@@ -2545,6 +2761,15 @@ module Aws
2545
2761
  # your VPC.
2546
2762
  # @return [String]
2547
2763
  #
2764
+ # @!attribute [rw] destination_ipv_6_cidr_block
2765
+ # The IPv6 CIDR block used for the destination match. Routing
2766
+ # decisions are based on the most specific match.
2767
+ # @return [String]
2768
+ #
2769
+ # @!attribute [rw] egress_only_internet_gateway_id
2770
+ # \[IPv6 traffic only\] The ID of an egress-only Internet gateway.
2771
+ # @return [String]
2772
+ #
2548
2773
  # @!attribute [rw] instance_id
2549
2774
  # The ID of a NAT instance in your VPC. The operation fails if you
2550
2775
  # specify an instance ID unless exactly one network interface is
@@ -2560,13 +2785,15 @@ module Aws
2560
2785
  # @return [String]
2561
2786
  #
2562
2787
  # @!attribute [rw] nat_gateway_id
2563
- # The ID of a NAT gateway.
2788
+ # \[IPv4 traffic only\] The ID of a NAT gateway.
2564
2789
  # @return [String]
2565
2790
  class CreateRouteRequest < Struct.new(
2566
2791
  :dry_run,
2567
2792
  :route_table_id,
2568
2793
  :destination_cidr_block,
2569
2794
  :gateway_id,
2795
+ :destination_ipv_6_cidr_block,
2796
+ :egress_only_internet_gateway_id,
2570
2797
  :instance_id,
2571
2798
  :network_interface_id,
2572
2799
  :vpc_peering_connection_id,
@@ -2753,6 +2980,7 @@ module Aws
2753
2980
  # dry_run: false,
2754
2981
  # vpc_id: "String", # required
2755
2982
  # cidr_block: "String", # required
2983
+ # ipv_6_cidr_block: "String",
2756
2984
  # availability_zone: "String",
2757
2985
  # }
2758
2986
  # @!attribute [rw] dry_run
@@ -2767,8 +2995,13 @@ module Aws
2767
2995
  # @return [String]
2768
2996
  #
2769
2997
  # @!attribute [rw] cidr_block
2770
- # The network range for the subnet, in CIDR notation. For example,
2771
- # `10.0.0.0/24`.
2998
+ # The IPv4 network range for the subnet, in CIDR notation. For
2999
+ # example, `10.0.0.0/24`.
3000
+ # @return [String]
3001
+ #
3002
+ # @!attribute [rw] ipv_6_cidr_block
3003
+ # The IPv6 network range for the subnet, in CIDR notation. The subnet
3004
+ # size must use a /64 prefix length.
2772
3005
  # @return [String]
2773
3006
  #
2774
3007
  # @!attribute [rw] availability_zone
@@ -2782,6 +3015,7 @@ module Aws
2782
3015
  :dry_run,
2783
3016
  :vpc_id,
2784
3017
  :cidr_block,
3018
+ :ipv_6_cidr_block,
2785
3019
  :availability_zone)
2786
3020
  include Aws::Structure
2787
3021
  end
@@ -2943,7 +3177,7 @@ module Aws
2943
3177
  # @!attribute [rw] iops
2944
3178
  # Only valid for Provisioned IOPS SSD volumes. The number of I/O
2945
3179
  # operations per second (IOPS) to provision for the volume, with a
2946
- # maximum ratio of 30 IOPS/GiB.
3180
+ # maximum ratio of 50 IOPS/GiB.
2947
3181
  #
2948
3182
  # Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
2949
3183
  # @return [Integer]
@@ -3116,6 +3350,7 @@ module Aws
3116
3350
  # dry_run: false,
3117
3351
  # cidr_block: "String", # required
3118
3352
  # instance_tenancy: "default", # accepts default, dedicated, host
3353
+ # amazon_provided_ipv_6_cidr_block: false,
3119
3354
  # }
3120
3355
  # @!attribute [rw] dry_run
3121
3356
  # Checks whether you have the required permissions for the action,
@@ -3125,7 +3360,7 @@ module Aws
3125
3360
  # @return [Boolean]
3126
3361
  #
3127
3362
  # @!attribute [rw] cidr_block
3128
- # The network range for the VPC, in CIDR notation. For example,
3363
+ # The IPv4 network range for the VPC, in CIDR notation. For example,
3129
3364
  # `10.0.0.0/16`.
3130
3365
  # @return [String]
3131
3366
  #
@@ -3142,10 +3377,17 @@ module Aws
3142
3377
  #
3143
3378
  # Default: `default`
3144
3379
  # @return [String]
3380
+ #
3381
+ # @!attribute [rw] amazon_provided_ipv_6_cidr_block
3382
+ # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length
3383
+ # for the VPC. You cannot specify the range of IP addresses, or the
3384
+ # size of the CIDR block.
3385
+ # @return [Boolean]
3145
3386
  class CreateVpcRequest < Struct.new(
3146
3387
  :dry_run,
3147
3388
  :cidr_block,
3148
- :instance_tenancy)
3389
+ :instance_tenancy,
3390
+ :amazon_provided_ipv_6_cidr_block)
3149
3391
  include Aws::Structure
3150
3392
  end
3151
3393
 
@@ -3362,6 +3604,38 @@ module Aws
3362
3604
  include Aws::Structure
3363
3605
  end
3364
3606
 
3607
+ # @note When making an API call, pass DeleteEgressOnlyInternetGatewayRequest
3608
+ # data as a hash:
3609
+ #
3610
+ # {
3611
+ # dry_run: false,
3612
+ # egress_only_internet_gateway_id: "EgressOnlyInternetGatewayId", # required
3613
+ # }
3614
+ # @!attribute [rw] dry_run
3615
+ # Checks whether you have the required permissions for the action,
3616
+ # without actually making the request, and provides an error response.
3617
+ # If you have the required permissions, the error response is
3618
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3619
+ # @return [Boolean]
3620
+ #
3621
+ # @!attribute [rw] egress_only_internet_gateway_id
3622
+ # The ID of the egress-only Internet gateway.
3623
+ # @return [String]
3624
+ class DeleteEgressOnlyInternetGatewayRequest < Struct.new(
3625
+ :dry_run,
3626
+ :egress_only_internet_gateway_id)
3627
+ include Aws::Structure
3628
+ end
3629
+
3630
+ # @!attribute [rw] return_code
3631
+ # Returns `true` if the request succeeds; otherwise, it returns an
3632
+ # error.
3633
+ # @return [Boolean]
3634
+ class DeleteEgressOnlyInternetGatewayResult < Struct.new(
3635
+ :return_code)
3636
+ include Aws::Structure
3637
+ end
3638
+
3365
3639
  # Contains the parameters for DeleteFlowLogs.
3366
3640
  # @note When making an API call, pass DeleteFlowLogsRequest
3367
3641
  # data as a hash:
@@ -3574,7 +3848,8 @@ module Aws
3574
3848
  # {
3575
3849
  # dry_run: false,
3576
3850
  # route_table_id: "String", # required
3577
- # destination_cidr_block: "String", # required
3851
+ # destination_cidr_block: "String",
3852
+ # destination_ipv_6_cidr_block: "String",
3578
3853
  # }
3579
3854
  # @!attribute [rw] dry_run
3580
3855
  # Checks whether you have the required permissions for the action,
@@ -3588,13 +3863,19 @@ module Aws
3588
3863
  # @return [String]
3589
3864
  #
3590
3865
  # @!attribute [rw] destination_cidr_block
3591
- # The CIDR range for the route. The value you specify must match the
3592
- # CIDR for the route exactly.
3866
+ # The IPv4 CIDR range for the route. The value you specify must match
3867
+ # the CIDR for the route exactly.
3868
+ # @return [String]
3869
+ #
3870
+ # @!attribute [rw] destination_ipv_6_cidr_block
3871
+ # The IPv6 CIDR range for the route. The value you specify must match
3872
+ # the CIDR for the route exactly.
3593
3873
  # @return [String]
3594
3874
  class DeleteRouteRequest < Struct.new(
3595
3875
  :dry_run,
3596
3876
  :route_table_id,
3597
- :destination_cidr_block)
3877
+ :destination_cidr_block,
3878
+ :destination_ipv_6_cidr_block)
3598
3879
  include Aws::Structure
3599
3880
  end
3600
3881
 
@@ -4468,6 +4749,58 @@ module Aws
4468
4749
  include Aws::Structure
4469
4750
  end
4470
4751
 
4752
+ # @note When making an API call, pass DescribeEgressOnlyInternetGatewaysRequest
4753
+ # data as a hash:
4754
+ #
4755
+ # {
4756
+ # dry_run: false,
4757
+ # egress_only_internet_gateway_ids: ["EgressOnlyInternetGatewayId"],
4758
+ # max_results: 1,
4759
+ # next_token: "String",
4760
+ # }
4761
+ # @!attribute [rw] dry_run
4762
+ # Checks whether you have the required permissions for the action,
4763
+ # without actually making the request, and provides an error response.
4764
+ # If you have the required permissions, the error response is
4765
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4766
+ # @return [Boolean]
4767
+ #
4768
+ # @!attribute [rw] egress_only_internet_gateway_ids
4769
+ # One or more egress-only Internet gateway IDs.
4770
+ # @return [Array<String>]
4771
+ #
4772
+ # @!attribute [rw] max_results
4773
+ # The maximum number of results to return for the request in a single
4774
+ # page. The remaining results can be seen by sending another request
4775
+ # with the returned `NextToken` value. This value can be between 5 and
4776
+ # 1000; if `MaxResults` is given a value larger than 1000, only 1000
4777
+ # results are returned.
4778
+ # @return [Integer]
4779
+ #
4780
+ # @!attribute [rw] next_token
4781
+ # The token to retrieve the next page of results.
4782
+ # @return [String]
4783
+ class DescribeEgressOnlyInternetGatewaysRequest < Struct.new(
4784
+ :dry_run,
4785
+ :egress_only_internet_gateway_ids,
4786
+ :max_results,
4787
+ :next_token)
4788
+ include Aws::Structure
4789
+ end
4790
+
4791
+ # @!attribute [rw] egress_only_internet_gateways
4792
+ # Information about the egress-only Internet gateways.
4793
+ # @return [Array<Types::EgressOnlyInternetGateway>]
4794
+ #
4795
+ # @!attribute [rw] next_token
4796
+ # The token to use to retrieve the next page of results.
4797
+ # @return [String]
4798
+ class DescribeEgressOnlyInternetGatewaysResult < Struct.new(
4799
+ :egress_only_internet_gateways,
4800
+ :next_token)
4801
+ include Aws::Structure
4802
+ end
4803
+
4471
4804
  # Contains the parameters for DescribeExportTasks.
4472
4805
  # @note When making an API call, pass DescribeExportTasksRequest
4473
4806
  # data as a hash:
@@ -4944,6 +5277,9 @@ module Aws
4944
5277
  # * `description` - The description of the image (provided during
4945
5278
  # image creation).
4946
5279
  #
5280
+ # * `ena-support` - A Boolean that indicates whether enhanced
5281
+ # networking with ENA is enabled.
5282
+ #
4947
5283
  # * `hypervisor` - The hypervisor type (`ovm` \| `xen`).
4948
5284
  #
4949
5285
  # * `image-id` - The ID of the image.
@@ -5345,6 +5681,19 @@ module Aws
5345
5681
  #
5346
5682
  # * `architecture` - The instance architecture (`i386` \| `x86_64`).
5347
5683
  #
5684
+ # * `association.public-ip` - The address of the Elastic IP address
5685
+ # (IPv4) bound to the network interface.
5686
+ #
5687
+ # * `association.ip-owner-id` - The owner of the Elastic IP address
5688
+ # (IPv4) associated with the network interface.
5689
+ #
5690
+ # * `association.allocation-id` - The allocation ID returned when you
5691
+ # allocated the Elastic IP address (IPv4) for your network
5692
+ # interface.
5693
+ #
5694
+ # * `association.association-id` - The association ID returned when
5695
+ # the network interface was associated with an IPv4 address.
5696
+ #
5348
5697
  # * `availability-zone` - The Availability Zone of the instance.
5349
5698
  #
5350
5699
  # * `block-device-mapping.attach-time` - The attach time for an EBS
@@ -5409,7 +5758,7 @@ module Aws
5409
5758
  # * `instance.group-name` - The name of the security group for the
5410
5759
  # instance.
5411
5760
  #
5412
- # * `ip-address` - The public IP address of the instance.
5761
+ # * `ip-address` - The public IPv4 address of the instance.
5413
5762
  #
5414
5763
  # * `kernel-id` - The kernel ID.
5415
5764
  #
@@ -5422,8 +5771,93 @@ module Aws
5422
5771
  #
5423
5772
  # * `launch-time` - The time when the instance was launched.
5424
5773
  #
5425
- # * `monitoring-state` - Indicates whether monitoring is enabled for
5426
- # the instance (`disabled` \| `enabled`).
5774
+ # * `monitoring-state` - Indicates whether detailed monitoring is
5775
+ # enabled (`disabled` \| `enabled`).
5776
+ #
5777
+ # * `network-interface.addresses.private-ip-address` - The private
5778
+ # IPv4 address associated with the network interface.
5779
+ #
5780
+ # * `network-interface.addresses.primary` - Specifies whether the IPv4
5781
+ # address of the network interface is the primary private IPv4
5782
+ # address.
5783
+ #
5784
+ # * `network-interface.addresses.association.public-ip` - The ID of
5785
+ # the association of an Elastic IP address (IPv4) with a network
5786
+ # interface.
5787
+ #
5788
+ # * `network-interface.addresses.association.ip-owner-id` - The owner
5789
+ # ID of the private IPv4 address associated with the network
5790
+ # interface.
5791
+ #
5792
+ # * `network-interface.attachment.attachment-id` - The ID of the
5793
+ # interface attachment.
5794
+ #
5795
+ # * `network-interface.attachment.instance-id` - The ID of the
5796
+ # instance to which the network interface is attached.
5797
+ #
5798
+ # * `network-interface.attachment.instance-owner-id` - The owner ID of
5799
+ # the instance to which the network interface is attached.
5800
+ #
5801
+ # * `network-interface.attachment.device-index` - The device index to
5802
+ # which the network interface is attached.
5803
+ #
5804
+ # * `network-interface.attachment.status` - The status of the
5805
+ # attachment (`attaching` \| `attached` \| `detaching` \|
5806
+ # `detached`).
5807
+ #
5808
+ # * `network-interface.attachment.attach-time` - The time that the
5809
+ # network interface was attached to an instance.
5810
+ #
5811
+ # * `network-interface.attachment.delete-on-termination` - Specifies
5812
+ # whether the attachment is deleted when an instance is terminated.
5813
+ #
5814
+ # * `network-interface.availability-zone` - The Availability Zone for
5815
+ # the network interface.
5816
+ #
5817
+ # * `network-interface.description` - The description of the network
5818
+ # interface.
5819
+ #
5820
+ # * `network-interface.group-id` - The ID of a security group
5821
+ # associated with the network interface.
5822
+ #
5823
+ # * `network-interface.group-name` - The name of a security group
5824
+ # associated with the network interface.
5825
+ #
5826
+ # * `network-interface.ipv6-addresses.ipv6-address` - The IPv6 address
5827
+ # associated with the network interface.
5828
+ #
5829
+ # * `network-interface.mac-address` - The MAC address of the network
5830
+ # interface.
5831
+ #
5832
+ # * `network-interface.network-interface-id` - The ID of the network
5833
+ # interface.
5834
+ #
5835
+ # * `network-interface.owner-id` - The ID of the owner of the network
5836
+ # interface.
5837
+ #
5838
+ # * `network-interface.private-dns-name` - The private DNS name of the
5839
+ # network interface.
5840
+ #
5841
+ # * `network-interface.requester-id` - The requester ID for the
5842
+ # network interface.
5843
+ #
5844
+ # * `network-interface.requester-managed` - Indicates whether the
5845
+ # network interface is being managed by AWS.
5846
+ #
5847
+ # * `network-interface.status` - The status of the network interface
5848
+ # (`available`) \| `in-use`).
5849
+ #
5850
+ # * `network-interface.source-dest-check` - Whether the network
5851
+ # interface performs source/destination checking. A value of `true`
5852
+ # means checking is enabled, and `false` means checking is disabled.
5853
+ # The value must be `false` for the network interface to perform
5854
+ # network address translation (NAT) in your VPC.
5855
+ #
5856
+ # * `network-interface.subnet-id` - The ID of the subnet for the
5857
+ # network interface.
5858
+ #
5859
+ # * `network-interface.vpc-id` - The ID of the VPC for the network
5860
+ # interface.
5427
5861
  #
5428
5862
  # * `owner-id` - The AWS account ID of the instance owner.
5429
5863
  #
@@ -5433,9 +5867,9 @@ module Aws
5433
5867
  # * `platform` - The platform. Use `windows` if you have Windows
5434
5868
  # instances; otherwise, leave blank.
5435
5869
  #
5436
- # * `private-dns-name` - The private DNS name of the instance.
5870
+ # * `private-dns-name` - The private IPv4 DNS name of the instance.
5437
5871
  #
5438
- # * `private-ip-address` - The private IP address of the instance.
5872
+ # * `private-ip-address` - The private IPv4 address of the instance.
5439
5873
  #
5440
5874
  # * `product-code` - The product code associated with the AMI used to
5441
5875
  # launch the instance.
@@ -5505,99 +5939,6 @@ module Aws
5505
5939
  # (`paravirtual` \| `hvm`).
5506
5940
  #
5507
5941
  # * `vpc-id` - The ID of the VPC that the instance is running in.
5508
- #
5509
- # * `network-interface.description` - The description of the network
5510
- # interface.
5511
- #
5512
- # * `network-interface.subnet-id` - The ID of the subnet for the
5513
- # network interface.
5514
- #
5515
- # * `network-interface.vpc-id` - The ID of the VPC for the network
5516
- # interface.
5517
- #
5518
- # * `network-interface.network-interface-id` - The ID of the network
5519
- # interface.
5520
- #
5521
- # * `network-interface.owner-id` - The ID of the owner of the network
5522
- # interface.
5523
- #
5524
- # * `network-interface.availability-zone` - The Availability Zone for
5525
- # the network interface.
5526
- #
5527
- # * `network-interface.requester-id` - The requester ID for the
5528
- # network interface.
5529
- #
5530
- # * `network-interface.requester-managed` - Indicates whether the
5531
- # network interface is being managed by AWS.
5532
- #
5533
- # * `network-interface.status` - The status of the network interface
5534
- # (`available`) \| `in-use`).
5535
- #
5536
- # * `network-interface.mac-address` - The MAC address of the network
5537
- # interface.
5538
- #
5539
- # * `network-interface.private-dns-name` - The private DNS name of the
5540
- # network interface.
5541
- #
5542
- # * `network-interface.source-dest-check` - Whether the network
5543
- # interface performs source/destination checking. A value of `true`
5544
- # means checking is enabled, and `false` means checking is disabled.
5545
- # The value must be `false` for the network interface to perform
5546
- # network address translation (NAT) in your VPC.
5547
- #
5548
- # * `network-interface.group-id` - The ID of a security group
5549
- # associated with the network interface.
5550
- #
5551
- # * `network-interface.group-name` - The name of a security group
5552
- # associated with the network interface.
5553
- #
5554
- # * `network-interface.attachment.attachment-id` - The ID of the
5555
- # interface attachment.
5556
- #
5557
- # * `network-interface.attachment.instance-id` - The ID of the
5558
- # instance to which the network interface is attached.
5559
- #
5560
- # * `network-interface.attachment.instance-owner-id` - The owner ID of
5561
- # the instance to which the network interface is attached.
5562
- #
5563
- # * `network-interface.addresses.private-ip-address` - The private IP
5564
- # address associated with the network interface.
5565
- #
5566
- # * `network-interface.attachment.device-index` - The device index to
5567
- # which the network interface is attached.
5568
- #
5569
- # * `network-interface.attachment.status` - The status of the
5570
- # attachment (`attaching` \| `attached` \| `detaching` \|
5571
- # `detached`).
5572
- #
5573
- # * `network-interface.attachment.attach-time` - The time that the
5574
- # network interface was attached to an instance.
5575
- #
5576
- # * `network-interface.attachment.delete-on-termination` - Specifies
5577
- # whether the attachment is deleted when an instance is terminated.
5578
- #
5579
- # * `network-interface.addresses.primary` - Specifies whether the IP
5580
- # address of the network interface is the primary private IP
5581
- # address.
5582
- #
5583
- # * `network-interface.addresses.association.public-ip` - The ID of
5584
- # the association of an Elastic IP address with a network interface.
5585
- #
5586
- # * `network-interface.addresses.association.ip-owner-id` - The owner
5587
- # ID of the private IP address associated with the network
5588
- # interface.
5589
- #
5590
- # * `association.public-ip` - The address of the Elastic IP address
5591
- # bound to the network interface.
5592
- #
5593
- # * `association.ip-owner-id` - The owner of the Elastic IP address
5594
- # associated with the network interface.
5595
- #
5596
- # * `association.allocation-id` - The allocation ID returned when you
5597
- # allocated the Elastic IP address for your network interface.
5598
- #
5599
- # * `association.association-id` - The association ID returned when
5600
- # the network interface was associated with an IP address.
5601
5942
  # @return [Array<Types::Filter>]
5602
5943
  #
5603
5944
  # @!attribute [rw] next_token
@@ -5937,7 +6278,7 @@ module Aws
5937
6278
  # * `default` - Indicates whether the ACL is the default network ACL
5938
6279
  # for the VPC.
5939
6280
  #
5940
- # * `entry.cidr` - The CIDR range specified in the entry.
6281
+ # * `entry.cidr` - The IPv4 CIDR range specified in the entry.
5941
6282
  #
5942
6283
  # * `entry.egress` - Indicates whether the entry applies to egress
5943
6284
  # traffic.
@@ -5946,6 +6287,8 @@ module Aws
5946
6287
  #
5947
6288
  # * `entry.icmp.type` - The ICMP type specified in the entry, if any.
5948
6289
  #
6290
+ # * `entry.ipv6-cidr` - The IPv6 CIDR range specified in the entry.
6291
+ #
5949
6292
  # * `entry.port-range.from` - The start of the port range specified in
5950
6293
  # the entry.
5951
6294
  #
@@ -6085,33 +6428,34 @@ module Aws
6085
6428
  # @!attribute [rw] filters
6086
6429
  # One or more filters.
6087
6430
  #
6088
- # * `addresses.private-ip-address` - The private IP addresses
6431
+ # * `addresses.private-ip-address` - The private IPv4 addresses
6089
6432
  # associated with the network interface.
6090
6433
  #
6091
- # * `addresses.primary` - Whether the private IP address is the
6434
+ # * `addresses.primary` - Whether the private IPv4 address is the
6092
6435
  # primary IP address associated with the network interface.
6093
6436
  #
6094
6437
  # * `addresses.association.public-ip` - The association ID returned
6095
6438
  # when the network interface was associated with the Elastic IP
6096
- # address.
6439
+ # address (IPv4).
6097
6440
  #
6098
6441
  # * `addresses.association.owner-id` - The owner ID of the addresses
6099
6442
  # associated with the network interface.
6100
6443
  #
6101
6444
  # * `association.association-id` - The association ID returned when
6102
- # the network interface was associated with an IP address.
6445
+ # the network interface was associated with an IPv4 address.
6103
6446
  #
6104
6447
  # * `association.allocation-id` - The allocation ID returned when you
6105
- # allocated the Elastic IP address for your network interface.
6448
+ # allocated the Elastic IP address (IPv4) for your network
6449
+ # interface.
6106
6450
  #
6107
6451
  # * `association.ip-owner-id` - The owner of the Elastic IP address
6108
- # associated with the network interface.
6452
+ # (IPv4) associated with the network interface.
6109
6453
  #
6110
6454
  # * `association.public-ip` - The address of the Elastic IP address
6111
- # bound to the network interface.
6455
+ # (IPv4) bound to the network interface.
6112
6456
  #
6113
6457
  # * `association.public-dns-name` - The public DNS name for the
6114
- # network interface.
6458
+ # network interface (IPv4).
6115
6459
  #
6116
6460
  # * `attachment.attachment-id` - The ID of the interface attachment.
6117
6461
  #
@@ -6147,17 +6491,20 @@ module Aws
6147
6491
  # * `group-name` - The name of a security group associated with the
6148
6492
  # network interface.
6149
6493
  #
6494
+ # * `ipv6-addresses.ipv6-address` - An IPv6 address associated with
6495
+ # the network interface.
6496
+ #
6150
6497
  # * `mac-address` - The MAC address of the network interface.
6151
6498
  #
6152
6499
  # * `network-interface-id` - The ID of the network interface.
6153
6500
  #
6154
6501
  # * `owner-id` - The AWS account ID of the network interface owner.
6155
6502
  #
6156
- # * `private-ip-address` - The private IP address or addresses of the
6157
- # network interface.
6503
+ # * `private-ip-address` - The private IPv4 address or addresses of
6504
+ # the network interface.
6158
6505
  #
6159
- # * `private-dns-name` - The private DNS name of the network
6160
- # interface.
6506
+ # * `private-dns-name` - The private DNS name of the network interface
6507
+ # (IPv4).
6161
6508
  #
6162
6509
  # * `requester-id` - The ID of the entity that launched the instance
6163
6510
  # on your behalf (for example, AWS Management Console, Auto Scaling,
@@ -6534,7 +6881,7 @@ module Aws
6534
6881
  # {
6535
6882
  # dry_run: false,
6536
6883
  # reserved_instances_offering_ids: ["String"],
6537
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
6884
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
6538
6885
  # availability_zone: "String",
6539
6886
  # product_description: "Linux/UNIX", # accepts Linux/UNIX, Linux/UNIX (Amazon VPC), Windows, Windows (Amazon VPC)
6540
6887
  # filters: [
@@ -6877,12 +7224,18 @@ module Aws
6877
7224
  #
6878
7225
  # * `route-table-id` - The ID of the route table.
6879
7226
  #
6880
- # * `route.destination-cidr-block` - The CIDR range specified in a
6881
- # route in the table.
7227
+ # * `route.destination-cidr-block` - The IPv4 CIDR range specified in
7228
+ # a route in the table.
7229
+ #
7230
+ # * `route.destination-ipv6-cidr-block` - The IPv6 CIDR range
7231
+ # specified in a route in the route table.
6882
7232
  #
6883
7233
  # * `route.destination-prefix-list-id` - The ID (prefix) of the AWS
6884
7234
  # service specified in a route in the table.
6885
7235
  #
7236
+ # * `route.egress-only-internet-gateway-id` - The ID of an egress-only
7237
+ # Internet gateway specified in a route in the route table.
7238
+ #
6886
7239
  # * `route.gateway-id` - The ID of a gateway specified in a route in
6887
7240
  # the table.
6888
7241
  #
@@ -7213,8 +7566,8 @@ module Aws
7213
7566
  #
7214
7567
  # * `group-name` - The name of the security group.
7215
7568
  #
7216
- # * `ip-permission.cidr` - A CIDR range that has been granted
7217
- # permission.
7569
+ # * `ip-permission.cidr` - An IPv4 CIDR range that has been granted
7570
+ # permission in a security group rule.
7218
7571
  #
7219
7572
  # * `ip-permission.from-port` - The start of port range for the TCP
7220
7573
  # and UDP protocols, or an ICMP type number.
@@ -7225,6 +7578,9 @@ module Aws
7225
7578
  # * `ip-permission.group-name` - The name of a security group that has
7226
7579
  # been granted permission.
7227
7580
  #
7581
+ # * `ip-permission.ipv6-cidr` - An IPv6 CIDR range that has been
7582
+ # granted permission in a security group rule.
7583
+ #
7228
7584
  # * `ip-permission.protocol` - The IP protocol for the permission
7229
7585
  # (`tcp` \| `udp` \| `icmp` or a protocol number).
7230
7586
  #
@@ -7850,7 +8206,7 @@ module Aws
7850
8206
  # dry_run: false,
7851
8207
  # start_time: Time.now,
7852
8208
  # end_time: Time.now,
7853
- # instance_types: ["t1.micro"], # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
8209
+ # instance_types: ["t1.micro"], # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
7854
8210
  # product_descriptions: ["String"],
7855
8211
  # filters: [
7856
8212
  # {
@@ -7882,7 +8238,8 @@ module Aws
7882
8238
  # @return [Time]
7883
8239
  #
7884
8240
  # @!attribute [rw] instance_types
7885
- # Filters the results by the specified instance types.
8241
+ # Filters the results by the specified instance types. Note that T2
8242
+ # and HS1 instance types are not supported.
7886
8243
  # @return [Array<String>]
7887
8244
  #
7888
8245
  # @!attribute [rw] product_descriptions
@@ -8038,11 +8395,11 @@ module Aws
8038
8395
  # * `availabilityZone` - The Availability Zone for the subnet. You can
8039
8396
  # also use `availability-zone` as the filter name.
8040
8397
  #
8041
- # * `available-ip-address-count` - The number of IP addresses in the
8398
+ # * `available-ip-address-count` - The number of IPv4 addresses in the
8042
8399
  # subnet that are available.
8043
8400
  #
8044
- # * `cidrBlock` - The CIDR block of the subnet. The CIDR block you
8045
- # specify must exactly match the subnet's CIDR block for
8401
+ # * `cidrBlock` - The IPv4 CIDR block of the subnet. The CIDR block
8402
+ # you specify must exactly match the subnet's CIDR block for
8046
8403
  # information to be returned for the subnet. You can also use `cidr`
8047
8404
  # or `cidr-block` as the filter names.
8048
8405
  #
@@ -8050,6 +8407,15 @@ module Aws
8050
8407
  # the Availability Zone. You can also use `default-for-az` as the
8051
8408
  # filter name.
8052
8409
  #
8410
+ # * `ipv6-cidr-block-association.ipv6-cidr-block` - An IPv6 CIDR block
8411
+ # associated with the subnet.
8412
+ #
8413
+ # * `ipv6-cidr-block-association.association-id` - An association ID
8414
+ # for an IPv6 CIDR block associated with the subnet.
8415
+ #
8416
+ # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR
8417
+ # block associated with the subnet.
8418
+ #
8053
8419
  # * `state` - The state of the subnet (`pending` \| `available`).
8054
8420
  #
8055
8421
  # * `subnet-id` - The ID of the subnet.
@@ -8764,7 +9130,8 @@ module Aws
8764
9130
  # @!attribute [rw] filters
8765
9131
  # One or more filters.
8766
9132
  #
8767
- # * `accepter-vpc-info.cidr-block` - The CIDR block of the peer VPC.
9133
+ # * `accepter-vpc-info.cidr-block` - The IPv4 CIDR block of the peer
9134
+ # VPC.
8768
9135
  #
8769
9136
  # * `accepter-vpc-info.owner-id` - The AWS account ID of the owner of
8770
9137
  # the peer VPC.
@@ -8774,7 +9141,7 @@ module Aws
8774
9141
  # * `expiration-time` - The expiration date and time for the VPC
8775
9142
  # peering connection.
8776
9143
  #
8777
- # * `requester-vpc-info.cidr-block` - The CIDR block of the
9144
+ # * `requester-vpc-info.cidr-block` - The IPv4 CIDR block of the
8778
9145
  # requester's VPC.
8779
9146
  #
8780
9147
  # * `requester-vpc-info.owner-id` - The AWS account ID of the owner of
@@ -8853,13 +9220,22 @@ module Aws
8853
9220
  # @!attribute [rw] filters
8854
9221
  # One or more filters.
8855
9222
  #
8856
- # * `cidr` - The CIDR block of the VPC. The CIDR block you specify
8857
- # must exactly match the VPC's CIDR block for information to be
8858
- # returned for the VPC. Must contain the slash followed by one or
8859
- # two digits (for example, `/28`).
9223
+ # * `cidr` - The IPv4 CIDR block of the VPC. The CIDR block you
9224
+ # specify must exactly match the VPC's CIDR block for information
9225
+ # to be returned for the VPC. Must contain the slash followed by one
9226
+ # or two digits (for example, `/28`).
8860
9227
  #
8861
9228
  # * `dhcp-options-id` - The ID of a set of DHCP options.
8862
9229
  #
9230
+ # * `ipv6-cidr-block-association.ipv6-cidr-block` - An IPv6 CIDR block
9231
+ # associated with the VPC.
9232
+ #
9233
+ # * `ipv6-cidr-block-association.association-id` - The association ID
9234
+ # for an IPv6 CIDR block associated with the VPC.
9235
+ #
9236
+ # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR
9237
+ # block associated with the VPC.
9238
+ #
8863
9239
  # * `isDefault` - Indicates whether the VPC is the default VPC.
8864
9240
  #
8865
9241
  # * `state` - The state of the VPC (`pending` \| `available`).
@@ -9385,31 +9761,85 @@ module Aws
9385
9761
  include Aws::Structure
9386
9762
  end
9387
9763
 
9388
- # Contains the parameters for DisassociateRouteTable.
9389
- # @note When making an API call, pass DisassociateRouteTableRequest
9764
+ # Contains the parameters for DisassociateRouteTable.
9765
+ # @note When making an API call, pass DisassociateRouteTableRequest
9766
+ # data as a hash:
9767
+ #
9768
+ # {
9769
+ # dry_run: false,
9770
+ # association_id: "String", # required
9771
+ # }
9772
+ # @!attribute [rw] dry_run
9773
+ # Checks whether you have the required permissions for the action,
9774
+ # without actually making the request, and provides an error response.
9775
+ # If you have the required permissions, the error response is
9776
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9777
+ # @return [Boolean]
9778
+ #
9779
+ # @!attribute [rw] association_id
9780
+ # The association ID representing the current association between the
9781
+ # route table and subnet.
9782
+ # @return [String]
9783
+ class DisassociateRouteTableRequest < Struct.new(
9784
+ :dry_run,
9785
+ :association_id)
9786
+ include Aws::Structure
9787
+ end
9788
+
9789
+ # @note When making an API call, pass DisassociateSubnetCidrBlockRequest
9790
+ # data as a hash:
9791
+ #
9792
+ # {
9793
+ # association_id: "String", # required
9794
+ # }
9795
+ # @!attribute [rw] association_id
9796
+ # The association ID for the CIDR block.
9797
+ # @return [String]
9798
+ class DisassociateSubnetCidrBlockRequest < Struct.new(
9799
+ :association_id)
9800
+ include Aws::Structure
9801
+ end
9802
+
9803
+ # @!attribute [rw] subnet_id
9804
+ # The ID of the subnet.
9805
+ # @return [String]
9806
+ #
9807
+ # @!attribute [rw] ipv_6_cidr_block_association
9808
+ # Information about the IPv6 CIDR block association.
9809
+ # @return [Types::SubnetIpv6CidrBlockAssociation]
9810
+ class DisassociateSubnetCidrBlockResult < Struct.new(
9811
+ :subnet_id,
9812
+ :ipv_6_cidr_block_association)
9813
+ include Aws::Structure
9814
+ end
9815
+
9816
+ # @note When making an API call, pass DisassociateVpcCidrBlockRequest
9390
9817
  # data as a hash:
9391
9818
  #
9392
9819
  # {
9393
- # dry_run: false,
9394
9820
  # association_id: "String", # required
9395
9821
  # }
9396
- # @!attribute [rw] dry_run
9397
- # Checks whether you have the required permissions for the action,
9398
- # without actually making the request, and provides an error response.
9399
- # If you have the required permissions, the error response is
9400
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9401
- # @return [Boolean]
9402
- #
9403
9822
  # @!attribute [rw] association_id
9404
- # The association ID representing the current association between the
9405
- # route table and subnet.
9823
+ # The association ID for the CIDR block.
9406
9824
  # @return [String]
9407
- class DisassociateRouteTableRequest < Struct.new(
9408
- :dry_run,
9825
+ class DisassociateVpcCidrBlockRequest < Struct.new(
9409
9826
  :association_id)
9410
9827
  include Aws::Structure
9411
9828
  end
9412
9829
 
9830
+ # @!attribute [rw] vpc_id
9831
+ # The ID of the VPC.
9832
+ # @return [String]
9833
+ #
9834
+ # @!attribute [rw] ipv_6_cidr_block_association
9835
+ # Information about the IPv6 CIDR block association.
9836
+ # @return [Types::VpcIpv6CidrBlockAssociation]
9837
+ class DisassociateVpcCidrBlockResult < Struct.new(
9838
+ :vpc_id,
9839
+ :ipv_6_cidr_block_association)
9840
+ include Aws::Structure
9841
+ end
9842
+
9413
9843
  # Describes a disk image.
9414
9844
  # @note When making an API call, pass DiskImage
9415
9845
  # data as a hash:
@@ -9656,6 +10086,21 @@ module Aws
9656
10086
  include Aws::Structure
9657
10087
  end
9658
10088
 
10089
+ # Describes an egress-only Internet gateway.
10090
+ # @!attribute [rw] egress_only_internet_gateway_id
10091
+ # The ID of the egress-only Internet gateway.
10092
+ # @return [String]
10093
+ #
10094
+ # @!attribute [rw] attachments
10095
+ # Information about the attachment of the egress-only Internet
10096
+ # gateway.
10097
+ # @return [Array<Types::InternetGatewayAttachment>]
10098
+ class EgressOnlyInternetGateway < Struct.new(
10099
+ :egress_only_internet_gateway_id,
10100
+ :attachments)
10101
+ include Aws::Structure
10102
+ end
10103
+
9659
10104
  # Contains the parameters for EnableVgwRoutePropagation.
9660
10105
  # @note When making an API call, pass EnableVgwRoutePropagationRequest
9661
10106
  # data as a hash:
@@ -10210,13 +10655,12 @@ module Aws
10210
10655
  # @return [Boolean]
10211
10656
  #
10212
10657
  # @!attribute [rw] reserved_instance_ids
10213
- # The ID/s of the Convertible Reserved Instances you want to exchange.
10658
+ # The IDs of the Convertible Reserved Instances to exchange.
10214
10659
  # @return [Array<String>]
10215
10660
  #
10216
10661
  # @!attribute [rw] target_configurations
10217
10662
  # The configuration requirements of the Convertible Reserved Instances
10218
- # you want in exchange for your current Convertible Reserved
10219
- # Instances.
10663
+ # to exchange for your current Convertible Reserved Instances.
10220
10664
  # @return [Array<Types::TargetConfigurationRequest>]
10221
10665
  class GetReservedInstancesExchangeQuoteRequest < Struct.new(
10222
10666
  :dry_run,
@@ -10256,11 +10700,11 @@ module Aws
10256
10700
  #
10257
10701
  # @!attribute [rw] is_valid_exchange
10258
10702
  # If `true`, the exchange is valid. If `false`, the exchange cannot be
10259
- # performed.
10703
+ # completed.
10260
10704
  # @return [Boolean]
10261
10705
  #
10262
10706
  # @!attribute [rw] validation_failure_reason
10263
- # Describes the reason why the exchange can not be completed.
10707
+ # Describes the reason why the exchange cannot be completed.
10264
10708
  # @return [String]
10265
10709
  class GetReservedInstancesExchangeQuoteResult < Struct.new(
10266
10710
  :reserved_instance_value_set,
@@ -10583,12 +11027,12 @@ module Aws
10583
11027
  # code: 1,
10584
11028
  # }
10585
11029
  # @!attribute [rw] type
10586
- # The ICMP code. A value of -1 means all codes for the specified ICMP
10587
- # type.
11030
+ # The ICMP type. A value of -1 means all types.
10588
11031
  # @return [Integer]
10589
11032
  #
10590
11033
  # @!attribute [rw] code
10591
- # The ICMP type. A value of -1 means all types.
11034
+ # The ICMP code. A value of -1 means all codes for the specified ICMP
11035
+ # type.
10592
11036
  # @return [Integer]
10593
11037
  class IcmpTypeCode < Struct.new(
10594
11038
  :type,
@@ -11090,7 +11534,7 @@ module Aws
11090
11534
  # user_data: {
11091
11535
  # data: "String",
11092
11536
  # },
11093
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
11537
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
11094
11538
  # placement: {
11095
11539
  # availability_zone: "String",
11096
11540
  # group_name: "String",
@@ -11188,7 +11632,7 @@ module Aws
11188
11632
  # user_data: {
11189
11633
  # data: "String",
11190
11634
  # },
11191
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
11635
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
11192
11636
  # placement: {
11193
11637
  # availability_zone: "String",
11194
11638
  # group_name: "String",
@@ -11565,16 +12009,21 @@ module Aws
11565
12009
  # @return [Types::InstanceState]
11566
12010
  #
11567
12011
  # @!attribute [rw] private_dns_name
11568
- # The private DNS name assigned to the instance. This DNS name can
11569
- # only be used inside the Amazon EC2 network. This name is not
11570
- # available until the instance enters the `running` state. For
11571
- # EC2-VPC, this name is only available if you've enabled DNS
11572
- # hostnames for your VPC.
12012
+ # (IPv4 only) The private DNS hostname name assigned to the instance.
12013
+ # This DNS hostname can only be used inside the Amazon EC2 network.
12014
+ # This name is not available until the instance enters the `running`
12015
+ # state.
12016
+ #
12017
+ # \[EC2-VPC\] The Amazon-provided DNS server will resolve
12018
+ # Amazon-provided private DNS hostnames if you've enabled DNS
12019
+ # resolution and DNS hostnames in your VPC. If you are not using the
12020
+ # Amazon-provided DNS server in your VPC, your custom domain name
12021
+ # servers must resolve the hostname as appropriate.
11573
12022
  # @return [String]
11574
12023
  #
11575
12024
  # @!attribute [rw] public_dns_name
11576
- # The public DNS name assigned to the instance. This name is not
11577
- # available until the instance enters the `running` state. For
12025
+ # (IPv4 only) The public DNS name assigned to the instance. This name
12026
+ # is not available until the instance enters the `running` state. For
11578
12027
  # EC2-VPC, this name is only available if you've enabled DNS
11579
12028
  # hostnames for your VPC.
11580
12029
  # @return [String]
@@ -11623,7 +12072,7 @@ module Aws
11623
12072
  # @return [String]
11624
12073
  #
11625
12074
  # @!attribute [rw] monitoring
11626
- # The monitoring information for the instance.
12075
+ # The monitoring for the instance.
11627
12076
  # @return [Types::Monitoring]
11628
12077
  #
11629
12078
  # @!attribute [rw] subnet_id
@@ -11635,11 +12084,11 @@ module Aws
11635
12084
  # @return [String]
11636
12085
  #
11637
12086
  # @!attribute [rw] private_ip_address
11638
- # The private IP address assigned to the instance.
12087
+ # The private IPv4 address assigned to the instance.
11639
12088
  # @return [String]
11640
12089
  #
11641
12090
  # @!attribute [rw] public_ip_address
11642
- # The public IP address assigned to the instance, if applicable.
12091
+ # The public IPv4 address assigned to the instance, if applicable.
11643
12092
  # @return [String]
11644
12093
  #
11645
12094
  # @!attribute [rw] state_reason
@@ -11963,13 +12412,28 @@ module Aws
11963
12412
  include Aws::Structure
11964
12413
  end
11965
12414
 
11966
- # Describes the monitoring information of the instance.
12415
+ # Describes an IPv6 address.
12416
+ # @note When making an API call, pass InstanceIpv6Address
12417
+ # data as a hash:
12418
+ #
12419
+ # {
12420
+ # ipv_6_address: "String",
12421
+ # }
12422
+ # @!attribute [rw] ipv_6_address
12423
+ # The IPv6 address.
12424
+ # @return [String]
12425
+ class InstanceIpv6Address < Struct.new(
12426
+ :ipv_6_address)
12427
+ include Aws::Structure
12428
+ end
12429
+
12430
+ # Describes the monitoring of an instance.
11967
12431
  # @!attribute [rw] instance_id
11968
12432
  # The ID of the instance.
11969
12433
  # @return [String]
11970
12434
  #
11971
12435
  # @!attribute [rw] monitoring
11972
- # The monitoring information.
12436
+ # The monitoring for the instance.
11973
12437
  # @return [Types::Monitoring]
11974
12438
  class InstanceMonitoring < Struct.new(
11975
12439
  :instance_id,
@@ -12007,7 +12471,7 @@ module Aws
12007
12471
  # @return [String]
12008
12472
  #
12009
12473
  # @!attribute [rw] private_ip_address
12010
- # The IP address of the network interface within the subnet.
12474
+ # The IPv4 address of the network interface within the subnet.
12011
12475
  # @return [String]
12012
12476
  #
12013
12477
  # @!attribute [rw] private_dns_name
@@ -12028,13 +12492,18 @@ module Aws
12028
12492
  # @return [Types::InstanceNetworkInterfaceAttachment]
12029
12493
  #
12030
12494
  # @!attribute [rw] association
12031
- # The association information for an Elastic IP associated with the
12495
+ # The association information for an Elastic IPv4 associated with the
12032
12496
  # network interface.
12033
12497
  # @return [Types::InstanceNetworkInterfaceAssociation]
12034
12498
  #
12035
12499
  # @!attribute [rw] private_ip_addresses
12036
- # The private IP addresses associated with the network interface.
12500
+ # One or more private IPv4 addresses associated with the network
12501
+ # interface.
12037
12502
  # @return [Array<Types::InstancePrivateIpAddress>]
12503
+ #
12504
+ # @!attribute [rw] ipv_6_addresses
12505
+ # One or more IPv6 addresses associated with the network interface.
12506
+ # @return [Array<Types::InstanceIpv6Address>]
12038
12507
  class InstanceNetworkInterface < Struct.new(
12039
12508
  :network_interface_id,
12040
12509
  :subnet_id,
@@ -12049,11 +12518,12 @@ module Aws
12049
12518
  :groups,
12050
12519
  :attachment,
12051
12520
  :association,
12052
- :private_ip_addresses)
12521
+ :private_ip_addresses,
12522
+ :ipv_6_addresses)
12053
12523
  include Aws::Structure
12054
12524
  end
12055
12525
 
12056
- # Describes association information for an Elastic IP address.
12526
+ # Describes association information for an Elastic IP address (IPv4).
12057
12527
  # @!attribute [rw] public_ip
12058
12528
  # The public IP address or Elastic IP address bound to the network
12059
12529
  # interface.
@@ -12124,6 +12594,12 @@ module Aws
12124
12594
  # ],
12125
12595
  # secondary_private_ip_address_count: 1,
12126
12596
  # associate_public_ip_address: false,
12597
+ # ipv_6_addresses: [
12598
+ # {
12599
+ # ipv_6_address: "String",
12600
+ # },
12601
+ # ],
12602
+ # ipv_6_address_count: 1,
12127
12603
  # }
12128
12604
  # @!attribute [rw] network_interface_id
12129
12605
  # The ID of the network interface.
@@ -12146,7 +12622,7 @@ module Aws
12146
12622
  # @return [String]
12147
12623
  #
12148
12624
  # @!attribute [rw] private_ip_address
12149
- # The private IP address of the network interface. Applies only if
12625
+ # The private IPv4 address of the network interface. Applies only if
12150
12626
  # creating a network interface when launching an instance. You cannot
12151
12627
  # specify this option if you're launching more than one instance in a
12152
12628
  # RunInstances request.
@@ -12164,27 +12640,42 @@ module Aws
12164
12640
  # @return [Boolean]
12165
12641
  #
12166
12642
  # @!attribute [rw] private_ip_addresses
12167
- # One or more private IP addresses to assign to the network interface.
12168
- # Only one private IP address can be designated as primary. You cannot
12169
- # specify this option if you're launching more than one instance in a
12170
- # RunInstances request.
12643
+ # One or more private IPv4 addresses to assign to the network
12644
+ # interface. Only one private IPv4 address can be designated as
12645
+ # primary. You cannot specify this option if you're launching more
12646
+ # than one instance in a RunInstances request.
12171
12647
  # @return [Array<Types::PrivateIpAddressSpecification>]
12172
12648
  #
12173
12649
  # @!attribute [rw] secondary_private_ip_address_count
12174
- # The number of secondary private IP addresses. You can't specify
12650
+ # The number of secondary private IPv4 addresses. You can't specify
12175
12651
  # this option and specify more than one private IP address using the
12176
12652
  # private IP addresses option. You cannot specify this option if
12177
12653
  # you're launching more than one instance in a RunInstances request.
12178
12654
  # @return [Integer]
12179
12655
  #
12180
12656
  # @!attribute [rw] associate_public_ip_address
12181
- # Indicates whether to assign a public IP address to an instance you
12657
+ # Indicates whether to assign a public IPv4 address to an instance you
12182
12658
  # launch in a VPC. The public IP address can only be assigned to a
12183
12659
  # network interface for eth0, and can only be assigned to a new
12184
12660
  # network interface, not an existing one. You cannot specify more than
12185
12661
  # one network interface in the request. If launching into a default
12186
12662
  # subnet, the default value is `true`.
12187
12663
  # @return [Boolean]
12664
+ #
12665
+ # @!attribute [rw] ipv_6_addresses
12666
+ # One or more IPv6 addresses to assign to the network interface. You
12667
+ # cannot specify this option and the option to assign a number of IPv6
12668
+ # addresses in the same request. You cannot specify this option if
12669
+ # you've specified a minimum number of instances to launch.
12670
+ # @return [Array<Types::InstanceIpv6Address>]
12671
+ #
12672
+ # @!attribute [rw] ipv_6_address_count
12673
+ # A number of IPv6 addresses to assign to the network interface.
12674
+ # Amazon EC2 chooses the IPv6 addresses from the range of the subnet.
12675
+ # You cannot specify this option and the option to assign specific
12676
+ # IPv6 addresses in the same request. You can specify this option if
12677
+ # you've specified a minimum number of instances to launch.
12678
+ # @return [Integer]
12188
12679
  class InstanceNetworkInterfaceSpecification < Struct.new(
12189
12680
  :network_interface_id,
12190
12681
  :device_index,
@@ -12195,22 +12686,24 @@ module Aws
12195
12686
  :delete_on_termination,
12196
12687
  :private_ip_addresses,
12197
12688
  :secondary_private_ip_address_count,
12198
- :associate_public_ip_address)
12689
+ :associate_public_ip_address,
12690
+ :ipv_6_addresses,
12691
+ :ipv_6_address_count)
12199
12692
  include Aws::Structure
12200
12693
  end
12201
12694
 
12202
- # Describes a private IP address.
12695
+ # Describes a private IPv4 address.
12203
12696
  # @!attribute [rw] private_ip_address
12204
- # The private IP address of the network interface.
12697
+ # The private IPv4 address of the network interface.
12205
12698
  # @return [String]
12206
12699
  #
12207
12700
  # @!attribute [rw] private_dns_name
12208
- # The private DNS name.
12701
+ # The private IPv4 DNS name.
12209
12702
  # @return [String]
12210
12703
  #
12211
12704
  # @!attribute [rw] primary
12212
- # Indicates whether this IP address is the primary private IP address
12213
- # of the network interface.
12705
+ # Indicates whether this IPv4 address is the primary private IP
12706
+ # address of the network interface.
12214
12707
  # @return [Boolean]
12215
12708
  #
12216
12709
  # @!attribute [rw] association
@@ -12225,7 +12718,7 @@ module Aws
12225
12718
  include Aws::Structure
12226
12719
  end
12227
12720
 
12228
- # Describes the current state of the instance.
12721
+ # Describes the current state of an instance.
12229
12722
  # @!attribute [rw] code
12230
12723
  # The low byte represents the state. The high byte is an opaque
12231
12724
  # internal value and should be ignored.
@@ -12391,7 +12884,8 @@ module Aws
12391
12884
  include Aws::Structure
12392
12885
  end
12393
12886
 
12394
- # Describes the attachment of a VPC to an Internet gateway.
12887
+ # Describes the attachment of a VPC to an Internet gateway or an
12888
+ # egress-only Internet gateway.
12395
12889
  # @!attribute [rw] vpc_id
12396
12890
  # The ID of the VPC.
12397
12891
  # @return [String]
@@ -12428,6 +12922,11 @@ module Aws
12428
12922
  # cidr_ip: "String",
12429
12923
  # },
12430
12924
  # ],
12925
+ # ipv_6_ranges: [
12926
+ # {
12927
+ # cidr_ipv_6: "String",
12928
+ # },
12929
+ # ],
12431
12930
  # prefix_list_ids: [
12432
12931
  # {
12433
12932
  # prefix_list_id: "String",
@@ -12435,11 +12934,16 @@ module Aws
12435
12934
  # ],
12436
12935
  # }
12437
12936
  # @!attribute [rw] ip_protocol
12438
- # The IP protocol name (for `tcp`, `udp`, and `icmp`) or number (see
12439
- # [Protocol Numbers][1]).
12937
+ # The IP protocol name (`tcp`, `udp`, `icmp`) or number (see [Protocol
12938
+ # Numbers][1]).
12440
12939
  #
12441
- # \[EC2-VPC only\] When you authorize or revoke security group rules,
12442
- # you can use `-1` to specify all.
12940
+ # \[EC2-VPC only\] Use `-1` to specify all protocols. When authorizing
12941
+ # security group rules, specifying `-1` or a protocol number other
12942
+ # than `tcp`, `udp`, `icmp`, or `58` (ICMPv6) allows traffic on all
12943
+ # ports, regardless of any port range you specify. For `tcp`, `udp`,
12944
+ # and `icmp`, you must specify a port range. For `58` (ICMPv6), you
12945
+ # can optionally specify a port range; if you don't, traffic for all
12946
+ # types and codes is allowed when authorizing rules.
12443
12947
  #
12444
12948
  #
12445
12949
  #
@@ -12447,14 +12951,15 @@ module Aws
12447
12951
  # @return [String]
12448
12952
  #
12449
12953
  # @!attribute [rw] from_port
12450
- # The start of port range for the TCP and UDP protocols, or an ICMP
12451
- # type number. A value of `-1` indicates all ICMP types.
12954
+ # The start of port range for the TCP and UDP protocols, or an
12955
+ # ICMP/ICMPv6 type number. A value of `-1` indicates all ICMP/ICMPv6
12956
+ # types.
12452
12957
  # @return [Integer]
12453
12958
  #
12454
12959
  # @!attribute [rw] to_port
12455
- # The end of port range for the TCP and UDP protocols, or an ICMP
12456
- # code. A value of `-1` indicates all ICMP codes for the specified
12457
- # ICMP type.
12960
+ # The end of port range for the TCP and UDP protocols, or an
12961
+ # ICMP/ICMPv6 code. A value of `-1` indicates all ICMP/ICMPv6 codes
12962
+ # for the specified ICMP type.
12458
12963
  # @return [Integer]
12459
12964
  #
12460
12965
  # @!attribute [rw] user_id_group_pairs
@@ -12462,9 +12967,13 @@ module Aws
12462
12967
  # @return [Array<Types::UserIdGroupPair>]
12463
12968
  #
12464
12969
  # @!attribute [rw] ip_ranges
12465
- # One or more IP ranges.
12970
+ # One or more IPv4 ranges.
12466
12971
  # @return [Array<Types::IpRange>]
12467
12972
  #
12973
+ # @!attribute [rw] ipv_6_ranges
12974
+ # \[EC2-VPC only\] One or more IPv6 ranges.
12975
+ # @return [Array<Types::Ipv6Range>]
12976
+ #
12468
12977
  # @!attribute [rw] prefix_list_ids
12469
12978
  # (Valid for AuthorizeSecurityGroupEgress, RevokeSecurityGroupEgress
12470
12979
  # and DescribeSecurityGroups only) One or more prefix list IDs for an
@@ -12478,11 +12987,12 @@ module Aws
12478
12987
  :to_port,
12479
12988
  :user_id_group_pairs,
12480
12989
  :ip_ranges,
12990
+ :ipv_6_ranges,
12481
12991
  :prefix_list_ids)
12482
12992
  include Aws::Structure
12483
12993
  end
12484
12994
 
12485
- # Describes an IP range.
12995
+ # Describes an IPv4 range.
12486
12996
  # @note When making an API call, pass IpRange
12487
12997
  # data as a hash:
12488
12998
  #
@@ -12490,14 +13000,41 @@ module Aws
12490
13000
  # cidr_ip: "String",
12491
13001
  # }
12492
13002
  # @!attribute [rw] cidr_ip
12493
- # The CIDR range. You can either specify a CIDR range or a source
12494
- # security group, not both.
13003
+ # The IPv4 CIDR range. You can either specify a CIDR range or a source
13004
+ # security group, not both. To specify a single IPv4 address, use the
13005
+ # /32 prefix.
12495
13006
  # @return [String]
12496
13007
  class IpRange < Struct.new(
12497
13008
  :cidr_ip)
12498
13009
  include Aws::Structure
12499
13010
  end
12500
13011
 
13012
+ # Describes an IPv6 CIDR block.
13013
+ # @!attribute [rw] ipv_6_cidr_block
13014
+ # The IPv6 CIDR block.
13015
+ # @return [String]
13016
+ class Ipv6CidrBlock < Struct.new(
13017
+ :ipv_6_cidr_block)
13018
+ include Aws::Structure
13019
+ end
13020
+
13021
+ # \[EC2-VPC only\] Describes an IPv6 range.
13022
+ # @note When making an API call, pass Ipv6Range
13023
+ # data as a hash:
13024
+ #
13025
+ # {
13026
+ # cidr_ipv_6: "String",
13027
+ # }
13028
+ # @!attribute [rw] cidr_ipv_6
13029
+ # The IPv6 CIDR range. You can either specify a CIDR range or a source
13030
+ # security group, not both. To specify a single IPv6 address, use the
13031
+ # /128 prefix.
13032
+ # @return [String]
13033
+ class Ipv6Range < Struct.new(
13034
+ :cidr_ipv_6)
13035
+ include Aws::Structure
13036
+ end
13037
+
12501
13038
  # Describes a key pair.
12502
13039
  # @!attribute [rw] key_name
12503
13040
  # The name of the key pair.
@@ -12643,7 +13180,9 @@ module Aws
12643
13180
  # @return [String]
12644
13181
  #
12645
13182
  # @!attribute [rw] network_interfaces
12646
- # One or more network interfaces.
13183
+ # One or more network interfaces. If you specify a network interface,
13184
+ # you must specify subnet IDs and security group IDs using the network
13185
+ # interface.
12647
13186
  # @return [Array<Types::InstanceNetworkInterfaceSpecification>]
12648
13187
  #
12649
13188
  # @!attribute [rw] iam_instance_profile
@@ -12662,7 +13201,7 @@ module Aws
12662
13201
  # @return [Boolean]
12663
13202
  #
12664
13203
  # @!attribute [rw] monitoring
12665
- # Describes the monitoring for the instance.
13204
+ # Describes the monitoring of an instance.
12666
13205
  # @return [Types::RunInstancesMonitoringEnabled]
12667
13206
  class LaunchSpecification < Struct.new(
12668
13207
  :image_id,
@@ -13174,7 +13713,7 @@ module Aws
13174
13713
  # availability_zone: "String",
13175
13714
  # platform: "String",
13176
13715
  # instance_count: 1,
13177
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
13716
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
13178
13717
  # scope: "Availability Zone", # accepts Availability Zone, Region
13179
13718
  # },
13180
13719
  # ],
@@ -13331,18 +13870,32 @@ module Aws
13331
13870
  # map_public_ip_on_launch: {
13332
13871
  # value: false,
13333
13872
  # },
13873
+ # assign_ipv_6_address_on_creation: {
13874
+ # value: false,
13875
+ # },
13334
13876
  # }
13335
13877
  # @!attribute [rw] subnet_id
13336
13878
  # The ID of the subnet.
13337
13879
  # @return [String]
13338
13880
  #
13339
13881
  # @!attribute [rw] map_public_ip_on_launch
13340
- # Specify `true` to indicate that instances launched into the
13341
- # specified subnet should be assigned public IP address.
13882
+ # Specify `true` to indicate that network interfaces created in the
13883
+ # specified subnet should be assigned a public IPv4 address. This
13884
+ # includes a network interface that's created when launching an
13885
+ # instance into the subnet (the instance therefore receives a public
13886
+ # IPv4 address).
13887
+ # @return [Types::AttributeBooleanValue]
13888
+ #
13889
+ # @!attribute [rw] assign_ipv_6_address_on_creation
13890
+ # Specify `true` to indicate that network interfaces created in the
13891
+ # specified subnet should be assigned an IPv6 address. This includes a
13892
+ # network interface that's created when launching an instance into
13893
+ # the subnet (the instance therefore receives an IPv6 address).
13342
13894
  # @return [Types::AttributeBooleanValue]
13343
13895
  class ModifySubnetAttributeRequest < Struct.new(
13344
13896
  :subnet_id,
13345
- :map_public_ip_on_launch)
13897
+ :map_public_ip_on_launch,
13898
+ :assign_ipv_6_address_on_creation)
13346
13899
  include Aws::Structure
13347
13900
  end
13348
13901
 
@@ -13568,16 +14121,17 @@ module Aws
13568
14121
 
13569
14122
  # Contains the output of MonitorInstances.
13570
14123
  # @!attribute [rw] instance_monitorings
13571
- # Monitoring information for one or more instances.
14124
+ # The monitoring information.
13572
14125
  # @return [Array<Types::InstanceMonitoring>]
13573
14126
  class MonitorInstancesResult < Struct.new(
13574
14127
  :instance_monitorings)
13575
14128
  include Aws::Structure
13576
14129
  end
13577
14130
 
13578
- # Describes the monitoring for the instance.
14131
+ # Describes the monitoring of an instance.
13579
14132
  # @!attribute [rw] state
13580
- # Indicates whether monitoring is enabled for the instance.
14133
+ # Indicates whether detailed monitoring is enabled. Otherwise, basic
14134
+ # monitoring is enabled.
13581
14135
  # @return [String]
13582
14136
  class Monitoring < Struct.new(
13583
14137
  :state)
@@ -13838,7 +14392,11 @@ module Aws
13838
14392
  # @return [Boolean]
13839
14393
  #
13840
14394
  # @!attribute [rw] cidr_block
13841
- # The network range to allow or deny, in CIDR notation.
14395
+ # The IPv4 network range to allow or deny, in CIDR notation.
14396
+ # @return [String]
14397
+ #
14398
+ # @!attribute [rw] ipv_6_cidr_block
14399
+ # The IPv6 network range to allow or deny, in CIDR notation.
13842
14400
  # @return [String]
13843
14401
  #
13844
14402
  # @!attribute [rw] icmp_type_code
@@ -13854,6 +14412,7 @@ module Aws
13854
14412
  :rule_action,
13855
14413
  :egress,
13856
14414
  :cidr_block,
14415
+ :ipv_6_cidr_block,
13857
14416
  :icmp_type_code,
13858
14417
  :port_range)
13859
14418
  include Aws::Structure
@@ -13902,7 +14461,7 @@ module Aws
13902
14461
  # @return [String]
13903
14462
  #
13904
14463
  # @!attribute [rw] private_ip_address
13905
- # The IP address of the network interface within the subnet.
14464
+ # The IPv4 address of the network interface within the subnet.
13906
14465
  # @return [String]
13907
14466
  #
13908
14467
  # @!attribute [rw] private_dns_name
@@ -13922,8 +14481,8 @@ module Aws
13922
14481
  # @return [Types::NetworkInterfaceAttachment]
13923
14482
  #
13924
14483
  # @!attribute [rw] association
13925
- # The association information for an Elastic IP associated with the
13926
- # network interface.
14484
+ # The association information for an Elastic IP address (IPv4)
14485
+ # associated with the network interface.
13927
14486
  # @return [Types::NetworkInterfaceAssociation]
13928
14487
  #
13929
14488
  # @!attribute [rw] tag_set
@@ -13931,9 +14490,13 @@ module Aws
13931
14490
  # @return [Array<Types::Tag>]
13932
14491
  #
13933
14492
  # @!attribute [rw] private_ip_addresses
13934
- # The private IP addresses associated with the network interface.
14493
+ # The private IPv4 addresses associated with the network interface.
13935
14494
  # @return [Array<Types::NetworkInterfacePrivateIpAddress>]
13936
14495
  #
14496
+ # @!attribute [rw] ipv_6_addresses
14497
+ # The IPv6 addresses associated with the network interface.
14498
+ # @return [Array<Types::NetworkInterfaceIpv6Address>]
14499
+ #
13937
14500
  # @!attribute [rw] interface_type
13938
14501
  # The type of interface.
13939
14502
  # @return [String]
@@ -13956,11 +14519,13 @@ module Aws
13956
14519
  :association,
13957
14520
  :tag_set,
13958
14521
  :private_ip_addresses,
14522
+ :ipv_6_addresses,
13959
14523
  :interface_type)
13960
14524
  include Aws::Structure
13961
14525
  end
13962
14526
 
13963
- # Describes association information for an Elastic IP address.
14527
+ # Describes association information for an Elastic IP address (IPv4
14528
+ # only).
13964
14529
  # @!attribute [rw] public_ip
13965
14530
  # The address of the Elastic IP address bound to the network
13966
14531
  # interface.
@@ -14053,9 +14618,18 @@ module Aws
14053
14618
  include Aws::Structure
14054
14619
  end
14055
14620
 
14056
- # Describes the private IP address of a network interface.
14621
+ # Describes an IPv6 address associated with a network interface.
14622
+ # @!attribute [rw] ipv_6_address
14623
+ # The IPv6 address.
14624
+ # @return [String]
14625
+ class NetworkInterfaceIpv6Address < Struct.new(
14626
+ :ipv_6_address)
14627
+ include Aws::Structure
14628
+ end
14629
+
14630
+ # Describes the private IPv4 address of a network interface.
14057
14631
  # @!attribute [rw] private_ip_address
14058
- # The private IP address.
14632
+ # The private IPv4 address.
14059
14633
  # @return [String]
14060
14634
  #
14061
14635
  # @!attribute [rw] private_dns_name
@@ -14063,13 +14637,13 @@ module Aws
14063
14637
  # @return [String]
14064
14638
  #
14065
14639
  # @!attribute [rw] primary
14066
- # Indicates whether this IP address is the primary private IP address
14067
- # of the network interface.
14640
+ # Indicates whether this IPv4 address is the primary private IPv4
14641
+ # address of the network interface.
14068
14642
  # @return [Boolean]
14069
14643
  #
14070
14644
  # @!attribute [rw] association
14071
- # The association information for an Elastic IP address associated
14072
- # with the network interface.
14645
+ # The association information for an Elastic IP address (IPv4)
14646
+ # associated with the network interface.
14073
14647
  # @return [Types::NetworkInterfaceAssociation]
14074
14648
  class NetworkInterfacePrivateIpAddress < Struct.new(
14075
14649
  :private_ip_address,
@@ -14153,7 +14727,7 @@ module Aws
14153
14727
  include Aws::Structure
14154
14728
  end
14155
14729
 
14156
- # Describes the placement for the instance.
14730
+ # Describes the placement of an instance.
14157
14731
  # @note When making an API call, pass Placement
14158
14732
  # data as a hash:
14159
14733
  #
@@ -14353,7 +14927,7 @@ module Aws
14353
14927
  include Aws::Structure
14354
14928
  end
14355
14929
 
14356
- # Describes a secondary private IP address for a network interface.
14930
+ # Describes a secondary private IPv4 address for a network interface.
14357
14931
  # @note When making an API call, pass PrivateIpAddressSpecification
14358
14932
  # data as a hash:
14359
14933
  #
@@ -14362,12 +14936,12 @@ module Aws
14362
14936
  # primary: false,
14363
14937
  # }
14364
14938
  # @!attribute [rw] private_ip_address
14365
- # The private IP addresses.
14939
+ # The private IPv4 addresses.
14366
14940
  # @return [String]
14367
14941
  #
14368
14942
  # @!attribute [rw] primary
14369
- # Indicates whether the private IP address is the primary private IP
14370
- # address. Only one IP address can be designated as primary.
14943
+ # Indicates whether the private IPv4 address is the primary private
14944
+ # IPv4 address. Only one IPv4 address can be designated as primary.
14371
14945
  # @return [Boolean]
14372
14946
  class PrivateIpAddressSpecification < Struct.new(
14373
14947
  :private_ip_address,
@@ -15047,7 +15621,8 @@ module Aws
15047
15621
  # protocol: "String", # required
15048
15622
  # rule_action: "allow", # required, accepts allow, deny
15049
15623
  # egress: false, # required
15050
- # cidr_block: "String", # required
15624
+ # cidr_block: "String",
15625
+ # ipv_6_cidr_block: "String",
15051
15626
  # icmp_type_code: {
15052
15627
  # type: 1,
15053
15628
  # code: 1,
@@ -15074,7 +15649,13 @@ module Aws
15074
15649
  #
15075
15650
  # @!attribute [rw] protocol
15076
15651
  # The IP protocol. You can specify `all` or `-1` to mean all
15077
- # protocols.
15652
+ # protocols. If you specify `all`, `-1`, or a protocol number other
15653
+ # than `tcp`, `udp`, or `icmp`, traffic on all ports is allowed,
15654
+ # regardless of any ports or ICMP types or codes you specify. If you
15655
+ # specify protocol `58` (ICMPv6) and specify an IPv4 CIDR block,
15656
+ # traffic for all ICMP types and codes allowed, regardless of any that
15657
+ # you specify. If you specify protocol `58` (ICMPv6) and specify an
15658
+ # IPv6 CIDR block, you must specify an ICMP type and code.
15078
15659
  # @return [String]
15079
15660
  #
15080
15661
  # @!attribute [rw] rule_action
@@ -15089,17 +15670,24 @@ module Aws
15089
15670
  # @return [Boolean]
15090
15671
  #
15091
15672
  # @!attribute [rw] cidr_block
15092
- # The network range to allow or deny, in CIDR notation.
15673
+ # The IPv4 network range to allow or deny, in CIDR notation (for
15674
+ # example `172.16.0.0/24`).
15675
+ # @return [String]
15676
+ #
15677
+ # @!attribute [rw] ipv_6_cidr_block
15678
+ # The IPv6 network range to allow or deny, in CIDR notation (for
15679
+ # example `2001:bd8:1234:1a00::/64`).
15093
15680
  # @return [String]
15094
15681
  #
15095
15682
  # @!attribute [rw] icmp_type_code
15096
- # ICMP protocol: The ICMP type and code. Required if specifying 1
15097
- # (ICMP) for the protocol.
15683
+ # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
15684
+ # specifying the ICMP (1) protocol, or protocol 58 (ICMPv6) with an
15685
+ # IPv6 CIDR block.
15098
15686
  # @return [Types::IcmpTypeCode]
15099
15687
  #
15100
15688
  # @!attribute [rw] port_range
15101
15689
  # TCP or UDP protocols: The range of ports the rule applies to.
15102
- # Required if specifying 6 (TCP) or 17 (UDP) for the protocol.
15690
+ # Required if specifying TCP (6) or UDP (17) for the protocol.
15103
15691
  # @return [Types::PortRange]
15104
15692
  class ReplaceNetworkAclEntryRequest < Struct.new(
15105
15693
  :dry_run,
@@ -15109,6 +15697,7 @@ module Aws
15109
15697
  :rule_action,
15110
15698
  :egress,
15111
15699
  :cidr_block,
15700
+ :ipv_6_cidr_block,
15112
15701
  :icmp_type_code,
15113
15702
  :port_range)
15114
15703
  include Aws::Structure
@@ -15121,8 +15710,10 @@ module Aws
15121
15710
  # {
15122
15711
  # dry_run: false,
15123
15712
  # route_table_id: "String", # required
15124
- # destination_cidr_block: "String", # required
15713
+ # destination_cidr_block: "String",
15125
15714
  # gateway_id: "String",
15715
+ # destination_ipv_6_cidr_block: "String",
15716
+ # egress_only_internet_gateway_id: "String",
15126
15717
  # instance_id: "String",
15127
15718
  # network_interface_id: "String",
15128
15719
  # vpc_peering_connection_id: "String",
@@ -15140,14 +15731,25 @@ module Aws
15140
15731
  # @return [String]
15141
15732
  #
15142
15733
  # @!attribute [rw] destination_cidr_block
15143
- # The CIDR address block used for the destination match. The value you
15144
- # provide must match the CIDR of an existing route in the table.
15734
+ # The IPv4 CIDR address block used for the destination match. The
15735
+ # value you provide must match the CIDR of an existing route in the
15736
+ # table.
15145
15737
  # @return [String]
15146
15738
  #
15147
15739
  # @!attribute [rw] gateway_id
15148
15740
  # The ID of an Internet gateway or virtual private gateway.
15149
15741
  # @return [String]
15150
15742
  #
15743
+ # @!attribute [rw] destination_ipv_6_cidr_block
15744
+ # The IPv6 CIDR address block used for the destination match. The
15745
+ # value you provide must match the CIDR of an existing route in the
15746
+ # table.
15747
+ # @return [String]
15748
+ #
15749
+ # @!attribute [rw] egress_only_internet_gateway_id
15750
+ # \[IPv6 traffic only\] The ID of an egress-only Internet gateway.
15751
+ # @return [String]
15752
+ #
15151
15753
  # @!attribute [rw] instance_id
15152
15754
  # The ID of a NAT instance in your VPC.
15153
15755
  # @return [String]
@@ -15161,13 +15763,15 @@ module Aws
15161
15763
  # @return [String]
15162
15764
  #
15163
15765
  # @!attribute [rw] nat_gateway_id
15164
- # The ID of a NAT gateway.
15766
+ # \[IPv4 traffic only\] The ID of a NAT gateway.
15165
15767
  # @return [String]
15166
15768
  class ReplaceRouteRequest < Struct.new(
15167
15769
  :dry_run,
15168
15770
  :route_table_id,
15169
15771
  :destination_cidr_block,
15170
15772
  :gateway_id,
15773
+ :destination_ipv_6_cidr_block,
15774
+ :egress_only_internet_gateway_id,
15171
15775
  :instance_id,
15172
15776
  :network_interface_id,
15173
15777
  :vpc_peering_connection_id,
@@ -15320,7 +15924,7 @@ module Aws
15320
15924
  # ],
15321
15925
  # user_data: "String",
15322
15926
  # addressing_type: "String",
15323
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
15927
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
15324
15928
  # placement: {
15325
15929
  # availability_zone: "String",
15326
15930
  # group_name: "String",
@@ -15363,6 +15967,12 @@ module Aws
15363
15967
  # ],
15364
15968
  # secondary_private_ip_address_count: 1,
15365
15969
  # associate_public_ip_address: false,
15970
+ # ipv_6_addresses: [
15971
+ # {
15972
+ # ipv_6_address: "String",
15973
+ # },
15974
+ # ],
15975
+ # ipv_6_address_count: 1,
15366
15976
  # },
15367
15977
  # ],
15368
15978
  # iam_instance_profile: {
@@ -15426,7 +16036,7 @@ module Aws
15426
16036
  # security_groups: ["String"],
15427
16037
  # user_data: "String",
15428
16038
  # addressing_type: "String",
15429
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
16039
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
15430
16040
  # placement: {
15431
16041
  # availability_zone: "String",
15432
16042
  # group_name: "String",
@@ -15466,6 +16076,12 @@ module Aws
15466
16076
  # ],
15467
16077
  # secondary_private_ip_address_count: 1,
15468
16078
  # associate_public_ip_address: false,
16079
+ # ipv_6_addresses: [
16080
+ # {
16081
+ # ipv_6_address: "String",
16082
+ # },
16083
+ # ],
16084
+ # ipv_6_address_count: 1,
15469
16085
  # },
15470
16086
  # ],
15471
16087
  # iam_instance_profile: {
@@ -15618,7 +16234,7 @@ module Aws
15618
16234
  # security_groups: ["String"],
15619
16235
  # user_data: "String",
15620
16236
  # addressing_type: "String",
15621
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
16237
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
15622
16238
  # placement: {
15623
16239
  # availability_zone: "String",
15624
16240
  # group_name: "String",
@@ -15658,6 +16274,12 @@ module Aws
15658
16274
  # ],
15659
16275
  # secondary_private_ip_address_count: 1,
15660
16276
  # associate_public_ip_address: false,
16277
+ # ipv_6_addresses: [
16278
+ # {
16279
+ # ipv_6_address: "String",
16280
+ # },
16281
+ # ],
16282
+ # ipv_6_address_count: 1,
15661
16283
  # },
15662
16284
  # ],
15663
16285
  # iam_instance_profile: {
@@ -15720,7 +16342,9 @@ module Aws
15720
16342
  # @return [String]
15721
16343
  #
15722
16344
  # @!attribute [rw] network_interfaces
15723
- # One or more network interfaces.
16345
+ # One or more network interfaces. If you specify a network interface,
16346
+ # you must specify subnet IDs and security group IDs using the network
16347
+ # interface.
15724
16348
  # @return [Array<Types::InstanceNetworkInterfaceSpecification>]
15725
16349
  #
15726
16350
  # @!attribute [rw] iam_instance_profile
@@ -15739,7 +16363,7 @@ module Aws
15739
16363
  # @return [Boolean]
15740
16364
  #
15741
16365
  # @!attribute [rw] monitoring
15742
- # Describes the monitoring for the instance.
16366
+ # Describes the monitoring of an instance.
15743
16367
  # @return [Types::RunInstancesMonitoringEnabled]
15744
16368
  #
15745
16369
  # @!attribute [rw] security_group_ids
@@ -15957,7 +16581,7 @@ module Aws
15957
16581
  # availability_zone: "String",
15958
16582
  # platform: "String",
15959
16583
  # instance_count: 1,
15960
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
16584
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
15961
16585
  # scope: "Availability Zone", # accepts Availability Zone, Region
15962
16586
  # }
15963
16587
  # @!attribute [rw] availability_zone
@@ -15978,7 +16602,8 @@ module Aws
15978
16602
  # @return [String]
15979
16603
  #
15980
16604
  # @!attribute [rw] scope
15981
- # Whether the Reserved Instance is `standard` or `convertible`.
16605
+ # Whether the Reserved Instance is applied to instances in a region or
16606
+ # instances in a specific Availability Zone.
15982
16607
  # @return [String]
15983
16608
  class ReservedInstancesConfiguration < Struct.new(
15984
16609
  :availability_zone,
@@ -16418,6 +17043,11 @@ module Aws
16418
17043
  # cidr_ip: "String",
16419
17044
  # },
16420
17045
  # ],
17046
+ # ipv_6_ranges: [
17047
+ # {
17048
+ # cidr_ipv_6: "String",
17049
+ # },
17050
+ # ],
16421
17051
  # prefix_list_ids: [
16422
17052
  # {
16423
17053
  # prefix_list_id: "String",
@@ -16522,6 +17152,11 @@ module Aws
16522
17152
  # cidr_ip: "String",
16523
17153
  # },
16524
17154
  # ],
17155
+ # ipv_6_ranges: [
17156
+ # {
17157
+ # cidr_ipv_6: "String",
17158
+ # },
17159
+ # ],
16525
17160
  # prefix_list_ids: [
16526
17161
  # {
16527
17162
  # prefix_list_id: "String",
@@ -16611,7 +17246,7 @@ module Aws
16611
17246
 
16612
17247
  # Describes a route in a route table.
16613
17248
  # @!attribute [rw] destination_cidr_block
16614
- # The CIDR block used for the destination match.
17249
+ # The IPv4 CIDR block used for the destination match.
16615
17250
  # @return [String]
16616
17251
  #
16617
17252
  # @!attribute [rw] destination_prefix_list_id
@@ -16660,6 +17295,14 @@ module Aws
16660
17295
  # * `EnableVgwRoutePropagation` - The route was propagated by route
16661
17296
  # propagation.
16662
17297
  # @return [String]
17298
+ #
17299
+ # @!attribute [rw] destination_ipv_6_cidr_block
17300
+ # The IPv6 CIDR block used for the destination match.
17301
+ # @return [String]
17302
+ #
17303
+ # @!attribute [rw] egress_only_internet_gateway_id
17304
+ # The ID of the egress-only Internet gateway.
17305
+ # @return [String]
16663
17306
  class Route < Struct.new(
16664
17307
  :destination_cidr_block,
16665
17308
  :destination_prefix_list_id,
@@ -16670,7 +17313,9 @@ module Aws
16670
17313
  :vpc_peering_connection_id,
16671
17314
  :nat_gateway_id,
16672
17315
  :state,
16673
- :origin)
17316
+ :origin,
17317
+ :destination_ipv_6_cidr_block,
17318
+ :egress_only_internet_gateway_id)
16674
17319
  include Aws::Structure
16675
17320
  end
16676
17321
 
@@ -16733,7 +17378,7 @@ module Aws
16733
17378
  include Aws::Structure
16734
17379
  end
16735
17380
 
16736
- # Describes the monitoring for the instance.
17381
+ # Describes the monitoring of an instance.
16737
17382
  # @note When making an API call, pass RunInstancesMonitoringEnabled
16738
17383
  # data as a hash:
16739
17384
  #
@@ -16741,7 +17386,8 @@ module Aws
16741
17386
  # enabled: false, # required
16742
17387
  # }
16743
17388
  # @!attribute [rw] enabled
16744
- # Indicates whether monitoring is enabled for the instance.
17389
+ # Indicates whether detailed monitoring is enabled. Otherwise, basic
17390
+ # monitoring is enabled.
16745
17391
  # @return [Boolean]
16746
17392
  class RunInstancesMonitoringEnabled < Struct.new(
16747
17393
  :enabled)
@@ -16761,7 +17407,7 @@ module Aws
16761
17407
  # security_groups: ["String"],
16762
17408
  # security_group_ids: ["String"],
16763
17409
  # user_data: "String",
16764
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
17410
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
16765
17411
  # placement: {
16766
17412
  # availability_zone: "String",
16767
17413
  # group_name: "String",
@@ -16793,6 +17439,12 @@ module Aws
16793
17439
  # disable_api_termination: false,
16794
17440
  # instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
16795
17441
  # private_ip_address: "String",
17442
+ # ipv_6_addresses: [
17443
+ # {
17444
+ # ipv_6_address: "String",
17445
+ # },
17446
+ # ],
17447
+ # ipv_6_address_count: 1,
16796
17448
  # client_token: "String",
16797
17449
  # additional_info: "String",
16798
17450
  # network_interfaces: [
@@ -16812,6 +17464,12 @@ module Aws
16812
17464
  # ],
16813
17465
  # secondary_private_ip_address_count: 1,
16814
17466
  # associate_public_ip_address: false,
17467
+ # ipv_6_addresses: [
17468
+ # {
17469
+ # ipv_6_address: "String",
17470
+ # },
17471
+ # ],
17472
+ # ipv_6_address_count: 1,
16815
17473
  # },
16816
17474
  # ],
16817
17475
  # iam_instance_profile: {
@@ -16960,9 +17618,7 @@ module Aws
16960
17618
  # @!attribute [rw] disable_api_termination
16961
17619
  # If you set this parameter to `true`, you can't terminate the
16962
17620
  # instance using the Amazon EC2 console, CLI, or API; otherwise, you
16963
- # can. If you set this parameter to `true` and then later want to be
16964
- # able to terminate the instance, you must first change the value of
16965
- # the `disableApiTermination` attribute to `false` using
17621
+ # can. To change this attribute to `false` after launch, use
16966
17622
  # ModifyInstanceAttribute. Alternatively, if you set
16967
17623
  # `InstanceInitiatedShutdownBehavior` to `terminate`, you can
16968
17624
  # terminate the instance by running the shutdown command from the
@@ -16980,20 +17636,32 @@ module Aws
16980
17636
  # @return [String]
16981
17637
  #
16982
17638
  # @!attribute [rw] private_ip_address
16983
- # \[EC2-VPC\] The primary IP address. You must specify a value from
16984
- # the IP address range of the subnet.
16985
- #
16986
- # Only one private IP address can be designated as primary. Therefore,
16987
- # you can't specify this parameter if `PrivateIpAddresses.n.Primary`
16988
- # is set to `true` and `PrivateIpAddresses.n.PrivateIpAddress` is set
16989
- # to an IP address.
16990
- #
16991
- # You cannot specify this option if you're launching more than one
16992
- # instance in the request.
16993
- #
16994
- # Default: We select an IP address from the IP address range of the
16995
- # subnet.
16996
- # @return [String]
17639
+ # \[EC2-VPC\] The primary IPv4 address. You must specify a value from
17640
+ # the IPv4 address range of the subnet.
17641
+ #
17642
+ # Only one private IP address can be designated as primary. You can't
17643
+ # specify this option if you've specified the option to designate a
17644
+ # private IP address as the primary IP address in a network interface
17645
+ # specification. You cannot specify this option if you're launching
17646
+ # more than one instance in the request.
17647
+ # @return [String]
17648
+ #
17649
+ # @!attribute [rw] ipv_6_addresses
17650
+ # \[EC2-VPC\] Specify one or more IPv6 addresses from the range of the
17651
+ # subnet to associate with the primary network interface. You cannot
17652
+ # specify this option and the option to assign a number of IPv6
17653
+ # addresses in the same request. You cannot specify this option if
17654
+ # you've specified a minimum number of instances to launch.
17655
+ # @return [Array<Types::InstanceIpv6Address>]
17656
+ #
17657
+ # @!attribute [rw] ipv_6_address_count
17658
+ # \[EC2-VPC\] A number of IPv6 addresses to associate with the primary
17659
+ # network interface. Amazon EC2 chooses the IPv6 addresses from the
17660
+ # range of your subnet. You cannot specify this option and the option
17661
+ # to assign specific IPv6 addresses in the same request. You can
17662
+ # specify this option if you've specified a minimum number of
17663
+ # instances to launch.
17664
+ # @return [Integer]
16997
17665
  #
16998
17666
  # @!attribute [rw] client_token
16999
17667
  # Unique, case-sensitive identifier you provide to ensure the
@@ -17048,6 +17716,8 @@ module Aws
17048
17716
  :disable_api_termination,
17049
17717
  :instance_initiated_shutdown_behavior,
17050
17718
  :private_ip_address,
17719
+ :ipv_6_addresses,
17720
+ :ipv_6_address_count,
17051
17721
  :client_token,
17052
17722
  :additional_info,
17053
17723
  :network_interfaces,
@@ -17113,6 +17783,12 @@ module Aws
17113
17783
  # associate_public_ip_address: false,
17114
17784
  # groups: ["String"],
17115
17785
  # delete_on_termination: false,
17786
+ # ipv_6_addresses: [
17787
+ # {
17788
+ # ipv_6_address: "Ipv6Address",
17789
+ # },
17790
+ # ],
17791
+ # ipv_6_address_count: 1,
17116
17792
  # },
17117
17793
  # ],
17118
17794
  # iam_instance_profile: {
@@ -17600,6 +18276,21 @@ module Aws
17600
18276
  include Aws::Structure
17601
18277
  end
17602
18278
 
18279
+ # Describes an IPv6 address.
18280
+ # @note When making an API call, pass ScheduledInstancesIpv6Address
18281
+ # data as a hash:
18282
+ #
18283
+ # {
18284
+ # ipv_6_address: "Ipv6Address",
18285
+ # }
18286
+ # @!attribute [rw] ipv_6_address
18287
+ # The IPv6 address.
18288
+ # @return [String]
18289
+ class ScheduledInstancesIpv6Address < Struct.new(
18290
+ :ipv_6_address)
18291
+ include Aws::Structure
18292
+ end
18293
+
17603
18294
  # Describes the launch specification for a Scheduled Instance.
17604
18295
  #
17605
18296
  # If you are launching the Scheduled Instance in EC2-VPC, you must
@@ -17656,6 +18347,12 @@ module Aws
17656
18347
  # associate_public_ip_address: false,
17657
18348
  # groups: ["String"],
17658
18349
  # delete_on_termination: false,
18350
+ # ipv_6_addresses: [
18351
+ # {
18352
+ # ipv_6_address: "Ipv6Address",
18353
+ # },
18354
+ # ],
18355
+ # ipv_6_address_count: 1,
17659
18356
  # },
17660
18357
  # ],
17661
18358
  # iam_instance_profile: {
@@ -17779,6 +18476,12 @@ module Aws
17779
18476
  # associate_public_ip_address: false,
17780
18477
  # groups: ["String"],
17781
18478
  # delete_on_termination: false,
18479
+ # ipv_6_addresses: [
18480
+ # {
18481
+ # ipv_6_address: "Ipv6Address",
18482
+ # },
18483
+ # ],
18484
+ # ipv_6_address_count: 1,
17782
18485
  # }
17783
18486
  # @!attribute [rw] network_interface_id
17784
18487
  # The ID of the network interface.
@@ -17797,20 +18500,20 @@ module Aws
17797
18500
  # @return [String]
17798
18501
  #
17799
18502
  # @!attribute [rw] private_ip_address
17800
- # The IP address of the network interface within the subnet.
18503
+ # The IPv4 address of the network interface within the subnet.
17801
18504
  # @return [String]
17802
18505
  #
17803
18506
  # @!attribute [rw] private_ip_address_configs
17804
- # The private IP addresses.
18507
+ # The private IPv4 addresses.
17805
18508
  # @return [Array<Types::ScheduledInstancesPrivateIpAddressConfig>]
17806
18509
  #
17807
18510
  # @!attribute [rw] secondary_private_ip_address_count
17808
- # The number of secondary private IP addresses.
18511
+ # The number of secondary private IPv4 addresses.
17809
18512
  # @return [Integer]
17810
18513
  #
17811
18514
  # @!attribute [rw] associate_public_ip_address
17812
- # Indicates whether to assign a public IP address to instances
17813
- # launched in a VPC. The public IP address can only be assigned to a
18515
+ # Indicates whether to assign a public IPv4 address to instances
18516
+ # launched in a VPC. The public IPv4 address can only be assigned to a
17814
18517
  # network interface for eth0, and can only be assigned to a new
17815
18518
  # network interface, not an existing one. You cannot specify more than
17816
18519
  # one network interface in the request. If launching into a default
@@ -17825,6 +18528,15 @@ module Aws
17825
18528
  # Indicates whether to delete the interface when the instance is
17826
18529
  # terminated.
17827
18530
  # @return [Boolean]
18531
+ #
18532
+ # @!attribute [rw] ipv_6_addresses
18533
+ # One or more specific IPv6 addresses from the subnet range.
18534
+ # @return [Array<Types::ScheduledInstancesIpv6Address>]
18535
+ #
18536
+ # @!attribute [rw] ipv_6_address_count
18537
+ # The number of IPv6 addresses to assign to the network interface. The
18538
+ # IPv6 addresses are automatically selected from the subnet range.
18539
+ # @return [Integer]
17828
18540
  class ScheduledInstancesNetworkInterface < Struct.new(
17829
18541
  :network_interface_id,
17830
18542
  :device_index,
@@ -17835,7 +18547,9 @@ module Aws
17835
18547
  :secondary_private_ip_address_count,
17836
18548
  :associate_public_ip_address,
17837
18549
  :groups,
17838
- :delete_on_termination)
18550
+ :delete_on_termination,
18551
+ :ipv_6_addresses,
18552
+ :ipv_6_address_count)
17839
18553
  include Aws::Structure
17840
18554
  end
17841
18555
 
@@ -17860,7 +18574,7 @@ module Aws
17860
18574
  include Aws::Structure
17861
18575
  end
17862
18576
 
17863
- # Describes a private IP address for a Scheduled Instance.
18577
+ # Describes a private IPv4 address for a Scheduled Instance.
17864
18578
  # @note When making an API call, pass ScheduledInstancesPrivateIpAddressConfig
17865
18579
  # data as a hash:
17866
18580
  #
@@ -17869,12 +18583,12 @@ module Aws
17869
18583
  # primary: false,
17870
18584
  # }
17871
18585
  # @!attribute [rw] private_ip_address
17872
- # The IP address.
18586
+ # The IPv4 address.
17873
18587
  # @return [String]
17874
18588
  #
17875
18589
  # @!attribute [rw] primary
17876
- # Indicates whether this is a primary IP address. Otherwise, this is a
17877
- # secondary IP address.
18590
+ # Indicates whether this is a primary IPv4 address. Otherwise, this is
18591
+ # a secondary IPv4 address.
17878
18592
  # @return [Boolean]
17879
18593
  class ScheduledInstancesPrivateIpAddressConfig < Struct.new(
17880
18594
  :private_ip_address,
@@ -18276,7 +18990,7 @@ module Aws
18276
18990
  # ],
18277
18991
  # user_data: "String",
18278
18992
  # addressing_type: "String",
18279
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
18993
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
18280
18994
  # placement: {
18281
18995
  # availability_zone: "String",
18282
18996
  # group_name: "String",
@@ -18319,6 +19033,12 @@ module Aws
18319
19033
  # ],
18320
19034
  # secondary_private_ip_address_count: 1,
18321
19035
  # associate_public_ip_address: false,
19036
+ # ipv_6_addresses: [
19037
+ # {
19038
+ # ipv_6_address: "String",
19039
+ # },
19040
+ # ],
19041
+ # ipv_6_address_count: 1,
18322
19042
  # },
18323
19043
  # ],
18324
19044
  # iam_instance_profile: {
@@ -18356,7 +19076,8 @@ module Aws
18356
19076
  # @return [String]
18357
19077
  #
18358
19078
  # @!attribute [rw] instance_type
18359
- # The instance type.
19079
+ # The instance type. Note that T2 and HS1 instance types are not
19080
+ # supported.
18360
19081
  # @return [String]
18361
19082
  #
18362
19083
  # @!attribute [rw] placement
@@ -18386,7 +19107,9 @@ module Aws
18386
19107
  # @return [String]
18387
19108
  #
18388
19109
  # @!attribute [rw] network_interfaces
18389
- # One or more network interfaces.
19110
+ # One or more network interfaces. If you specify a network interface,
19111
+ # you must specify subnet IDs and security group IDs using the network
19112
+ # interface.
18390
19113
  # @return [Array<Types::InstanceNetworkInterfaceSpecification>]
18391
19114
  #
18392
19115
  # @!attribute [rw] iam_instance_profile
@@ -18517,7 +19240,7 @@ module Aws
18517
19240
  # ],
18518
19241
  # user_data: "String",
18519
19242
  # addressing_type: "String",
18520
- # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge
19243
+ # instance_type: "t1.micro", # accepts t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, cr1.8xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, x1.16xlarge, x1.32xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, hi1.4xlarge, hs1.8xlarge, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, cc1.4xlarge, cc2.8xlarge, g2.2xlarge, g2.8xlarge, cg1.4xlarge, p2.xlarge, p2.8xlarge, p2.16xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, f1.2xlarge, f1.16xlarge
18521
19244
  # placement: {
18522
19245
  # availability_zone: "String",
18523
19246
  # group_name: "String",
@@ -18560,6 +19283,12 @@ module Aws
18560
19283
  # ],
18561
19284
  # secondary_private_ip_address_count: 1,
18562
19285
  # associate_public_ip_address: false,
19286
+ # ipv_6_addresses: [
19287
+ # {
19288
+ # ipv_6_address: "String",
19289
+ # },
19290
+ # ],
19291
+ # ipv_6_address_count: 1,
18563
19292
  # },
18564
19293
  # ],
18565
19294
  # iam_instance_profile: {
@@ -18851,7 +19580,8 @@ module Aws
18851
19580
  # Describes the maximum hourly price (bid) for any Spot instance
18852
19581
  # launched to fulfill the request.
18853
19582
  # @!attribute [rw] instance_type
18854
- # The instance type.
19583
+ # The instance type. Note that T2 and HS1 instance types are not
19584
+ # supported.
18855
19585
  # @return [String]
18856
19586
  #
18857
19587
  # @!attribute [rw] product_description
@@ -19117,12 +19847,23 @@ module Aws
19117
19847
  # @return [String]
19118
19848
  #
19119
19849
  # @!attribute [rw] cidr_block
19120
- # The CIDR block assigned to the subnet.
19850
+ # The IPv4 CIDR block assigned to the subnet.
19121
19851
  # @return [String]
19122
19852
  #
19853
+ # @!attribute [rw] ipv_6_cidr_block_association_set
19854
+ # Information about the IPv6 CIDR blocks associated with the subnet.
19855
+ # @return [Array<Types::SubnetIpv6CidrBlockAssociation>]
19856
+ #
19857
+ # @!attribute [rw] assign_ipv_6_address_on_creation
19858
+ # Indicates whether a network interface created in this subnet
19859
+ # (including a network interface created by RunInstances) receives an
19860
+ # IPv6 address.
19861
+ # @return [Boolean]
19862
+ #
19123
19863
  # @!attribute [rw] available_ip_address_count
19124
- # The number of unused IP addresses in the subnet. Note that the IP
19125
- # addresses for any stopped instances are considered unavailable.
19864
+ # The number of unused private IPv4 addresses in the subnet. Note that
19865
+ # the IPv4 addresses for any stopped instances are considered
19866
+ # unavailable.
19126
19867
  # @return [Integer]
19127
19868
  #
19128
19869
  # @!attribute [rw] availability_zone
@@ -19136,7 +19877,7 @@ module Aws
19136
19877
  #
19137
19878
  # @!attribute [rw] map_public_ip_on_launch
19138
19879
  # Indicates whether instances launched in this subnet receive a public
19139
- # IP address.
19880
+ # IPv4 address.
19140
19881
  # @return [Boolean]
19141
19882
  #
19142
19883
  # @!attribute [rw] tags
@@ -19147,6 +19888,8 @@ module Aws
19147
19888
  :state,
19148
19889
  :vpc_id,
19149
19890
  :cidr_block,
19891
+ :ipv_6_cidr_block_association_set,
19892
+ :assign_ipv_6_address_on_creation,
19150
19893
  :available_ip_address_count,
19151
19894
  :availability_zone,
19152
19895
  :default_for_az,
@@ -19155,6 +19898,39 @@ module Aws
19155
19898
  include Aws::Structure
19156
19899
  end
19157
19900
 
19901
+ # Describes the state of a CIDR block.
19902
+ # @!attribute [rw] state
19903
+ # The state of a CIDR block.
19904
+ # @return [String]
19905
+ #
19906
+ # @!attribute [rw] status_message
19907
+ # A message about the status of the CIDR block, if applicable.
19908
+ # @return [String]
19909
+ class SubnetCidrBlockState < Struct.new(
19910
+ :state,
19911
+ :status_message)
19912
+ include Aws::Structure
19913
+ end
19914
+
19915
+ # Describes an IPv6 CIDR block associated with a subnet.
19916
+ # @!attribute [rw] ipv_6_cidr_block
19917
+ # The IPv6 CIDR block.
19918
+ # @return [String]
19919
+ #
19920
+ # @!attribute [rw] ipv_6_cidr_block_state
19921
+ # Information about the state of the CIDR block.
19922
+ # @return [Types::SubnetCidrBlockState]
19923
+ #
19924
+ # @!attribute [rw] association_id
19925
+ # The association ID for the CIDR block.
19926
+ # @return [String]
19927
+ class SubnetIpv6CidrBlockAssociation < Struct.new(
19928
+ :ipv_6_cidr_block,
19929
+ :ipv_6_cidr_block_state,
19930
+ :association_id)
19931
+ include Aws::Structure
19932
+ end
19933
+
19158
19934
  # Describes a tag.
19159
19935
  # @note When making an API call, pass Tag
19160
19936
  # data as a hash:
@@ -19231,9 +20007,7 @@ module Aws
19231
20007
  # instance_count: 1,
19232
20008
  # }
19233
20009
  # @!attribute [rw] offering_id
19234
- # The Convertible Reserved Instance offering ID. If this isn't
19235
- # included in the request, the response lists your current Convertible
19236
- # Reserved Instance/s and their value/s.
20010
+ # The Convertible Reserved Instance offering ID.
19237
20011
  # @return [String]
19238
20012
  #
19239
20013
  # @!attribute [rw] instance_count
@@ -19300,6 +20074,40 @@ module Aws
19300
20074
  include Aws::Structure
19301
20075
  end
19302
20076
 
20077
+ # @note When making an API call, pass UnassignIpv6AddressesRequest
20078
+ # data as a hash:
20079
+ #
20080
+ # {
20081
+ # network_interface_id: "String", # required
20082
+ # ipv_6_addresses: ["String"], # required
20083
+ # }
20084
+ # @!attribute [rw] network_interface_id
20085
+ # The ID of the network interface.
20086
+ # @return [String]
20087
+ #
20088
+ # @!attribute [rw] ipv_6_addresses
20089
+ # The IPv6 addresses to unassign from the network interface.
20090
+ # @return [Array<String>]
20091
+ class UnassignIpv6AddressesRequest < Struct.new(
20092
+ :network_interface_id,
20093
+ :ipv_6_addresses)
20094
+ include Aws::Structure
20095
+ end
20096
+
20097
+ # @!attribute [rw] network_interface_id
20098
+ # The ID of the network interface.
20099
+ # @return [String]
20100
+ #
20101
+ # @!attribute [rw] unassigned_ipv_6_addresses
20102
+ # The IPv6 addresses that have been unassigned from the network
20103
+ # interface.
20104
+ # @return [Array<String>]
20105
+ class UnassignIpv6AddressesResult < Struct.new(
20106
+ :network_interface_id,
20107
+ :unassigned_ipv_6_addresses)
20108
+ include Aws::Structure
20109
+ end
20110
+
19303
20111
  # Contains the parameters for UnassignPrivateIpAddresses.
19304
20112
  # @note When making an API call, pass UnassignPrivateIpAddressesRequest
19305
20113
  # data as a hash:
@@ -19349,7 +20157,7 @@ module Aws
19349
20157
 
19350
20158
  # Contains the output of UnmonitorInstances.
19351
20159
  # @!attribute [rw] instance_monitorings
19352
- # Monitoring information for one or more instances.
20160
+ # The monitoring information.
19353
20161
  # @return [Array<Types::InstanceMonitoring>]
19354
20162
  class UnmonitorInstancesResult < Struct.new(
19355
20163
  :instance_monitorings)
@@ -19358,16 +20166,16 @@ module Aws
19358
20166
 
19359
20167
  # Information about items that were not successfully processed in a
19360
20168
  # batch call.
19361
- # @!attribute [rw] error
19362
- # Information about the error.
19363
- # @return [Types::UnsuccessfulItemError]
19364
- #
19365
20169
  # @!attribute [rw] resource_id
19366
20170
  # The ID of the resource.
19367
20171
  # @return [String]
20172
+ #
20173
+ # @!attribute [rw] error
20174
+ # Information about the error.
20175
+ # @return [Types::UnsuccessfulItemError]
19368
20176
  class UnsuccessfulItem < Struct.new(
19369
- :error,
19370
- :resource_id)
20177
+ :resource_id,
20178
+ :error)
19371
20179
  include Aws::Structure
19372
20180
  end
19373
20181
 
@@ -19778,7 +20586,7 @@ module Aws
19778
20586
  # @return [String]
19779
20587
  #
19780
20588
  # @!attribute [rw] cidr_block
19781
- # The CIDR block for the VPC.
20589
+ # The IPv4 CIDR block for the VPC.
19782
20590
  # @return [String]
19783
20591
  #
19784
20592
  # @!attribute [rw] dhcp_options_id
@@ -19797,6 +20605,10 @@ module Aws
19797
20605
  # @!attribute [rw] is_default
19798
20606
  # Indicates whether the VPC is the default VPC.
19799
20607
  # @return [Boolean]
20608
+ #
20609
+ # @!attribute [rw] ipv_6_cidr_block_association_set
20610
+ # Information about the IPv6 CIDR blocks associated with the VPC.
20611
+ # @return [Array<Types::VpcIpv6CidrBlockAssociation>]
19800
20612
  class Vpc < Struct.new(
19801
20613
  :vpc_id,
19802
20614
  :state,
@@ -19804,7 +20616,8 @@ module Aws
19804
20616
  :dhcp_options_id,
19805
20617
  :tags,
19806
20618
  :instance_tenancy,
19807
- :is_default)
20619
+ :is_default,
20620
+ :ipv_6_cidr_block_association_set)
19808
20621
  include Aws::Structure
19809
20622
  end
19810
20623
 
@@ -19822,6 +20635,20 @@ module Aws
19822
20635
  include Aws::Structure
19823
20636
  end
19824
20637
 
20638
+ # Describes the state of a CIDR block.
20639
+ # @!attribute [rw] state
20640
+ # The state of the CIDR block.
20641
+ # @return [String]
20642
+ #
20643
+ # @!attribute [rw] status_message
20644
+ # A message about the status of the CIDR block, if applicable.
20645
+ # @return [String]
20646
+ class VpcCidrBlockState < Struct.new(
20647
+ :state,
20648
+ :status_message)
20649
+ include Aws::Structure
20650
+ end
20651
+
19825
20652
  # Describes whether a VPC is enabled for ClassicLink.
19826
20653
  # @!attribute [rw] vpc_id
19827
20654
  # The ID of the VPC.
@@ -19880,6 +20707,25 @@ module Aws
19880
20707
  include Aws::Structure
19881
20708
  end
19882
20709
 
20710
+ # Describes an IPv6 CIDR block associated with a VPC.
20711
+ # @!attribute [rw] ipv_6_cidr_block
20712
+ # The IPv6 CIDR block.
20713
+ # @return [String]
20714
+ #
20715
+ # @!attribute [rw] ipv_6_cidr_block_state
20716
+ # Information about the state of the CIDR block.
20717
+ # @return [Types::VpcCidrBlockState]
20718
+ #
20719
+ # @!attribute [rw] association_id
20720
+ # The association ID for the IPv6 CIDR block.
20721
+ # @return [String]
20722
+ class VpcIpv6CidrBlockAssociation < Struct.new(
20723
+ :ipv_6_cidr_block,
20724
+ :ipv_6_cidr_block_state,
20725
+ :association_id)
20726
+ include Aws::Structure
20727
+ end
20728
+
19883
20729
  # Describes a VPC peering connection.
19884
20730
  # @!attribute [rw] accepter_vpc_info
19885
20731
  # Information about the accepter VPC. CIDR block information is not
@@ -19956,7 +20802,7 @@ module Aws
19956
20802
 
19957
20803
  # Describes a VPC in a VPC peering connection.
19958
20804
  # @!attribute [rw] cidr_block
19959
- # The CIDR block for the VPC.
20805
+ # The IPv4 CIDR block for the VPC.
19960
20806
  # @return [String]
19961
20807
  #
19962
20808
  # @!attribute [rw] owner_id
@@ -19967,6 +20813,10 @@ module Aws
19967
20813
  # The ID of the VPC.
19968
20814
  # @return [String]
19969
20815
  #
20816
+ # @!attribute [rw] ipv_6_cidr_block_set
20817
+ # The IPv6 CIDR block for the VPC.
20818
+ # @return [Array<Types::Ipv6CidrBlock>]
20819
+ #
19970
20820
  # @!attribute [rw] peering_options
19971
20821
  # Information about the VPC peering connection options for the
19972
20822
  # accepter or requester VPC.
@@ -19975,6 +20825,7 @@ module Aws
19975
20825
  :cidr_block,
19976
20826
  :owner_id,
19977
20827
  :vpc_id,
20828
+ :ipv_6_cidr_block_set,
19978
20829
  :peering_options)
19979
20830
  include Aws::Structure
19980
20831
  end