aws-sdk-ec2 1.422.0 → 1.424.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.
@@ -798,6 +798,10 @@ module Aws::EC2
798
798
  # provisioned range.
799
799
  # @return [String]
800
800
  #
801
+ # @!attribute [rw] asn
802
+ # The public 2-byte or 4-byte ASN that you want to advertise.
803
+ # @return [String]
804
+ #
801
805
  # @!attribute [rw] dry_run
802
806
  # Checks whether you have the required permissions for the action,
803
807
  # without actually making the request, and provides an error response.
@@ -809,6 +813,7 @@ module Aws::EC2
809
813
  #
810
814
  class AdvertiseByoipCidrRequest < Struct.new(
811
815
  :cidr,
816
+ :asn,
812
817
  :dry_run)
813
818
  SENSITIVE = []
814
819
  include Aws::Structure
@@ -1142,6 +1147,12 @@ module Aws::EC2
1142
1147
  # A preview of the next available CIDR in a pool.
1143
1148
  # @return [Boolean]
1144
1149
  #
1150
+ # @!attribute [rw] allowed_cidrs
1151
+ # Include a particular CIDR range that can be returned by the pool.
1152
+ # Allowed CIDRs are only allowed if using netmask length for
1153
+ # allocation.
1154
+ # @return [Array<String>]
1155
+ #
1145
1156
  # @!attribute [rw] disallowed_cidrs
1146
1157
  # Exclude a particular CIDR range from being returned by the pool.
1147
1158
  # Disallowed CIDRs are only allowed if using netmask length for
@@ -1158,6 +1169,7 @@ module Aws::EC2
1158
1169
  :client_token,
1159
1170
  :description,
1160
1171
  :preview_next_cidr,
1172
+ :allowed_cidrs,
1161
1173
  :disallowed_cidrs)
1162
1174
  SENSITIVE = []
1163
1175
  include Aws::Structure
@@ -1555,6 +1567,62 @@ module Aws::EC2
1555
1567
  include Aws::Structure
1556
1568
  end
1557
1569
 
1570
+ # An Autonomous System Number (ASN) and BYOIP CIDR association.
1571
+ #
1572
+ # @!attribute [rw] asn
1573
+ # The association's ASN.
1574
+ # @return [String]
1575
+ #
1576
+ # @!attribute [rw] cidr
1577
+ # The association's CIDR.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] status_message
1581
+ # The association's status message.
1582
+ # @return [String]
1583
+ #
1584
+ # @!attribute [rw] state
1585
+ # The association's state.
1586
+ # @return [String]
1587
+ #
1588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AsnAssociation AWS API Documentation
1589
+ #
1590
+ class AsnAssociation < Struct.new(
1591
+ :asn,
1592
+ :cidr,
1593
+ :status_message,
1594
+ :state)
1595
+ SENSITIVE = []
1596
+ include Aws::Structure
1597
+ end
1598
+
1599
+ # Provides authorization for Amazon to bring an Autonomous System Number
1600
+ # (ASN) to a specific Amazon Web Services account using bring your own
1601
+ # ASN (BYOASN). For details on the format of the message and signature,
1602
+ # see [Tutorial: Bring your ASN to IPAM][1] in the *Amazon VPC IPAM
1603
+ # guide*.
1604
+ #
1605
+ #
1606
+ #
1607
+ # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html
1608
+ #
1609
+ # @!attribute [rw] message
1610
+ # The authorization context's message.
1611
+ # @return [String]
1612
+ #
1613
+ # @!attribute [rw] signature
1614
+ # The authorization context's signature.
1615
+ # @return [String]
1616
+ #
1617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AsnAuthorizationContext AWS API Documentation
1618
+ #
1619
+ class AsnAuthorizationContext < Struct.new(
1620
+ :message,
1621
+ :signature)
1622
+ SENSITIVE = []
1623
+ include Aws::Structure
1624
+ end
1625
+
1558
1626
  # @!attribute [rw] ipv_6_address_count
1559
1627
  # The number of additional IPv6 addresses to assign to the network
1560
1628
  # interface. The specified number of IPv6 addresses are assigned in
@@ -2027,6 +2095,43 @@ module Aws::EC2
2027
2095
  include Aws::Structure
2028
2096
  end
2029
2097
 
2098
+ # @!attribute [rw] dry_run
2099
+ # Checks whether you have the required permissions for the action,
2100
+ # without actually making the request, and provides an error response.
2101
+ # If you have the required permissions, the error response is
2102
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2103
+ # @return [Boolean]
2104
+ #
2105
+ # @!attribute [rw] asn
2106
+ # A public 2-byte or 4-byte ASN.
2107
+ # @return [String]
2108
+ #
2109
+ # @!attribute [rw] cidr
2110
+ # The BYOIP CIDR you want to associate with an ASN.
2111
+ # @return [String]
2112
+ #
2113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasnRequest AWS API Documentation
2114
+ #
2115
+ class AssociateIpamByoasnRequest < Struct.new(
2116
+ :dry_run,
2117
+ :asn,
2118
+ :cidr)
2119
+ SENSITIVE = []
2120
+ include Aws::Structure
2121
+ end
2122
+
2123
+ # @!attribute [rw] asn_association
2124
+ # The ASN and BYOIP CIDR association.
2125
+ # @return [Types::AsnAssociation]
2126
+ #
2127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasnResult AWS API Documentation
2128
+ #
2129
+ class AssociateIpamByoasnResult < Struct.new(
2130
+ :asn_association)
2131
+ SENSITIVE = []
2132
+ include Aws::Structure
2133
+ end
2134
+
2030
2135
  # @!attribute [rw] dry_run
2031
2136
  # A check for whether you have the required permissions for the action
2032
2137
  # without actually making the request and provides an error response.
@@ -2176,19 +2281,28 @@ module Aws::EC2
2176
2281
  end
2177
2282
 
2178
2283
  # @!attribute [rw] ipv_6_cidr_block
2179
- # The IPv6 CIDR block for your subnet. The subnet must have a /64
2180
- # prefix length.
2284
+ # The IPv6 CIDR block for your subnet.
2181
2285
  # @return [String]
2182
2286
  #
2183
2287
  # @!attribute [rw] subnet_id
2184
2288
  # The ID of your subnet.
2185
2289
  # @return [String]
2186
2290
  #
2291
+ # @!attribute [rw] ipv_6_ipam_pool_id
2292
+ # An IPv6 IPAM pool ID.
2293
+ # @return [String]
2294
+ #
2295
+ # @!attribute [rw] ipv_6_netmask_length
2296
+ # An IPv6 netmask length.
2297
+ # @return [Integer]
2298
+ #
2187
2299
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateSubnetCidrBlockRequest AWS API Documentation
2188
2300
  #
2189
2301
  class AssociateSubnetCidrBlockRequest < Struct.new(
2190
2302
  :ipv_6_cidr_block,
2191
- :subnet_id)
2303
+ :subnet_id,
2304
+ :ipv_6_ipam_pool_id,
2305
+ :ipv_6_netmask_length)
2192
2306
  SENSITIVE = []
2193
2307
  include Aws::Structure
2194
2308
  end
@@ -2406,7 +2520,7 @@ module Aws::EC2
2406
2520
 
2407
2521
  # @!attribute [rw] amazon_provided_ipv_6_cidr_block
2408
2522
  # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length
2409
- # for the VPC. You cannot specify the range of IPv6 addresses, or the
2523
+ # for the VPC. You cannot specify the range of IPv6 addresses or the
2410
2524
  # size of the CIDR block.
2411
2525
  # @return [Boolean]
2412
2526
  #
@@ -3646,6 +3760,35 @@ module Aws::EC2
3646
3760
  include Aws::Structure
3647
3761
  end
3648
3762
 
