aws-sdk-ec2 1.281.0 → 1.282.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1229,6 +1229,7 @@ module Aws::EC2
1229
1229
  HostReservationIdSet = Shapes::ListShape.new(name: 'HostReservationIdSet')
1230
1230
  HostReservationSet = Shapes::ListShape.new(name: 'HostReservationSet')
1231
1231
  HostTenancy = Shapes::StringShape.new(name: 'HostTenancy')
1232
+ HostnameType = Shapes::StringShape.new(name: 'HostnameType')
1232
1233
  Hour = Shapes::IntegerShape.new(name: 'Hour')
1233
1234
  HttpTokensState = Shapes::StringShape.new(name: 'HttpTokensState')
1234
1235
  HypervisorType = Shapes::StringShape.new(name: 'HypervisorType')
@@ -1507,6 +1508,8 @@ module Aws::EC2
1507
1508
  LaunchTemplateOverridesList = Shapes::ListShape.new(name: 'LaunchTemplateOverridesList')
1508
1509
  LaunchTemplatePlacement = Shapes::StructureShape.new(name: 'LaunchTemplatePlacement')
1509
1510
  LaunchTemplatePlacementRequest = Shapes::StructureShape.new(name: 'LaunchTemplatePlacementRequest')
1511
+ LaunchTemplatePrivateDnsNameOptions = Shapes::StructureShape.new(name: 'LaunchTemplatePrivateDnsNameOptions')
1512
+ LaunchTemplatePrivateDnsNameOptionsRequest = Shapes::StructureShape.new(name: 'LaunchTemplatePrivateDnsNameOptionsRequest')
1510
1513
  LaunchTemplateSet = Shapes::ListShape.new(name: 'LaunchTemplateSet')
1511
1514
  LaunchTemplateSpecification = Shapes::StructureShape.new(name: 'LaunchTemplateSpecification')
1512
1515
  LaunchTemplateSpotMarketOptions = Shapes::StructureShape.new(name: 'LaunchTemplateSpotMarketOptions')
@@ -1629,6 +1632,8 @@ module Aws::EC2
1629
1632
  ModifyManagedPrefixListRequest = Shapes::StructureShape.new(name: 'ModifyManagedPrefixListRequest')
1630
1633
  ModifyManagedPrefixListResult = Shapes::StructureShape.new(name: 'ModifyManagedPrefixListResult')
1631
1634
  ModifyNetworkInterfaceAttributeRequest = Shapes::StructureShape.new(name: 'ModifyNetworkInterfaceAttributeRequest')
1635
+ ModifyPrivateDnsNameOptionsRequest = Shapes::StructureShape.new(name: 'ModifyPrivateDnsNameOptionsRequest')
1636
+ ModifyPrivateDnsNameOptionsResult = Shapes::StructureShape.new(name: 'ModifyPrivateDnsNameOptionsResult')
1632
1637
  ModifyReservedInstancesRequest = Shapes::StructureShape.new(name: 'ModifyReservedInstancesRequest')
1633
1638
  ModifyReservedInstancesResult = Shapes::StructureShape.new(name: 'ModifyReservedInstancesResult')
1634
1639
  ModifySecurityGroupRulesRequest = Shapes::StructureShape.new(name: 'ModifySecurityGroupRulesRequest')
@@ -1835,6 +1840,9 @@ module Aws::EC2
1835
1840
  PrivateDnsDetails = Shapes::StructureShape.new(name: 'PrivateDnsDetails')
1836
1841
  PrivateDnsDetailsSet = Shapes::ListShape.new(name: 'PrivateDnsDetailsSet')
1837
1842
  PrivateDnsNameConfiguration = Shapes::StructureShape.new(name: 'PrivateDnsNameConfiguration')
1843
+ PrivateDnsNameOptionsOnLaunch = Shapes::StructureShape.new(name: 'PrivateDnsNameOptionsOnLaunch')
1844
+ PrivateDnsNameOptionsRequest = Shapes::StructureShape.new(name: 'PrivateDnsNameOptionsRequest')
1845
+ PrivateDnsNameOptionsResponse = Shapes::StructureShape.new(name: 'PrivateDnsNameOptionsResponse')
1838
1846
  PrivateIpAddressConfigSet = Shapes::ListShape.new(name: 'PrivateIpAddressConfigSet')
