aws-sdk-ec2 1.281.0 → 1.282.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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 = []