3763
+ # The Autonomous System Number (ASN) and BYOIP CIDR association.
3764
+ #
3765
+ # @!attribute [rw] asn
3766
+ # A public 2-byte or 4-byte ASN.
3767
+ # @return [String]
3768
+ #
3769
+ # @!attribute [rw] ipam_id
3770
+ # An IPAM ID.
3771
+ # @return [String]
3772
+ #
3773
+ # @!attribute [rw] status_message
3774
+ # The status message.
3775
+ # @return [String]
3776
+ #
3777
+ # @!attribute [rw] state
3778
+ # The provisioning state of the BYOASN.
3779
+ # @return [String]
3780
+ #
3781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Byoasn AWS API Documentation
3782
+ #
3783
+ class Byoasn < Struct.new(
3784
+ :asn,
3785
+ :ipam_id,
3786
+ :status_message,
3787
+ :state)
3788
+ SENSITIVE = []
3789
+ include Aws::Structure
3790
+ end
3791
+
3649
3792
  # Information about an address range that is provisioned for use with
3650
3793
  # your Amazon Web Services resources through bring your own IP addresses
3651
3794
  # (BYOIP).
@@ -3658,6 +3801,10 @@ module Aws::EC2
3658
3801
  # The description of the address range.
3659
3802
  # @return [String]
3660
3803
  #
3804
+ # @!attribute [rw] asn_associations
3805
+ # The BYOIP CIDR associations with ASNs.
3806
+ # @return [Array<Types::AsnAssociation>]
3807
+ #
3661
3808
  # @!attribute [rw] status_message
3662
3809
  # Upon success, contains the ID of the address pool. Otherwise,
3663
3810
  # contains an error message.
@@ -3672,6 +3819,7 @@ module Aws::EC2
3672
3819
  class ByoipCidr < Struct.new(
3673
3820
  :cidr,
3674
3821
  :description,
3822
+ :asn_associations,
3675
3823
  :status_message,
3676
3824
  :state)
3677
3825
  SENSITIVE = []
@@ -5885,6 +6033,156 @@ module Aws::EC2
5885
6033
  include Aws::Structure
5886
6034
  end
5887
6035
 
6036
+ # A security group connection tracking configuration that enables you to
6037
+ # set the idle timeout for connection tracking on an Elastic network
6038
+ # interface. For more information, see [Connection tracking timeouts][1]
6039
+ # in the *Amazon Elastic Compute Cloud User Guide*.
6040
+ #
6041
+ #
6042
+ #
6043
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
6044
+ #
6045
+ # @!attribute [rw] tcp_established_timeout
6046
+ # Timeout (in seconds) for idle TCP connections in an established
6047
+ # state. Min: 60 seconds. Max: 432000 seconds (5 days). Default:
6048
+ # 432000 seconds. Recommended: Less than 432000 seconds.
6049
+ # @return [Integer]
6050
+ #
6051
+ # @!attribute [rw] udp_stream_timeout
6052
+ # Timeout (in seconds) for idle UDP flows classified as streams which
6053
+ # have seen more than one request-response transaction. Min: 60
6054
+ # seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
6055
+ # @return [Integer]
6056
+ #
6057
+ # @!attribute [rw] udp_timeout
6058
+ # Timeout (in seconds) for idle UDP flows that have seen traffic only
6059
+ # in a single direction or a single request-response transaction. Min:
6060
+ # 30 seconds. Max: 60 seconds. Default: 30 seconds.
6061
+ # @return [Integer]
6062
+ #
6063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingConfiguration AWS API Documentation
6064
+ #
6065
+ class ConnectionTrackingConfiguration < Struct.new(
6066
+ :tcp_established_timeout,
6067
+ :udp_stream_timeout,
6068
+ :udp_timeout)
6069
+ SENSITIVE = []
6070
+ include Aws::Structure
6071
+ end
6072
+
6073
+ # A security group connection tracking specification that enables you to
6074
+ # set the idle timeout for connection tracking on an Elastic network
6075
+ # interface. For more information, see [Connection tracking timeouts][1]
6076
+ # in the *Amazon Elastic Compute Cloud User Guide*.
6077
+ #
6078
+ #
6079
+ #
6080
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
6081
+ #
6082
+ # @!attribute [rw] tcp_established_timeout
6083
+ # Timeout (in seconds) for idle TCP connections in an established
6084
+ # state. Min: 60 seconds. Max: 432000 seconds (5 days). Default:
6085
+ # 432000 seconds. Recommended: Less than 432000 seconds.
6086
+ # @return [Integer]
6087
+ #
6088
+ # @!attribute [rw] udp_timeout
6089
+ # Timeout (in seconds) for idle UDP flows that have seen traffic only
6090
+ # in a single direction or a single request-response transaction. Min:
6091
+ # 30 seconds. Max: 60 seconds. Default: 30 seconds.
6092
+ # @return [Integer]
6093
+ #
6094
+ # @!attribute [rw] udp_stream_timeout
6095
+ # Timeout (in seconds) for idle UDP flows classified as streams which
6096
+ # have seen more than one request-response transaction. Min: 60
6097
+ # seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
6098
+ # @return [Integer]
6099
+ #
6100
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecification AWS API Documentation
6101
+ #
6102
+ class ConnectionTrackingSpecification < Struct.new(
6103
+ :tcp_established_timeout,
6104
+ :udp_timeout,
6105
+ :udp_stream_timeout)
6106
+ SENSITIVE = []
6107
+ include Aws::Structure
6108
+ end
6109
+
6110
+ # A security group connection tracking specification request that
6111
+ # enables you to set the idle timeout for connection tracking on an
6112
+ # Elastic network interface. For more information, see [Connection
6113
+ # tracking timeouts][1] in the *Amazon Elastic Compute Cloud User
6114
+ # Guide*.
6115
+ #
6116
+ #
6117
+ #
6118
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
6119
+ #
6120
+ # @!attribute [rw] tcp_established_timeout
6121
+ # Timeout (in seconds) for idle TCP connections in an established
6122
+ # state. Min: 60 seconds. Max: 432000 seconds (5 days). Default:
6123
+ # 432000 seconds. Recommended: Less than 432000 seconds.
6124
+ # @return [Integer]
6125
+ #
6126
+ # @!attribute [rw] udp_stream_timeout
6127
+ # Timeout (in seconds) for idle UDP flows classified as streams which
6128
+ # have seen more than one request-response transaction. Min: 60
6129
+ # seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
6130
+ # @return [Integer]
6131
+ #
6132
+ # @!attribute [rw] udp_timeout
6133
+ # Timeout (in seconds) for idle UDP flows that have seen traffic only
6134
+ # in a single direction or a single request-response transaction. Min:
6135
+ # 30 seconds. Max: 60 seconds. Default: 30 seconds.
6136
+ # @return [Integer]
6137
+ #
6138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecificationRequest AWS API Documentation
6139
+ #
6140
+ class ConnectionTrackingSpecificationRequest < Struct.new(
6141
+ :tcp_established_timeout,
6142
+ :udp_stream_timeout,
6143
+ :udp_timeout)
6144
+ SENSITIVE = []
6145
+ include Aws::Structure
6146
+ end
6147
+
6148
+ # A security group connection tracking specification response that
6149
+ # enables you to set the idle timeout for connection tracking on an
6150
+ # Elastic network interface. For more information, see [Connection
6151
+ # tracking timeouts][1] in the *Amazon Elastic Compute Cloud User
6152
+ # Guide*.
6153
+ #
6154
+ #
6155
+ #
6156
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
6157
+ #
6158
+ # @!attribute [rw] tcp_established_timeout
6159
+ # Timeout (in seconds) for idle TCP connections in an established
6160
+ # state. Min: 60 seconds. Max: 432000 seconds (5 days). Default:
6161
+ # 432000 seconds. Recommended: Less than 432000 seconds.
6162
+ # @return [Integer]
6163
+ #
6164
+ # @!attribute [rw] udp_stream_timeout
6165
+ # Timeout (in seconds) for idle UDP flows classified as streams which
6166
+ # have seen more than one request-response transaction. Min: 60
6167
+ # seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
6168
+ # @return [Integer]
6169
+ #
6170
+ # @!attribute [rw] udp_timeout
6171
+ # Timeout (in seconds) for idle UDP flows that have seen traffic only
6172
+ # in a single direction or a single request-response transaction. Min:
6173
+ # 30 seconds. Max: 60 seconds. Default: 30 seconds.
6174
+ # @return [Integer]
6175
+ #
6176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecificationResponse AWS API Documentation
6177
+ #
6178
+ class ConnectionTrackingSpecificationResponse < Struct.new(
6179
+ :tcp_established_timeout,
6180
+ :udp_stream_timeout,
6181
+ :udp_timeout)
6182
+ SENSITIVE = []
6183
+ include Aws::Structure
6184
+ end
6185
+
5888
6186
  # Describes a conversion task.