1839
1847
  PrivateIpAddressSpecification = Shapes::StructureShape.new(name: 'PrivateIpAddressSpecification')
1840
1848
  PrivateIpAddressSpecificationList = Shapes::ListShape.new(name: 'PrivateIpAddressSpecificationList')
@@ -3602,6 +3610,7 @@ module Aws::EC2
3602
3610
 
3603
3611
  CreateDefaultSubnetRequest.add_member(:availability_zone, Shapes::ShapeRef.new(shape: String, required: true, location_name: "AvailabilityZone"))
3604
3612
  CreateDefaultSubnetRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
3613
+ CreateDefaultSubnetRequest.add_member(:ipv_6_native, Shapes::ShapeRef.new(shape: Boolean, location_name: "Ipv6Native"))
3605
3614
  CreateDefaultSubnetRequest.struct_class = Types::CreateDefaultSubnetRequest
3606
3615
 
3607
3616
  CreateDefaultSubnetResult.add_member(:subnet, Shapes::ShapeRef.new(shape: Subnet, location_name: "subnet"))
@@ -4008,11 +4017,12 @@ module Aws::EC2
4008
4017
  CreateSubnetRequest.add_member(:tag_specifications, Shapes::ShapeRef.new(shape: TagSpecificationList, location_name: "TagSpecification"))
4009
4018
  CreateSubnetRequest.add_member(:availability_zone, Shapes::ShapeRef.new(shape: String, location_name: "AvailabilityZone"))
4010
4019
  CreateSubnetRequest.add_member(:availability_zone_id, Shapes::ShapeRef.new(shape: String, location_name: "AvailabilityZoneId"))
4011
- CreateSubnetRequest.add_member(:cidr_block, Shapes::ShapeRef.new(shape: String, required: true, location_name: "CidrBlock"))
4020
+ CreateSubnetRequest.add_member(:cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "CidrBlock"))
4012
4021
  CreateSubnetRequest.add_member(:ipv_6_cidr_block, Shapes::ShapeRef.new(shape: String, location_name: "Ipv6CidrBlock"))
4013
4022
  CreateSubnetRequest.add_member(:outpost_arn, Shapes::ShapeRef.new(shape: String, location_name: "OutpostArn"))
4014
4023
  CreateSubnetRequest.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "VpcId"))
4015
4024
  CreateSubnetRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
4025
+ CreateSubnetRequest.add_member(:ipv_6_native, Shapes::ShapeRef.new(shape: Boolean, location_name: "Ipv6Native"))
4016
4026
  CreateSubnetRequest.struct_class = Types::CreateSubnetRequest
4017
4027
 
4018
4028
  CreateSubnetResult.add_member(:subnet, Shapes::ShapeRef.new(shape: Subnet, location_name: "subnet"))
@@ -7658,6 +7668,8 @@ module Aws::EC2
7658
7668
  Instance.add_member(:platform_details, Shapes::ShapeRef.new(shape: String, location_name: "platformDetails"))
7659
7669
  Instance.add_member(:usage_operation, Shapes::ShapeRef.new(shape: String, location_name: "usageOperation"))
7660
7670
  Instance.add_member(:usage_operation_update_time, Shapes::ShapeRef.new(shape: MillisecondDateTime, location_name: "usageOperationUpdateTime"))
7671
+ Instance.add_member(:private_dns_name_options, Shapes::ShapeRef.new(shape: PrivateDnsNameOptionsResponse, location_name: "privateDnsNameOptions"))
7672
+ Instance.add_member(:ipv_6_address, Shapes::ShapeRef.new(shape: String, location_name: "ipv6Address"))
7661
7673
  Instance.struct_class = Types::Instance
7662
7674
 
7663
7675
  InstanceAttribute.add_member(:groups, Shapes::ShapeRef.new(shape: GroupIdentifierList, location_name: "groupSet"))