5889
6187
  #
5890
6188
  # @!attribute [rw] conversion_task_id
@@ -8263,6 +8561,10 @@ module Aws::EC2
8263
8561
  # [2]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html
8264
8562
  # @return [String]
8265
8563
  #
8564
+ # @!attribute [rw] source_resource
8565
+ # The resource used to provision CIDRs to a resource planning pool.
8566
+ # @return [Types::IpamPoolSourceResourceRequest]
8567
+ #
8266
8568
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamPoolRequest AWS API Documentation
8267
8569
  #
8268
8570
  class CreateIpamPoolRequest < Struct.new(
@@ -8281,7 +8583,8 @@ module Aws::EC2
8281
8583
  :tag_specifications,
8282
8584
  :client_token,
8283
8585
  :aws_service,
8284
- :public_ip_source)
8586
+ :public_ip_source,
8587
+ :source_resource)
8285
8588
  SENSITIVE = []
8286
8589
  include Aws::Structure
8287
8590
  end
@@ -8344,6 +8647,17 @@ module Aws::EC2
8344
8647
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
8345
8648
  # @return [String]
8346
8649
  #
8650
+ # @!attribute [rw] tier
8651
+ # IPAM is offered in a Free Tier and an Advanced Tier. For more
8652
+ # information about the features available in each tier and the costs
8653
+ # associated with the tiers, see [Amazon VPC pricing &gt; IPAM
8654
+ # tab][1].
8655
+ #
8656
+ #
8657
+ #
8658
+ # [1]: http://aws.amazon.com/vpc/pricing/
8659
+ # @return [String]
8660
+ #
8347
8661
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamRequest AWS API Documentation
8348
8662
  #
8349
8663
  class CreateIpamRequest < Struct.new(
@@ -8351,7 +8665,8 @@ module Aws::EC2
8351
8665
  :description,
8352
8666
  :operating_regions,
8353
8667
  :tag_specifications,
8354
- :client_token)
8668
+ :client_token,
8669
+ :tier)
8355
8670
  SENSITIVE = []
8356
8671
  include Aws::Structure
8357
8672
  end
@@ -9535,6 +9850,10 @@ module Aws::EC2
9535
9850
  # ENI becomes the primary IPv6 address.
9536
9851
  # @return [Boolean]
9537
9852
  #
9853
+ # @!attribute [rw] connection_tracking_specification
9854
+ # A connection tracking specification for the network interface.
9855
+ # @return [Types::ConnectionTrackingSpecificationRequest]
9856
+ #
9538
9857
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfaceRequest AWS API Documentation
9539
9858
  #
9540
9859
  class CreateNetworkInterfaceRequest < Struct.new(
@@ -9554,7 +9873,8 @@ module Aws::EC2
9554
9873
  :subnet_id,
9555
9874
  :tag_specifications,
9556
9875
  :client_token,
9557
- :enable_primary_ipv_6)
9876
+ :enable_primary_ipv_6,
9877
+ :connection_tracking_specification)
9558
9878
  SENSITIVE = []
9559
9879
  include Aws::Structure
9560
9880
  end
@@ -10400,10 +10720,8 @@ module Aws::EC2
10400
10720
  # @return [String]
10401
10721
  #
10402
10722
  # @!attribute [rw] ipv_6_cidr_block
10403
- # The IPv6 network range for the subnet, in CIDR notation. The subnet
10404
- # size must use a /64 prefix length.
10405
- #
10406
- # This parameter is required for an IPv6 only subnet.
10723
+ # The IPv6 network range for the subnet, in CIDR notation. This
10724
+ # parameter is required for an IPv6 only subnet.
10407
10725
  # @return [String]
10408
10726
  #
10409
10727
  # @!attribute [rw] outpost_arn
@@ -10427,6 +10745,22 @@ module Aws::EC2
10427
10745
  # Indicates whether to create an IPv6 only subnet.
10428
10746
  # @return [Boolean]
10429
10747
  #
10748
+ # @!attribute [rw] ipv_4_ipam_pool_id
10749
+ # An IPv4 IPAM pool ID for the subnet.
10750
+ # @return [String]
10751
+ #
10752
+ # @!attribute [rw] ipv_4_netmask_length
10753
+ # An IPv4 netmask length for the subnet.
10754
+ # @return [Integer]
10755
+ #
10756
+ # @!attribute [rw] ipv_6_ipam_pool_id
10757
+ # An IPv6 IPAM pool ID for the subnet.
10758
+ # @return [String]
10759
+ #
10760
+ # @!attribute [rw] ipv_6_netmask_length
10761
+ # An IPv6 netmask length for the subnet.
10762
+ # @return [Integer]
10763
+ #
10430
10764
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetRequest AWS API Documentation
10431
10765
  #
10432
10766
  class CreateSubnetRequest < Struct.new(
@@ -10438,7 +10772,11 @@ module Aws::EC2
10438
10772
  :outpost_arn,
10439
10773
  :vpc_id,
10440
10774
  :dry_run,
10441
- :ipv_6_native)
10775
+ :ipv_6_native,
10776
+ :ipv_4_ipam_pool_id,
10777
+ :ipv_4_netmask_length,
10778
+ :ipv_6_ipam_pool_id,
10779
+ :ipv_6_netmask_length)
10442
10780
  SENSITIVE = []
10443
10781
  include Aws::Structure
10444
10782
  end
@@ -11422,6 +11760,29 @@ module Aws::EC2
11422
11760
  # Enable or disable DNS support. The default is `enable`.
11423
11761
  # @return [String]
11424
11762
  #
11763
+ # @!attribute [rw] security_group_referencing_support
11764
+ # Enables you to reference a security group across VPCs attached to a
11765
+ # transit gateway (TGW). Use this option to simplify security group
11766
+ # management and control of instance-to-instance traffic across VPCs
11767
+ # that are connected by transit gateway. You can also use this option
11768
+ # to migrate from VPC peering (which was the only option that
11769
+ # supported security group referencing) to transit gateways (which now
11770
+ # also support security group referencing). This option is disabled by
11771
+ # default and there are no additional costs to use this feature.
11772
+ #
11773
+ # If you don't enable or disable SecurityGroupReferencingSupport in
11774
+ # the request, the attachment will inherit the security group
11775
+ # referencing support setting on the transit gateway.
11776
+ #
11777
+ # For important information about this feature, see [Create a transit
11778
+ # gateway attachment to a VPC][1] in the *Amazon Web Services Transit
11779
+ # Gateway Guide*.
11780
+ #
11781
+ #
11782
+ #
11783
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment
11784
+ # @return [String]
11785
+ #
11425
11786
  # @!attribute [rw] ipv_6_support
11426
11787
  # Enable or disable IPv6 support. The default is `disable`.
11427
11788
  # @return [String]
@@ -11437,6 +11798,7 @@ module Aws::EC2
11437
11798
  #
11438
11799
  class CreateTransitGatewayVpcAttachmentRequestOptions < Struct.new(
11439
11800
  :dns_support,
11801
+ :security_group_referencing_support,
11440
11802
  :ipv_6_support,
11441
11803
  :appliance_mode_support)
11442
11804
  SENSITIVE = []
@@ -13455,11 +13817,22 @@ module Aws::EC2
13455
13817
  # The ID of the pool to delete.
13456
13818
  # @return [String]
13457
13819
  #
13820
+ # @!attribute [rw] cascade
13821
+ # Enables you to quickly delete an IPAM pool and all resources within
13822
+ # that pool, including provisioned CIDRs, allocations, and other
13823
+ # pools.
13824
+ #
13825
+ # You can only use this option to delete pools in the private scope or
13826
+ # pools in the public scope with a source resource. A source resource
13827
+ # is a resource used to provision CIDRs to a resource planning pool.
13828
+ # @return [Boolean]
13829
+ #
13458
13830
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamPoolRequest AWS API Documentation
13459
13831
  #
13460
13832
  class DeleteIpamPoolRequest < Struct.new(
13461
13833
  :dry_run,
13462
- :ipam_pool_id)
13834
+ :ipam_pool_id,
13835
+ :cascade)
13463
13836
  SENSITIVE = []
13464
13837
  include Aws::Structure
13465
13838
  end
@@ -15506,6 +15879,43 @@ module Aws::EC2
15506
15879
  include Aws::Structure
15507
15880
  end
15508
15881
 
15882
+ # @!attribute [rw] dry_run
15883
+ # Checks whether you have the required permissions for the action,
15884
+ # without actually making the request, and provides an error response.
15885
+ # If you have the required permissions, the error response is
15886
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
15887
+ # @return [Boolean]
15888
+ #
15889
+ # @!attribute [rw] ipam_id
15890
+ # The IPAM ID.
15891
+ # @return [String]
15892
+ #
15893
+ # @!attribute [rw] asn
15894
+ # An ASN.
15895
+ # @return [String]
15896
+ #
15897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasnRequest AWS API Documentation
15898
+ #
15899
+ class DeprovisionIpamByoasnRequest < Struct.new(
15900
+ :dry_run,
15901
+ :ipam_id,
15902
+ :asn)
15903
+ SENSITIVE = []
15904
+ include Aws::Structure
15905
+ end
15906
+
15907
+ # @!attribute [rw] byoasn
15908
+ # An ASN and BYOIP CIDR association.
15909
+ # @return [Types::Byoasn]
15910
+ #
15911
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasnResult AWS API Documentation
15912
+ #
15913
+ class DeprovisionIpamByoasnResult < Struct.new(
15914
+ :byoasn)
15915
+ SENSITIVE = []
15916
+ include Aws::Structure
15917
+ end
15918
+
15509
15919
  # @!attribute [rw] dry_run
15510
15920
  # A check for whether you have the required permissions for the action
15511
15921
  # without actually making the request and provides an error response.
@@ -20395,6 +20805,51 @@ module Aws::EC2
20395
20805
  include Aws::Structure
20396
20806
  end
20397
20807
 
20808
+ # @!attribute [rw] dry_run
20809
+ # Checks whether you have the required permissions for the action,
20810
+ # without actually making the request, and provides an error response.
20811
+ # If you have the required permissions, the error response is
20812
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
20813
+ # @return [Boolean]
20814
+ #
20815
+ # @!attribute [rw] max_results
20816
+ # The maximum number of results to return with a single call. To
20817
+ # retrieve the remaining results, make another call with the returned
20818
+ # `nextToken` value.
20819
+ # @return [Integer]
20820
+ #
20821
+ # @!attribute [rw] next_token
20822
+ # The token for the next page of results.
20823
+ # @return [String]
20824
+ #
20825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasnRequest AWS API Documentation
20826
+ #
20827
+ class DescribeIpamByoasnRequest < Struct.new(
20828
+ :dry_run,
20829
+ :max_results,
20830
+ :next_token)
20831
+ SENSITIVE = []
20832
+ include Aws::Structure
20833
+ end
20834
+
20835
+ # @!attribute [rw] byoasns
20836
+ # ASN and BYOIP CIDR associations.
20837
+ # @return [Array<Types::Byoasn>]
20838
+ #
20839
+ # @!attribute [rw] next_token
20840
+ # The token to use to retrieve the next page of results. This value is
20841
+ # `null` when there are no more results to return.
20842
+ # @return [String]
20843
+ #
20844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasnResult AWS API Documentation
20845
+ #
20846
+ class DescribeIpamByoasnResult < Struct.new(
20847
+ :byoasns,
20848
+ :next_token)
20849
+ SENSITIVE = []
20850
+ include Aws::Structure
20851
+ end
20852
+
20398
20853
  # @!attribute [rw] dry_run
20399
20854
  # A check for whether you have the required permissions for the action
20400
20855
  # without actually making the request and provides an error response.
@@ -28724,6 +29179,43 @@ module Aws::EC2
28724
29179
  include Aws::Structure
28725
29180
  end
28726
29181
 
29182
+ # @!attribute [rw] dry_run
29183
+ # Checks whether you have the required permissions for the action,
29184
+ # without actually making the request, and provides an error response.
29185
+ # If you have the required permissions, the error response is
29186
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
29187
+ # @return [Boolean]
29188
+ #
29189
+ # @!attribute [rw] asn
29190
+ # A public 2-byte or 4-byte ASN.
29191
+ # @return [String]
29192
+ #
29193
+ # @!attribute [rw] cidr
29194
+ # A BYOIP CIDR.
29195
+ # @return [String]
29196
+ #
29197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasnRequest AWS API Documentation
29198
+ #
29199
+ class DisassociateIpamByoasnRequest < Struct.new(
29200
+ :dry_run,
29201
+ :asn,
29202
+ :cidr)
29203
+ SENSITIVE = []
29204
+ include Aws::Structure
29205
+ end
29206
+
29207
+ # @!attribute [rw] asn_association
29208
+ # An ASN and BYOIP CIDR association.
29209
+ # @return [Types::AsnAssociation]
29210
+ #
29211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasnResult AWS API Documentation
29212
+ #
29213
+ class DisassociateIpamByoasnResult < Struct.new(
29214
+ :asn_association)
29215
+ SENSITIVE = []
29216
+ include Aws::Structure
29217
+ end
29218
+
28727
29219
  # @!attribute [rw] dry_run
28728
29220
  # A check for whether you have the required permissions for the action
28729
29221
  # without actually making the request and provides an error response.
@@ -33994,6 +34486,70 @@ module Aws::EC2
33994
34486
  include Aws::Structure
33995
34487
  end
33996
34488
 
34489
+ # @!attribute [rw] dry_run
34490
+ # A check for whether you have the required permissions for the action
34491
+ # without actually making the request and provides an error response.
34492
+ # If you have the required permissions, the error response is
34493
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
34494
+ # @return [Boolean]
34495
+ #
34496
+ # @!attribute [rw] ipam_resource_discovery_id
34497
+ # An IPAM resource discovery ID.
34498
+ # @return [String]
34499
+ #
34500
+ # @!attribute [rw] address_region
34501
+ # The Amazon Web Services Region for the IP address.
34502
+ # @return [String]
34503
+ #
34504
+ # @!attribute [rw] filters
34505
+ # Filters.
34506
+ # @return [Array<Types::Filter>]
34507
+ #
34508
+ # @!attribute [rw] next_token
34509
+ # The token for the next page of results.
34510
+ # @return [String]
34511
+ #
34512
+ # @!attribute [rw] max_results
34513
+ # The maximum number of IPAM discovered public addresses to return in
34514
+ # one page of results.
34515
+ # @return [Integer]
34516
+ #
34517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddressesRequest AWS API Documentation
34518
+ #
34519
+ class GetIpamDiscoveredPublicAddressesRequest < Struct.new(
34520
+ :dry_run,
34521
+ :ipam_resource_discovery_id,
34522
+ :address_region,
34523
+ :filters,
34524
+ :next_token,
34525
+ :max_results)
34526
+ SENSITIVE = []
34527
+ include Aws::Structure
34528
+ end
34529
+
34530
+ # @!attribute [rw] ipam_discovered_public_addresses
34531
+ # IPAM discovered public addresses.
34532
+ # @return [Array<Types::IpamDiscoveredPublicAddress>]
34533
+ #
34534
+ # @!attribute [rw] oldest_sample_time
34535
+ # The oldest successful resource discovery time.
34536
+ # @return [Time]
34537
+ #
34538
+ # @!attribute [rw] next_token
34539
+ # The token to use to retrieve the next page of results. This value is
34540
+ # `null` when there are no more results to return.
34541
+ # @return [String]
34542
+ #
34543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddressesResult AWS API Documentation
34544
+ #
34545
+ class GetIpamDiscoveredPublicAddressesResult < Struct.new(
34546
+ :ipam_discovered_public_addresses,
34547
+ :oldest_sample_time,
34548
+ :next_token)
34549
+ SENSITIVE = []
34550
+ include Aws::Structure
34551
+ end
34552
+
33997
34553
  # @!attribute [rw] dry_run