@@ -8425,6 +8437,16 @@ module Aws::EC2
8425
8437
  LaunchTemplatePlacementRequest.add_member(:partition_number, Shapes::ShapeRef.new(shape: Integer, location_name: "PartitionNumber"))
8426
8438
  LaunchTemplatePlacementRequest.struct_class = Types::LaunchTemplatePlacementRequest
8427
8439
 
8440
+ LaunchTemplatePrivateDnsNameOptions.add_member(:hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "hostnameType"))
8441
+ LaunchTemplatePrivateDnsNameOptions.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsARecord"))
8442
+ LaunchTemplatePrivateDnsNameOptions.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsAAAARecord"))
8443
+ LaunchTemplatePrivateDnsNameOptions.struct_class = Types::LaunchTemplatePrivateDnsNameOptions
8444
+
8445
+ LaunchTemplatePrivateDnsNameOptionsRequest.add_member(:hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "HostnameType"))
8446
+ LaunchTemplatePrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsARecord"))
8447
+ LaunchTemplatePrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsAAAARecord"))
8448
+ LaunchTemplatePrivateDnsNameOptionsRequest.struct_class = Types::LaunchTemplatePrivateDnsNameOptionsRequest
8449
+
8428
8450
  LaunchTemplateSet.member = Shapes::ShapeRef.new(shape: LaunchTemplate, location_name: "item")
8429
8451
 
8430
8452
  LaunchTemplateSpecification.add_member(:launch_template_id, Shapes::ShapeRef.new(shape: LaunchTemplateId, location_name: "LaunchTemplateId"))
@@ -8868,6 +8890,16 @@ module Aws::EC2
8868
8890
  ModifyNetworkInterfaceAttributeRequest.add_member(:source_dest_check, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "sourceDestCheck"))
8869
8891
  ModifyNetworkInterfaceAttributeRequest.struct_class = Types::ModifyNetworkInterfaceAttributeRequest
8870
8892
 
8893
+ ModifyPrivateDnsNameOptionsRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "DryRun"))
8894
+ ModifyPrivateDnsNameOptionsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, location_name: "InstanceId"))
8895
+ ModifyPrivateDnsNameOptionsRequest.add_member(:private_dns_hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "PrivateDnsHostnameType"))
8896
+ ModifyPrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsARecord"))
8897
+ ModifyPrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsAAAARecord"))
8898
+ ModifyPrivateDnsNameOptionsRequest.struct_class = Types::ModifyPrivateDnsNameOptionsRequest
8899
+
8900
+ ModifyPrivateDnsNameOptionsResult.add_member(:return, Shapes::ShapeRef.new(shape: Boolean, location_name: "return"))
8901
+ ModifyPrivateDnsNameOptionsResult.struct_class = Types::ModifyPrivateDnsNameOptionsResult
8902
+
8871
8903
  ModifyReservedInstancesRequest.add_member(:reserved_instances_ids, Shapes::ShapeRef.new(shape: ReservedInstancesIdStringList, required: true, location_name: "ReservedInstancesId"))
8872
8904
  ModifyReservedInstancesRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "clientToken"))
8873
8905
  ModifyReservedInstancesRequest.add_member(:target_configurations, Shapes::ShapeRef.new(shape: ReservedInstancesConfigurationList, required: true, location_name: "ReservedInstancesConfigurationSetItemType"))
@@ -8910,6 +8942,9 @@ module Aws::EC2
8910
8942
  ModifySubnetAttributeRequest.add_member(:map_customer_owned_ip_on_launch, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "MapCustomerOwnedIpOnLaunch"))
8911
8943
  ModifySubnetAttributeRequest.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: CoipPoolId, location_name: "CustomerOwnedIpv4Pool"))
8912
8944
  ModifySubnetAttributeRequest.add_member(:enable_dns_64, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "EnableDns64"))
8945
+ ModifySubnetAttributeRequest.add_member(:private_dns_hostname_type_on_launch, Shapes::ShapeRef.new(shape: HostnameType, location_name: "PrivateDnsHostnameTypeOnLaunch"))
8946
+ ModifySubnetAttributeRequest.add_member(:enable_resource_name_dns_a_record_on_launch, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "EnableResourceNameDnsARecordOnLaunch"))
8947
+ ModifySubnetAttributeRequest.add_member(:enable_resource_name_dns_aaaa_record_on_launch, Shapes::ShapeRef.new(shape: AttributeBooleanValue, location_name: "EnableResourceNameDnsAAAARecordOnLaunch"))
8913
8948
  ModifySubnetAttributeRequest.struct_class = Types::ModifySubnetAttributeRequest
8914
8949
 
8915
8950
  ModifyTrafficMirrorFilterNetworkServicesRequest.add_member(:traffic_mirror_filter_id, Shapes::ShapeRef.new(shape: TrafficMirrorFilterId, required: true, location_name: "TrafficMirrorFilterId"))
@@ -9305,6 +9340,8 @@ module Aws::EC2
9305
9340
  NetworkInterface.add_member(:tag_set, Shapes::ShapeRef.new(shape: TagList, location_name: "tagSet"))
9306
9341
  NetworkInterface.add_member(:vpc_id, Shapes::ShapeRef.new(shape: String, location_name: "vpcId"))
9307
9342
  NetworkInterface.add_member(:deny_all_igw_traffic, Shapes::ShapeRef.new(shape: Boolean, location_name: "denyAllIgwTraffic"))
9343
+ NetworkInterface.add_member(:ipv_6_native, Shapes::ShapeRef.new(shape: Boolean, location_name: "ipv6Native"))
9344
+ NetworkInterface.add_member(:ipv_6_address, Shapes::ShapeRef.new(shape: String, location_name: "ipv6Address"))
9308
9345
  NetworkInterface.struct_class = Types::NetworkInterface
9309
9346
 
9310
9347
  NetworkInterfaceAssociation.add_member(:allocation_id, Shapes::ShapeRef.new(shape: String, location_name: "allocationId"))
@@ -9613,6 +9650,21 @@ module Aws::EC2
9613
9650
  PrivateDnsNameConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "name"))
9614
9651
  PrivateDnsNameConfiguration.struct_class = Types::PrivateDnsNameConfiguration
9615
9652
 
9653
+ PrivateDnsNameOptionsOnLaunch.add_member(:hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "hostnameType"))
9654
+ PrivateDnsNameOptionsOnLaunch.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsARecord"))
9655
+ PrivateDnsNameOptionsOnLaunch.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsAAAARecord"))
9656
+ PrivateDnsNameOptionsOnLaunch.struct_class = Types::PrivateDnsNameOptionsOnLaunch
9657
+
9658
+ PrivateDnsNameOptionsRequest.add_member(:hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "HostnameType"))
9659
+ PrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsARecord"))
9660
+ PrivateDnsNameOptionsRequest.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "EnableResourceNameDnsAAAARecord"))
9661
+ PrivateDnsNameOptionsRequest.struct_class = Types::PrivateDnsNameOptionsRequest
9662
+
9663
+ PrivateDnsNameOptionsResponse.add_member(:hostname_type, Shapes::ShapeRef.new(shape: HostnameType, location_name: "hostnameType"))
9664
+ PrivateDnsNameOptionsResponse.add_member(:enable_resource_name_dns_a_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsARecord"))
9665
+ PrivateDnsNameOptionsResponse.add_member(:enable_resource_name_dns_aaaa_record, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableResourceNameDnsAAAARecord"))
9666
+ PrivateDnsNameOptionsResponse.struct_class = Types::PrivateDnsNameOptionsResponse
9667
+
9616
9668
  PrivateIpAddressConfigSet.member = Shapes::ShapeRef.new(shape: ScheduledInstancesPrivateIpAddressConfig, location_name: "PrivateIpAddressConfigSet")
9617
9669
 
9618
9670
  PrivateIpAddressSpecification.add_member(:primary, Shapes::ShapeRef.new(shape: Boolean, location_name: "primary"))
@@ -9996,6 +10048,7 @@ module Aws::EC2
9996
10048
  RequestLaunchTemplateData.add_member(:metadata_options, Shapes::ShapeRef.new(shape: LaunchTemplateInstanceMetadataOptionsRequest, location_name: "MetadataOptions"))
9997
10049
  RequestLaunchTemplateData.add_member(:enclave_options, Shapes::ShapeRef.new(shape: LaunchTemplateEnclaveOptionsRequest, location_name: "EnclaveOptions"))
9998
10050
  RequestLaunchTemplateData.add_member(:instance_requirements, Shapes::ShapeRef.new(shape: InstanceRequirementsRequest, location_name: "InstanceRequirements"))
10051
+ RequestLaunchTemplateData.add_member(:private_dns_name_options, Shapes::ShapeRef.new(shape: LaunchTemplatePrivateDnsNameOptionsRequest, location_name: "PrivateDnsNameOptions"))
9999
10052
  RequestLaunchTemplateData.struct_class = Types::RequestLaunchTemplateData
10000
10053
 
10001
10054
  RequestSpotFleetRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: Boolean, location_name: "dryRun"))