33998
34554
  # A check for whether you have the required permissions for the action
33999
34555
  # without actually making the request and provides an error response.
@@ -37740,7 +38296,8 @@ module Aws::EC2
37740
38296
  # @return [Types::Placement]
37741
38297
  #
37742
38298
  # @!attribute [rw] platform
37743
- # The value is `Windows` for Windows instances; otherwise blank.
38299
+ # The platform. This value is `windows` for Windows instances;
38300
+ # otherwise, it is empty.
37744
38301
  # @return [String]
37745
38302
  #
37746
38303
  # @!attribute [rw] private_dns_name
@@ -38981,6 +39538,17 @@ module Aws::EC2
38981
39538
  # interface.
38982
39539
  # @return [Array<Types::InstanceIpv6Prefix>]
38983
39540
  #
39541
+ # @!attribute [rw] connection_tracking_configuration
39542
+ # A security group connection tracking configuration that enables you
39543
+ # to set the timeout for connection tracking on an Elastic network
39544
+ # interface. For more information, see [Connection tracking
39545
+ # timeouts][1] in the *Amazon Elastic Compute Cloud User Guide*.
39546
+ #
39547
+ #
39548
+ #
39549
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
39550
+ # @return [Types::ConnectionTrackingSpecificationResponse]
39551
+ #
38984
39552
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterface AWS API Documentation
38985
39553
  #
38986
39554
  class InstanceNetworkInterface < Struct.new(
@@ -39001,7 +39569,8 @@ module Aws::EC2
39001
39569
  :vpc_id,
39002
39570
  :interface_type,
39003
39571
  :ipv_4_prefixes,
39004
- :ipv_6_prefixes)
39572
+ :ipv_6_prefixes,
39573
+ :connection_tracking_configuration)
39005
39574
  SENSITIVE = []
39006
39575
  include Aws::Structure
39007
39576
  end
@@ -39259,6 +39828,17 @@ module Aws::EC2
39259
39828
  # attached to the instance.
39260
39829
  # @return [Types::EnaSrdSpecificationRequest]
39261
39830
  #
39831
+ # @!attribute [rw] connection_tracking_specification
39832
+ # A security group connection tracking specification that enables you
39833
+ # to set the timeout for connection tracking on an Elastic network
39834
+ # interface. For more information, see [Connection tracking
39835
+ # timeouts][1] in the *Amazon Elastic Compute Cloud User Guide*.
39836
+ #
39837
+ #
39838
+ #
39839
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
39840
+ # @return [Types::ConnectionTrackingSpecificationRequest]
39841
+ #
39262
39842
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceSpecification AWS API Documentation
39263
39843
  #
39264
39844
  class InstanceNetworkInterfaceSpecification < Struct.new(
@@ -39282,7 +39862,8 @@ module Aws::EC2
39282
39862
  :ipv_6_prefixes,
39283
39863
  :ipv_6_prefix_count,
39284
39864
  :primary_ipv_6,
39285
- :ena_srd_specification)
39865
+ :ena_srd_specification,
39866
+ :connection_tracking_specification)
39286
39867
  SENSITIVE = []
39287
39868
  include Aws::Structure
39288
39869
  end
@@ -40985,6 +41566,21 @@ module Aws::EC2
40985
41566
  # The IPAM's resource discovery association count.
40986
41567
  # @return [Integer]
40987
41568
  #
41569
+ # @!attribute [rw] state_message
41570
+ # The state message.
41571
+ # @return [String]
41572
+ #
41573
+ # @!attribute [rw] tier
41574
+ # IPAM is offered in a Free Tier and an Advanced Tier. For more
41575
+ # information about the features available in each tier and the costs
41576
+ # associated with the tiers, see [Amazon VPC pricing &gt; IPAM
41577
+ # tab][1].
41578
+ #
41579
+ #
41580
+ #
41581
+ # [1]: http://aws.amazon.com/vpc/pricing/
41582
+ # @return [String]
41583
+ #
40988
41584
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipam AWS API Documentation
40989
41585
  #
40990
41586
  class Ipam < Struct.new(
@@ -41001,7 +41597,9 @@ module Aws::EC2
41001
41597
  :tags,
41002
41598
  :default_resource_discovery_id,
41003
41599
  :default_resource_discovery_association_id,
41004
- :resource_discovery_association_count)
41600
+ :resource_discovery_association_count,
41601
+ :state_message,
41602
+ :tier)
41005
41603
  SENSITIVE = []
41006
41604
  include Aws::Structure
41007
41605
  end
@@ -41152,6 +41750,118 @@ module Aws::EC2
41152
41750
  include Aws::Structure
41153
41751
  end
41154
41752
 
41753
+ # A public IP Address discovered by IPAM.
41754
+ #
41755
+ # @!attribute [rw] ipam_resource_discovery_id
41756
+ # The resource discovery ID.
41757
+ # @return [String]
41758
+ #
41759
+ # @!attribute [rw] address_region
41760
+ # The Region of the resource the IP address is assigned to.
41761
+ # @return [String]
41762
+ #
41763
+ # @!attribute [rw] address
41764
+ # The IP address.
41765
+ # @return [String]
41766
+ #
41767
+ # @!attribute [rw] address_owner_id
41768
+ # The ID of the owner of the resource the IP address is assigned to.
41769
+ # @return [String]
41770
+ #
41771
+ # @!attribute [rw] address_allocation_id
41772
+ # The allocation ID of the resource the IP address is assigned to.
41773
+ # @return [String]
41774
+ #
41775
+ # @!attribute [rw] association_status
41776
+ # The association status.
41777
+ # @return [String]
41778
+ #
41779
+ # @!attribute [rw] address_type
41780
+ # The IP address type.
41781
+ # @return [String]
41782
+ #
41783
+ # @!attribute [rw] service
41784
+ # The Amazon Web Services service associated with the IP address.
41785
+ # @return [String]
41786
+ #
41787
+ # @!attribute [rw] service_resource
41788
+ # The resource ARN or ID.
41789
+ # @return [String]
41790
+ #
41791
+ # @!attribute [rw] vpc_id
41792
+ # The ID of the VPC that the resource with the assigned IP address is
41793
+ # in.
41794
+ # @return [String]
41795
+ #
41796
+ # @!attribute [rw] subnet_id
41797
+ # The ID of the subnet that the resource with the assigned IP address
41798
+ # is in.
41799
+ # @return [String]
41800
+ #
41801
+ # @!attribute [rw] public_ipv_4_pool_id
41802
+ # The ID of the public IPv4 pool that the resource with the assigned
41803
+ # IP address is from.
41804
+ # @return [String]
41805
+ #
41806
+ # @!attribute [rw] network_interface_id
41807
+ # The network interface ID of the resource with the assigned IP
41808
+ # address.
41809
+ # @return [String]
41810
+ #
41811
+ # @!attribute [rw] network_interface_description
41812
+ # The description of the network interface that IP address is assigned
41813
+ # to.
41814
+ # @return [String]
41815
+ #
41816
+ # @!attribute [rw] instance_id
41817
+ # The instance ID of the instance the assigned IP address is assigned
41818
+ # to.
41819
+ # @return [String]
41820
+ #
41821
+ # @!attribute [rw] tags
41822
+ # Tags associated with the IP address.
41823
+ # @return [Types::IpamPublicAddressTags]
41824
+ #
41825
+ # @!attribute [rw] network_border_group
41826
+ # The network border group that the resource that the IP address is
41827
+ # assigned to is in.
41828
+ # @return [String]
41829
+ #
41830
+ # @!attribute [rw] security_groups
41831
+ # Security groups associated with the resource that the IP address is
41832
+ # assigned to.
41833
+ # @return [Array<Types::IpamPublicAddressSecurityGroup>]
41834
+ #
41835
+ # @!attribute [rw] sample_time
41836
+ # The last successful resource discovery time.
41837
+ # @return [Time]
41838
+ #
41839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamDiscoveredPublicAddress AWS API Documentation
41840
+ #
41841
+ class IpamDiscoveredPublicAddress < Struct.new(
41842
+ :ipam_resource_discovery_id,
41843
+ :address_region,
41844
+ :address,
41845
+ :address_owner_id,
41846
+ :address_allocation_id,
41847
+ :association_status,
41848
+ :address_type,
41849
+ :service,
41850
+ :service_resource,
41851
+ :vpc_id,
41852
+ :subnet_id,
41853
+ :public_ipv_4_pool_id,
41854
+ :network_interface_id,
41855
+ :network_interface_description,
41856
+ :instance_id,
41857
+ :tags,
41858
+ :network_border_group,
41859
+ :security_groups,
41860
+ :sample_time)
41861
+ SENSITIVE = []
41862
+ include Aws::Structure
41863
+ end
41864
+
41155
41865
  # An IPAM discovered resource CIDR. A discovered resource is a resource