@@ -10258,6 +10311,7 @@ module Aws::EC2
10258
10311
  ResponseLaunchTemplateData.add_member(:metadata_options, Shapes::ShapeRef.new(shape: LaunchTemplateInstanceMetadataOptions, location_name: "metadataOptions"))
10259
10312
  ResponseLaunchTemplateData.add_member(:enclave_options, Shapes::ShapeRef.new(shape: LaunchTemplateEnclaveOptions, location_name: "enclaveOptions"))
10260
10313
  ResponseLaunchTemplateData.add_member(:instance_requirements, Shapes::ShapeRef.new(shape: InstanceRequirements, location_name: "instanceRequirements"))
10314
+ ResponseLaunchTemplateData.add_member(:private_dns_name_options, Shapes::ShapeRef.new(shape: LaunchTemplatePrivateDnsNameOptions, location_name: "privateDnsNameOptions"))
10261
10315
  ResponseLaunchTemplateData.struct_class = Types::ResponseLaunchTemplateData
10262
10316
 
10263
10317
  RestorableByStringList.member = Shapes::ShapeRef.new(shape: String)
@@ -10411,6 +10465,7 @@ module Aws::EC2
10411
10465
  RunInstancesRequest.add_member(:license_specifications, Shapes::ShapeRef.new(shape: LicenseSpecificationListRequest, location_name: "LicenseSpecification"))
10412
10466
  RunInstancesRequest.add_member(:metadata_options, Shapes::ShapeRef.new(shape: InstanceMetadataOptionsRequest, location_name: "MetadataOptions"))
10413
10467
  RunInstancesRequest.add_member(:enclave_options, Shapes::ShapeRef.new(shape: EnclaveOptionsRequest, location_name: "EnclaveOptions"))
10468
+ RunInstancesRequest.add_member(:private_dns_name_options, Shapes::ShapeRef.new(shape: PrivateDnsNameOptionsRequest, location_name: "PrivateDnsNameOptions"))
10414
10469
  RunInstancesRequest.struct_class = Types::RunInstancesRequest
10415
10470
 
10416
10471
  RunScheduledInstancesRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
@@ -11040,6 +11095,8 @@ module Aws::EC2
11040
11095
  Subnet.add_member(:subnet_arn, Shapes::ShapeRef.new(shape: String, location_name: "subnetArn"))
11041
11096
  Subnet.add_member(:outpost_arn, Shapes::ShapeRef.new(shape: String, location_name: "outpostArn"))
11042
11097
  Subnet.add_member(:enable_dns_64, Shapes::ShapeRef.new(shape: Boolean, location_name: "enableDns64"))
11098
+ Subnet.add_member(:ipv_6_native, Shapes::ShapeRef.new(shape: Boolean, location_name: "ipv6Native"))
11099
+ Subnet.add_member(:private_dns_name_options_on_launch, Shapes::ShapeRef.new(shape: PrivateDnsNameOptionsOnLaunch, location_name: "privateDnsNameOptionsOnLaunch"))
11043
11100
  Subnet.struct_class = Types::Subnet