41156
41866
  # CIDR monitored under a resource discovery. The following resources can
41157
41867
  # be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP
@@ -41368,7 +42078,7 @@ module Aws::EC2
41368
42078
  # @return [String]
41369
42079
  #
41370
42080
  # @!attribute [rw] state_message
41371
- # A message related to the failed creation of an IPAM pool.
42081
+ # The state message.
41372
42082
  # @return [String]
41373
42083
  #
41374
42084
  # @!attribute [rw] description
@@ -41459,6 +42169,10 @@ module Aws::EC2
41459
42169
  # [2]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html
41460
42170
  # @return [String]
41461
42171
  #
42172
+ # @!attribute [rw] source_resource
42173
+ # The resource used to provision CIDRs to a resource planning pool.
42174
+ # @return [Types::IpamPoolSourceResource]
42175
+ #
41462
42176
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPool AWS API Documentation
41463
42177
  #
41464
42178
  class IpamPool < Struct.new(
@@ -41484,7 +42198,8 @@ module Aws::EC2
41484
42198
  :allocation_resource_tags,
41485
42199
  :tags,
41486
42200
  :aws_service,
41487
- :public_ip_source)
42201
+ :public_ip_source,
42202
+ :source_resource)
41488
42203
  SENSITIVE = []
41489
42204
  include Aws::Structure
41490
42205
  end
@@ -41598,6 +42313,116 @@ module Aws::EC2
41598
42313
  include Aws::Structure
41599
42314
  end
41600
42315
 
42316
+ # The resource used to provision CIDRs to a resource planning pool.
42317
+ #
42318
+ # @!attribute [rw] resource_id
42319
+ # The source resource ID.
42320
+ # @return [String]
42321
+ #
42322
+ # @!attribute [rw] resource_type
42323
+ # The source resource type.
42324
+ # @return [String]
42325
+ #
42326
+ # @!attribute [rw] resource_region
42327
+ # The source resource Region.
42328
+ # @return [String]
42329
+ #
42330
+ # @!attribute [rw] resource_owner
42331
+ # The source resource owner.
42332
+ # @return [String]
42333
+ #
42334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolSourceResource AWS API Documentation
42335
+ #
42336
+ class IpamPoolSourceResource < Struct.new(
42337
+ :resource_id,
42338
+ :resource_type,
42339
+ :resource_region,
42340
+ :resource_owner)
42341
+ SENSITIVE = []
42342
+ include Aws::Structure
42343
+ end
42344
+
42345
+ # The resource used to provision CIDRs to a resource planning pool.
42346
+ #
42347
+ # @!attribute [rw] resource_id
42348
+ # The source resource ID.
42349
+ # @return [String]
42350
+ #
42351
+ # @!attribute [rw] resource_type
42352
+ # The source resource type.
42353
+ # @return [String]
42354
+ #
42355
+ # @!attribute [rw] resource_region
42356
+ # The source resource Region.
42357
+ # @return [String]
42358
+ #
42359
+ # @!attribute [rw] resource_owner
42360
+ # The source resource owner.
42361
+ # @return [String]
42362
+ #
42363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolSourceResourceRequest AWS API Documentation
42364
+ #
42365
+ class IpamPoolSourceResourceRequest < Struct.new(
42366
+ :resource_id,
42367
+ :resource_type,
42368
+ :resource_region,
42369
+ :resource_owner)
42370
+ SENSITIVE = []
42371
+ include Aws::Structure
42372
+ end
42373
+
42374
+ # The security group that the resource with the public IP address is in.
42375
+ #
42376
+ # @!attribute [rw] group_name
42377
+ # The security group's name.
42378
+ # @return [String]
42379
+ #
42380
+ # @!attribute [rw] group_id
42381
+ # The security group's ID.
42382
+ # @return [String]
42383
+ #
42384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressSecurityGroup AWS API Documentation
42385
+ #
42386
+ class IpamPublicAddressSecurityGroup < Struct.new(
42387
+ :group_name,
42388
+ :group_id)
42389
+ SENSITIVE = []
42390
+ include Aws::Structure
42391
+ end
42392
+
42393
+ # A tag for a public IP address discovered by IPAM.
42394
+ #
42395
+ # @!attribute [rw] key
42396
+ # The tag's key.
42397
+ # @return [String]
42398
+ #
42399
+ # @!attribute [rw] value
42400
+ # The tag's value.
42401
+ # @return [String]
42402
+ #
42403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressTag AWS API Documentation
42404
+ #
42405
+ class IpamPublicAddressTag < Struct.new(
42406
+ :key,
42407
+ :value)
42408
+ SENSITIVE = []
42409
+ include Aws::Structure
42410
+ end
42411
+
42412
+ # Tags for a public IP address discovered by IPAM.
42413
+ #
42414
+ # @!attribute [rw] eip_tags
42415
+ # Tags for an Elastic IP address.
42416
+ # @return [Array<Types::IpamPublicAddressTag>]
42417
+ #
42418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressTags AWS API Documentation
42419
+ #
42420
+ class IpamPublicAddressTags < Struct.new(
42421
+ :eip_tags)
42422
+ SENSITIVE = []
42423
+ include Aws::Structure
42424
+ end
42425
+
41601
42426
  # The CIDR for an IPAM resource.
41602
42427
  #
41603
42428
  # @!attribute [rw] ipam_id
@@ -43469,6 +44294,17 @@ module Aws::EC2
43469
44294
  # launch template.
43470
44295
  # @return [Types::LaunchTemplateEnaSrdSpecification]
43471
44296
  #
44297
+ # @!attribute [rw] connection_tracking_specification
44298
+ # A security group connection tracking specification that enables you
44299
+ # to set the timeout for connection tracking on an Elastic network
44300
+ # interface. For more information, see [Connection tracking
44301
+ # timeouts][1] in the *Amazon Elastic Compute Cloud User Guide*.
44302
+ #
44303
+ #
44304
+ #
44305
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
44306
+ # @return [Types::ConnectionTrackingSpecification]
44307
+ #
43472
44308
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecification AWS API Documentation
43473
44309
  #
43474
44310
  class LaunchTemplateInstanceNetworkInterfaceSpecification < Struct.new(
@@ -43492,7 +44328,8 @@ module Aws::EC2
43492
44328
  :ipv_6_prefixes,
43493
44329
  :ipv_6_prefix_count,
43494
44330
  :primary_ipv_6,
43495
- :ena_srd_specification)
44331
+ :ena_srd_specification,
44332
+ :connection_tracking_specification)
43496
44333
  SENSITIVE = []
43497
44334
  include Aws::Structure
43498
44335
  end
@@ -43628,6 +44465,17 @@ module Aws::EC2
43628
44465
  # Configure ENA Express settings for your launch template.
43629
44466
  # @return [Types::EnaSrdSpecificationRequest]
43630
44467
  #
44468
+ # @!attribute [rw] connection_tracking_specification
44469
+ # A security group connection tracking specification that enables you
44470
+ # to set the timeout for connection tracking on an Elastic network
44471
+ # interface. For more information, see [Connection tracking
44472
+ # timeouts][1] in the *Amazon Elastic Compute Cloud User Guide*.
44473
+ #
44474
+ #
44475
+ #
44476
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
44477
+ # @return [Types::ConnectionTrackingSpecificationRequest]
44478
+ #
43631
44479
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest AWS API Documentation
43632
44480
  #
43633
44481
  class LaunchTemplateInstanceNetworkInterfaceSpecificationRequest < Struct.new(
@@ -43651,7 +44499,8 @@ module Aws::EC2
43651
44499
  :ipv_6_prefixes,
43652
44500
  :ipv_6_prefix_count,
43653
44501
  :primary_ipv_6,
43654
- :ena_srd_specification)
44502
+ :ena_srd_specification,
44503
+ :connection_tracking_specification)
43655
44504
  SENSITIVE = []
43656
44505
  include Aws::Structure
43657
44506
  end
@@ -46804,6 +47653,17 @@ module Aws::EC2
46804
47653
  # The operating Regions to remove.
46805
47654
  # @return [Array<Types::RemoveIpamOperatingRegion>]
46806
47655
  #
47656
+ # @!attribute [rw] tier
47657
+ # IPAM is offered in a Free Tier and an Advanced Tier. For more
47658
+ # information about the features available in each tier and the costs
47659
+ # associated with the tiers, see [Amazon VPC pricing &gt; IPAM
47660
+ # tab][1].
47661
+ #
47662
+ #
47663
+ #
47664
+ # [1]: http://aws.amazon.com/vpc/pricing/
47665
+ # @return [String]
47666
+ #
46807
47667
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamRequest AWS API Documentation
46808
47668
  #
46809
47669
  class ModifyIpamRequest < Struct.new(
@@ -46811,7 +47671,8 @@ module Aws::EC2
46811
47671
  :ipam_id,
46812
47672
  :description,
46813
47673
  :add_operating_regions,
46814
- :remove_operating_regions)
47674
+ :remove_operating_regions,
47675
+ :tier)
46815
47676
  SENSITIVE = []
46816
47677
  include Aws::Structure
46817
47678
  end
@@ -47218,6 +48079,10 @@ module Aws::EC2
47218
48079
  # ENI becomes the primary IPv6 address.
47219
48080
  # @return [Boolean]
47220
48081
  #
48082
+ # @!attribute [rw] connection_tracking_specification
48083
+ # A connection tracking specification.
48084
+ # @return [Types::ConnectionTrackingSpecificationRequest]
48085
+ #
47221
48086
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyNetworkInterfaceAttributeRequest AWS API Documentation
47222
48087
  #
47223
48088
  class ModifyNetworkInterfaceAttributeRequest < Struct.new(
@@ -47228,7 +48093,8 @@ module Aws::EC2
47228
48093
  :network_interface_id,
47229
48094
  :source_dest_check,
47230
48095
  :ena_srd_specification,
47231
- :enable_primary_ipv_6)
48096
+ :enable_primary_ipv_6,
48097
+ :connection_tracking_specification)
47232
48098
  SENSITIVE = []
47233
48099
  include Aws::Structure
47234
48100
  end
@@ -47849,6 +48715,24 @@ module Aws::EC2
47849
48715
  # Enable or disable DNS support.
47850
48716
  # @return [String]
47851
48717
  #
48718
+ # @!attribute [rw] security_group_referencing_support
48719
+ # Enables you to reference a security group across VPCs attached to a
48720
+ # transit gateway (TGW). Use this option to simplify security group
48721
+ # management and control of instance-to-instance traffic across VPCs
48722
+ # that are connected by transit gateway. You can also use this option
48723
+ # to migrate from VPC peering (which was the only option that
48724
+ # supported security group referencing) to transit gateways (which now
48725
+ # also support security group referencing). This option is disabled by
48726
+ # default and there are no additional costs to use this feature.
48727
+ #
48728
+ # For important information about this feature, see [Create a transit
48729
+ # gateway][1] in the *Amazon Web Services Transit Gateway Guide*.
48730
+ #
48731
+ #
48732
+ #
48733
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw
48734
+ # @return [String]
48735
+ #
47852
48736
  # @!attribute [rw] auto_accept_shared_attachments
47853
48737
  # Enable or disable automatic acceptance of attachment requests.
47854
48738
  # @return [String]
@@ -47889,6 +48773,7 @@ module Aws::EC2
47889
48773
  :remove_transit_gateway_cidr_blocks,
47890
48774
  :vpn_ecmp_support,
47891
48775
  :dns_support,
48776
+ :security_group_referencing_support,
47892
48777
  :auto_accept_shared_attachments,
47893
48778
  :default_route_table_association,
47894
48779
  :association_default_route_table_id,
@@ -48030,6 +48915,25 @@ module Aws::EC2
48030
48915
  # Enable or disable DNS support. The default is `enable`.
48031
48916
  # @return [String]
48032
48917
  #
48918
+ # @!attribute [rw] security_group_referencing_support
48919
+ # Enables you to reference a security group across VPCs attached to a
48920
+ # transit gateway (TGW). Use this option to simplify security group
48921
+ # management and control of instance-to-instance traffic across VPCs
48922
+ # that are connected by transit gateway. You can also use this option
48923
+ # to migrate from VPC peering (which was the only option that
48924
+ # supported security group referencing) to transit gateways (which now
48925
+ # also support security group referencing). This option is disabled by
48926
+ # default and there are no additional costs to use this feature.
48927
+ #
48928
+ # For important information about this feature, see [Create a transit
48929
+ # gateway attachment to a VPC][1] in the *Amazon Web Services Transit
48930
+ # Gateway Guide*.
48931
+ #
48932
+ #
48933
+ #
48934
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment
48935
+ # @return [String]
48936
+ #
48033
48937
  # @!attribute [rw] ipv_6_support
48034
48938
  # Enable or disable IPv6 support. The default is `enable`.
48035
48939
  # @return [String]
@@ -48045,6 +48949,7 @@ module Aws::EC2
48045
48949
  #
48046
48950
  class ModifyTransitGatewayVpcAttachmentRequestOptions < Struct.new(
48047
48951
  :dns_support,
48952
+ :security_group_referencing_support,
48048
48953
  :ipv_6_support,
48049
48954
  :appliance_mode_support)
48050
48955
  SENSITIVE = []
@@ -50531,6 +51436,17 @@ module Aws::EC2
50531
51436
  # The Availability Zone.
50532
51437
  # @return [String]
50533
51438
  #
51439
+ # @!attribute [rw] connection_tracking_configuration
51440
+ # A security group connection tracking configuration that enables you
51441
+ # to set the timeout for connection tracking on an Elastic network
51442
+ # interface. For more information, see [Connection tracking
51443
+ # timeouts][1] in the *Amazon Elastic Compute Cloud User Guide*.
51444
+ #
51445
+ #
51446
+ #
51447
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
51448
+ # @return [Types::ConnectionTrackingConfiguration]
51449
+ #
50534
51450
  # @!attribute [rw] description
50535
51451
  # A description.
50536
51452
  # @return [String]
@@ -50638,6 +51554,7 @@ module Aws::EC2
50638
51554
  :association,
50639
51555
  :attachment,
50640
51556
  :availability_zone,
51557
+ :connection_tracking_configuration,
50641
51558
  :description,
50642
51559
  :groups,
50643
51560
  :interface_type,
@@ -52476,6 +53393,48 @@ module Aws::EC2
52476
53393
  include Aws::Structure
52477
53394
  end
52478
53395
 