11044
11101
 
11045
11102
  SubnetAssociation.add_member(:subnet_id, Shapes::ShapeRef.new(shape: String, location_name: "subnetId"))
@@ -15811,6 +15868,14 @@ module Aws::EC2
15811
15868
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
15812
15869
  end)
15813
15870
 
15871
+ api.add_operation(:modify_private_dns_name_options, Seahorse::Model::Operation.new.tap do |o|
15872
+ o.name = "ModifyPrivateDnsNameOptions"
15873
+ o.http_method = "POST"
15874
+ o.http_request_uri = "/"
15875
+ o.input = Shapes::ShapeRef.new(shape: ModifyPrivateDnsNameOptionsRequest)
15876
+ o.output = Shapes::ShapeRef.new(shape: ModifyPrivateDnsNameOptionsResult)
15877
+ end)
15878
+
15814
15879
  api.add_operation(:modify_reserved_instances, Seahorse::Model::Operation.new.tap do |o|
15815
15880
  o.name = "ModifyReservedInstances"
15816
15881
  o.http_method = "POST"
@@ -377,6 +377,18 @@ module Aws::EC2
377
377
  data[:usage_operation_update_time]
378
378
  end
379
379
 
380
+ # The options for the instance hostname.
381
+ # @return [Types::PrivateDnsNameOptionsResponse]
382
+ def private_dns_name_options
383
+ data[:private_dns_name_options]
384
+ end
385
+
386
+ # The IPv6 address assigned to the instance.
387
+ # @return [String]
388
+ def ipv_6_address
389
+ data[:ipv_6_address]
390
+ end
391
+
380
392
  # @!endgroup
381
393
 
382
394
  # @return [Client]
@@ -977,8 +989,8 @@ module Aws::EC2
977
989
  #
978
990
  # To add instance store volumes to an Amazon EBS-backed instance, you
979
991
  # must add them when you launch the instance. For more information, see
980
- # [Updating the block device mapping when launching an instance][1] in
981
- # the *Amazon EC2 User Guide*.
992
+ # [Update the block device mapping when launching an instance][1] in the
993
+ # *Amazon EC2 User Guide*.
982
994
  #
983
995
  #
984
996
  #
@@ -175,6 +175,19 @@ module Aws::EC2
175
175
  data[:deny_all_igw_traffic]
176
176
  end
177
177
 
178
+ # Indicates whether this is an IPv6 only network interface.
179
+ # @return [Boolean]
180
+ def ipv_6_native
181
+ data[:ipv_6_native]
182
+ end
183
+
184
+ # The IPv6 globally unique address associated with the network
185
+ # interface.
186
+ # @return [String]
187
+ def ipv_6_address
188
+ data[:ipv_6_address]
189
+ end
190
+
178
191
  # @!endgroup
179
192
 
180
193
  # @return [Client]
@@ -247,6 +247,11 @@ module Aws::EC2
247
247
  # enclave_options: {
248
248
  # enabled: false,
249
249
  # },
250
+ # private_dns_name_options: {
251
+ # hostname_type: "ip-name", # accepts ip-name, resource-name
252
+ # enable_resource_name_dns_a_record: false,
253
+ # enable_resource_name_dns_aaaa_record: false,
254
+ # },
250
255
  # })
251
256
  # @param [Hash] options ({})
252
257
  # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
@@ -379,16 +384,16 @@ module Aws::EC2
379
384
  # part of the network interface.
380
385
  # @option options [String] :user_data
381
386
  # The user data to make available to the instance. For more information,
382
- # see [Running commands on your Linux instance at launch][1] (Linux) and
383
- # [Adding User Data][2] (Windows). If you are using a command line tool,
384
- # base64-encoding is performed for you, and you can load the text from a
385
- # file. Otherwise, you must provide base64-encoded text. User data is
386
- # limited to 16 KB.
387
+ # see [Run commands on your Linux instance at launch][1] and [Run
388
+ # commands on your Windows instance at launch][2]. If you are using a
389
+ # command line tool, base64-encoding is performed for you, and you can
390
+ # load the text from a file. Otherwise, you must provide base64-encoded
391
+ # text. User data is limited to 16 KB.
387
392
  #
388
393
  #
389
394
  #
390
395
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
391
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data
396
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html
392
397
  # @option options [String] :additional_info
393
398
  # Reserved.
394
399
  # @option options [String] :client_token
@@ -508,8 +513,8 @@ module Aws::EC2
508
513
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html
509
514
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
510
515
  # @option options [Types::CpuOptionsRequest] :cpu_options
511
- # The CPU options for the instance. For more information, see
512
- # [Optimizing CPU options][1] in the *Amazon EC2 User Guide*.
516
+ # The CPU options for the instance. For more information, see [Optimize
517
+ # CPU options][1] in the *Amazon EC2 User Guide*.
513
518
  #
514
519
  #
515
520
  #
@@ -552,6 +557,9 @@ module Aws::EC2
552
557
  #
553
558
  #
554
559
  # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html
560
+ # @option options [Types::PrivateDnsNameOptionsRequest] :private_dns_name_options
561
+ # The options for the instance hostname. The default values are
562
+ # inherited from the subnet.
555
563
  # @return [Instance::Collection]
556
564
  def create_instances(options = {})
557
565
  batch = []
@@ -1096,11 +1104,12 @@ module Aws::EC2
1096
1104
  # ],
1097
1105
  # availability_zone: "String",
1098
1106
  # availability_zone_id: "String",
1099
- # cidr_block: "String", # required
1107
+ # cidr_block: "String",
1100
1108
  # ipv_6_cidr_block: "String",
1101
1109
  # outpost_arn: "String",
1102
1110
  # vpc_id: "VpcId", # required
1103
1111
  # dry_run: false,
1112
+ # ipv_6_native: false,
1104
1113
  # })
1105
1114
  # @param [Hash] options ({})
1106
1115
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -1125,14 +1134,18 @@ module Aws::EC2
1125
1134
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions
1126
1135
  # @option options [String] :availability_zone_id
1127
1136
  # The AZ ID or the Local Zone ID of the subnet.
1128
- # @option options [required, String] :cidr_block
1137
+ # @option options [String] :cidr_block
1129
1138
  # The IPv4 network range for the subnet, in CIDR notation. For example,
1130
1139
  # `10.0.0.0/24`. We modify the specified CIDR block to its canonical
1131
1140
  # form; for example, if you specify `100.68.0.18/18`, we modify it to
1132
1141
  # `100.68.0.0/18`.
1142
+ #
1143
+ # This parameter is not supported for an IPv6 only subnet.
1133
1144
  # @option options [String] :ipv_6_cidr_block
1134
1145
  # The IPv6 network range for the subnet, in CIDR notation. The subnet
1135
1146
  # size must use a /64 prefix length.
1147
+ #
1148
+ # This parameter is required for an IPv6 only subnet.
1136
1149
  # @option options [String] :outpost_arn
1137
1150
  # The Amazon Resource Name (ARN) of the Outpost. If you specify an
1138
1151
  # Outpost ARN, you must also specify the Availability Zone of the
@@ -1144,6 +1157,8 @@ module Aws::EC2
1144
1157
  # without actually making the request, and provides an error response.
1145
1158
  # If you have the required permissions, the error response is
1146
1159
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1160
+ # @option options [Boolean] :ipv_6_native
1161
+ # Indicates whether to create an IPv6 only subnet.
1147
1162
  # @return [Subnet]
1148
1163
  def create_subnet(options = {})
1149
1164
  resp = @client.create_subnet(options)
@@ -3336,8 +3351,8 @@ module Aws::EC2
3336
3351
  # `cidrBlock` as the filter names.
3337
3352
  #
3338
3353
  # * `default-for-az` - Indicates whether this is the default subnet for
3339
- # the Availability Zone. You can also use `defaultForAz` as the filter
3340
- # name.
3354
+ # the Availability Zone (`true` \| `false`). You can also use
3355
+ # `defaultForAz` as the filter name.
3341
3356
  #
3342
3357
  # * `ipv6-cidr-block-association.ipv6-cidr-block` - An IPv6 CIDR block
3343
3358
  # associated with the subnet.
@@ -3348,6 +3363,9 @@ module Aws::EC2
3348
3363
  # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR
3349
3364
  # block associated with the subnet.
3350
3365
  #
3366
+ # * `ipv6-native` - Indicates whether this is an IPv6 only subnet
3367
+ # (`true` \| `false`).
3368
+ #
3351
3369
  # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
3352
3370
  #
3353
3371
  # * `owner-id` - The ID of the Amazon Web Services account that owns the
@@ -146,6 +146,20 @@ module Aws::EC2
146
146
  data[:enable_dns_64]
147
147
  end
148
148
 
149
+ # Indicates whether this is an IPv6 only subnet.
150
+ # @return [Boolean]
151
+ def ipv_6_native
152
+ data[:ipv_6_native]
153
+ end
154
+
155
+ # The type of hostnames to assign to instances in the subnet at launch.
156
+ # An instance hostname is based on the IPv4 address or ID of the
157
+ # instance.
158
+ # @return [Types::PrivateDnsNameOptionsOnLaunch]
159
+ def private_dns_name_options_on_launch
160
+ data[:private_dns_name_options_on_launch]
161
+ end
162
+
149
163
  # @!endgroup
150
164
 
151
165
  # @return [Client]
@@ -449,6 +463,11 @@ module Aws::EC2
449
463
  # enclave_options: {
450
464
  # enabled: false,
451
465
  # },
466
+ # private_dns_name_options: {
467
+ # hostname_type: "ip-name", # accepts ip-name, resource-name
468
+ # enable_resource_name_dns_a_record: false,
469
+ # enable_resource_name_dns_aaaa_record: false,
470
+ # },
452
471
  # })
453
472
  # @param [Hash] options ({})
454
473
  # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
@@ -576,16 +595,16 @@ module Aws::EC2
576
595
  # Default: Amazon EC2 uses the default security group.
577
596
  # @option options [String] :user_data
578
597
  # The user data to make available to the instance. For more information,
579
- # see [Running commands on your Linux instance at launch][1] (Linux) and
580
- # [Adding User Data][2] (Windows). If you are using a command line tool,
581
- # base64-encoding is performed for you, and you can load the text from a
582
- # file. Otherwise, you must provide base64-encoded text. User data is
583
- # limited to 16 KB.
598
+ # see [Run commands on your Linux instance at launch][1] and [Run
599
+ # commands on your Windows instance at launch][2]. If you are using a
600
+ # command line tool, base64-encoding is performed for you, and you can
601
+ # load the text from a file. Otherwise, you must provide base64-encoded
602
+ # text. User data is limited to 16 KB.
584
603
  #
585
604
  #
586
605
  #
587
606
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
588
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data
607
+ # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html
589
608
  # @option options [String] :additional_info
590
609
  # Reserved.
591
610
  # @option options [String] :client_token
@@ -705,8 +724,8 @@ module Aws::EC2
705
724
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html
706
725
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
707
726
  # @option options [Types::CpuOptionsRequest] :cpu_options
708
- # The CPU options for the instance. For more information, see
709
- # [Optimizing CPU options][1] in the *Amazon EC2 User Guide*.
727
+ # The CPU options for the instance. For more information, see [Optimize
728
+ # CPU options][1] in the *Amazon EC2 User Guide*.
710
729
  #
711
730
  #
712
731
  #
@@ -749,6 +768,9 @@ module Aws::EC2
749
768
  #
750
769
  #
751
770
  # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html
771
+ # @option options [Types::PrivateDnsNameOptionsRequest] :private_dns_name_options
772
+ # The options for the instance hostname. The default values are
773
+ # inherited from the subnet.
752
774
  # @return [Instance::Collection]
753
775
  def create_instances(options = {})
754
776
  batch = []