53396
+ # @!attribute [rw] dry_run
53397
+ # Checks whether you have the required permissions for the action,
53398
+ # without actually making the request, and provides an error response.
53399
+ # If you have the required permissions, the error response is
53400
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
53401
+ # @return [Boolean]
53402
+ #
53403
+ # @!attribute [rw] ipam_id
53404
+ # An IPAM ID.
53405
+ # @return [String]
53406
+ #
53407
+ # @!attribute [rw] asn
53408
+ # A public 2-byte or 4-byte ASN.
53409
+ # @return [String]
53410
+ #
53411
+ # @!attribute [rw] asn_authorization_context
53412
+ # An ASN authorization context.
53413
+ # @return [Types::AsnAuthorizationContext]
53414
+ #
53415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasnRequest AWS API Documentation
53416
+ #
53417
+ class ProvisionIpamByoasnRequest < Struct.new(
53418
+ :dry_run,
53419
+ :ipam_id,
53420
+ :asn,
53421
+ :asn_authorization_context)
53422
+ SENSITIVE = []
53423
+ include Aws::Structure
53424
+ end
53425
+
53426
+ # @!attribute [rw] byoasn
53427
+ # An ASN and BYOIP CIDR association.
53428
+ # @return [Types::Byoasn]
53429
+ #
53430
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasnResult AWS API Documentation
53431
+ #
53432
+ class ProvisionIpamByoasnResult < Struct.new(
53433
+ :byoasn)
53434
+ SENSITIVE = []
53435
+ include Aws::Structure
53436
+ end
53437
+
52479
53438
  # @!attribute [rw] dry_run
52480
53439
  # A check for whether you have the required permissions for the action
52481
53440
  # without actually making the request and provides an error response.
@@ -53139,7 +54098,7 @@ module Aws::EC2
53139
54098
  # @return [String]
53140
54099
  #
53141
54100
  # @!attribute [rw] vpc_peering_connection_id
53142
- # The ID of the VPC peering connection.
54101
+ # The ID of the VPC peering connection (if applicable).
53143
54102
  # @return [String]
53144
54103
  #
53145
54104
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReferencedSecurityGroup AWS API Documentation
@@ -58569,7 +59528,25 @@ module Aws::EC2
58569
59528
  # @return [String]
58570
59529
  #
58571
59530
  # @!attribute [rw] vpc_peering_connection_id
58572
- # The ID of the VPC peering connection.
59531
+ # The ID of the VPC peering connection (if applicable). For more
59532
+ # information about security group referencing for peering
59533
+ # connections, see [Update your security groups to reference peer
59534
+ # security groups][1] in the *VPC Peering Guide*.
59535
+ #
59536
+ #
59537
+ #
59538
+ # [1]: https://docs.aws.amazon.com/peering/vpc-peering-security-groups.html
59539
+ # @return [String]
59540
+ #
59541
+ # @!attribute [rw] transit_gateway_id
59542
+ # The ID of the transit gateway (if applicable). For more information
59543
+ # about security group referencing for transit gateways, see [Create a
59544
+ # transit gateway attachment to a VPC][1] in the *Amazon Web Services
59545
+ # Transit Gateway Guide*.
59546
+ #
59547
+ #
59548
+ #
59549
+ # [1]: https://docs.aws.amazon.com/tgw/tgw-vpc-attachments.html#create-vpc-attachment
58573
59550
  # @return [String]
58574
59551
  #
58575
59552
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupReference AWS API Documentation
@@ -58577,7 +59554,8 @@ module Aws::EC2
58577
59554
  class SecurityGroupReference < Struct.new(
58578
59555
  :group_id,
58579
59556
  :referencing_vpc_id,
58580
- :vpc_peering_connection_id)
59557
+ :vpc_peering_connection_id,
59558
+ :transit_gateway_id)
58581
59559
  SENSITIVE = []
58582
59560
  include Aws::Structure
58583
59561
  end
@@ -63212,6 +64190,24 @@ module Aws::EC2
63212
64190
  # Indicates whether DNS support is enabled.
63213
64191
  # @return [String]
63214
64192
  #
64193
+ # @!attribute [rw] security_group_referencing_support
64194
+ # Enables you to reference a security group across VPCs attached to a
64195
+ # transit gateway (TGW). Use this option to simplify security group
64196
+ # management and control of instance-to-instance traffic across VPCs
64197
+ # that are connected by transit gateway. You can also use this option
64198
+ # to migrate from VPC peering (which was the only option that
64199
+ # supported security group referencing) to transit gateways (which now
64200
+ # also support security group referencing). This option is disabled by
64201
+ # default and there are no additional costs to use this feature.
64202
+ #
64203
+ # For important information about this feature, see [Create a transit
64204
+ # gateway][1] in the *Amazon Web Services Transit Gateway Guide*.
64205
+ #
64206
+ #
64207
+ #
64208
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw
64209
+ # @return [String]
64210
+ #
63215
64211
  # @!attribute [rw] multicast_support
63216
64212
  # Indicates whether multicast is enabled on the transit gateway
63217
64213
  # @return [String]
@@ -63228,6 +64224,7 @@ module Aws::EC2
63228
64224
  :propagation_default_route_table_id,
63229
64225
  :vpn_ecmp_support,
63230
64226
  :dns_support,
64227
+ :security_group_referencing_support,
63231
64228
  :multicast_support)
63232
64229
  SENSITIVE = []
63233
64230
  include Aws::Structure
@@ -63593,6 +64590,24 @@ module Aws::EC2
63593
64590
  # Enable or disable DNS support. Enabled by default.
63594
64591
  # @return [String]
63595
64592
  #
64593
+ # @!attribute [rw] security_group_referencing_support
64594
+ # Enables you to reference a security group across VPCs attached to a
64595
+ # transit gateway (TGW). Use this option to simplify security group
64596
+ # management and control of instance-to-instance traffic across VPCs
64597
+ # that are connected by transit gateway. You can also use this option
64598
+ # to migrate from VPC peering (which was the only option that
64599
+ # supported security group referencing) to transit gateways (which now
64600
+ # also support security group referencing). This option is disabled by
64601
+ # default and there are no additional costs to use this feature.
64602
+ #
64603
+ # For important information about this feature, see [Create a transit
64604
+ # gateway][1] in the *Amazon Web Services Transit Gateway Guide*.
64605
+ #
64606
+ #
64607
+ #
64608
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-transit-gateways.html#create-tgw
64609
+ # @return [String]
64610
+ #
63596
64611
  # @!attribute [rw] multicast_support
63597
64612
  # Indicates whether multicast is enabled on the transit gateway
63598
64613
  # @return [String]
@@ -63612,6 +64627,7 @@ module Aws::EC2
63612
64627
  :default_route_table_propagation,
63613
64628
  :vpn_ecmp_support,
63614
64629
  :dns_support,
64630
+ :security_group_referencing_support,
63615
64631
  :multicast_support,
63616
64632
  :transit_gateway_cidr_blocks)
63617
64633
  SENSITIVE = []
@@ -63969,6 +64985,16 @@ module Aws::EC2
63969
64985
  # Indicates whether DNS support is enabled.
63970
64986
  # @return [String]
63971
64987
  #
64988
+ # @!attribute [rw] security_group_referencing_support
64989
+ # For important information about this feature, see [Create a transit
64990
+ # gateway attachment to a VPC][1] in the *Amazon Web Services Transit
64991
+ # Gateway Guide*.
64992
+ #
64993
+ #
64994
+ #
64995
+ # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#create-vpc-attachment
64996
+ # @return [String]
64997
+ #
63972
64998
  # @!attribute [rw] ipv_6_support
63973
64999
  # Indicates whether IPv6 support is disabled.
63974
65000
  # @return [String]
@@ -63981,17 +65007,13 @@ module Aws::EC2
63981
65007
  #
63982
65008
  class TransitGatewayVpcAttachmentOptions < Struct.new(
63983
65009
  :dns_support,
65010
+ :security_group_referencing_support,
63984
65011
  :ipv_6_support,
63985
65012
  :appliance_mode_support)
63986
65013
  SENSITIVE = []
63987
65014
  include Aws::Structure
63988
65015
  end
63989
65016
 
63990
- # <note markdown="1"> Currently available in **limited preview only**. If you are interested
63991
- # in using this feature, contact your account manager.
63992
- #
63993
- # </note>
63994
- #
63995
65017
  # Information about an association between a branch network interface
63996
65018
  # with a trunk network interface.
63997
65019
  #