aws-sdk-ec2 1.51.0 → 1.52.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0136763a09af254e80da9c9c408c160d8f8d2450
4
- data.tar.gz: 805015596188e623dd4f76258a527ce4536bd3f5
3
+ metadata.gz: 9a72cf1c96e416ea2a03e494714828e8e5b6d076
4
+ data.tar.gz: ddea2d2438032cfbe6f0d9d45f5d7850bd885919
5
5
  SHA512:
6
- metadata.gz: '08a633cd76d760f606a2ad4f8288f0923af0cf8b449a26a3c992374c2b1c966d04c2dd5bac26ac3530b8747196eeeaaf1237e3246d1070194b9c556ffe3fe8b1'
7
- data.tar.gz: 96d9bb2765c1d6de8baa9c90eedc7988b3bba182565380d03bdd2f403bd7faa8888f783e977529307c1e830dee061ac12b5f809c680f33cf593c3fb2b5f1c52e
6
+ metadata.gz: 56c0e57fd715064869fe8706f9525303f708691ce3c51c7d70475e1883e84b06c6d7f88504574a06535f82fdb8b1982c49ad953aa85bde9140112727098affa7
7
+ data.tar.gz: b9351f46e0335af69c8d014e025171b173a67f07afa0eec1fd256c05765199b6b4e1052c6b737452325a7033b3041c0cfca0cf3062708e7103dc61f4531ef188
@@ -65,6 +65,6 @@ require_relative 'aws-sdk-ec2/customizations'
65
65
  # @service
66
66
  module Aws::EC2
67
67
 
68
- GEM_VERSION = '1.51.0'
68
+ GEM_VERSION = '1.52.0'
69
69
 
70
70
  end
@@ -81,6 +81,12 @@ module Aws::EC2
81
81
  data[:tags]
82
82
  end
83
83
 
84
+ # The ID of an address pool.
85
+ # @return [String]
86
+ def public_ipv_4_pool
87
+ data[:public_ipv_4_pool]
88
+ end
89
+
84
90
  # @!endgroup
85
91
 
86
92
  # @return [Client]
@@ -100,19 +100,19 @@ module Aws::EC2
100
100
  #
101
101
  # @option options [String] :access_key_id
102
102
  #
103
- # @option options [] :client_side_monitoring (false)
103
+ # @option options [Boolean] :client_side_monitoring (false)
104
104
  # When `true`, client-side metrics will be collected for all API requests from
105
105
  # this client.
106
106
  #
107
- # @option options [] :client_side_monitoring_client_id ("")
107
+ # @option options [String] :client_side_monitoring_client_id ("")
108
108
  # Allows you to provide an identifier for this client which will be attached to
109
109
  # all generated client side metrics. Defaults to an empty string.
110
110
  #
111
- # @option options [] :client_side_monitoring_port (31000)
111
+ # @option options [Integer] :client_side_monitoring_port (31000)
112
112
  # Required for publishing client metrics. The port that the client side monitoring
113
113
  # agent is running on, where client metrics will be published via UDP.
114
114
  #
115
- # @option options [] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
115
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
116
116
  # Allows you to provide a custom client-side monitoring publisher class. By default,
117
117
  # will use the Client Side Monitoring Agent Publisher.
118
118
  #
@@ -340,12 +340,72 @@ module Aws::EC2
340
340
  req.send_request(options)
341
341
  end
342
342
 
343
+ # Advertises an IPv4 address range that is provisioned for use with your
344
+ # AWS resources through bring your own IP addresses (BYOIP).
345
+ #
346
+ # You can perform this operation at most once every 10 seconds, even if
347
+ # you specify different address ranges each time.
348
+ #
349
+ # We recommend that you stop advertising the BYOIP CIDR from other
350
+ # locations when you advertise it from AWS. To minimize down time, you
351
+ # can configure your AWS resources to use an address from a BYOIP CIDR
352
+ # before it is advertised, and then simultaneously stop advertising it
353
+ # from the current location and start advertising it through AWS.
354
+ #
355
+ # It can take a few minutes before traffic to the specified addresses
356
+ # starts routing to AWS because of BGP propagation delays.
357
+ #
358
+ # To stop advertising the BYOIP CIDR, use WithdrawByoipCidr.
359
+ #
360
+ # @option params [required, String] :cidr
361
+ # The IPv4 address range, in CIDR notation.
362
+ #
363
+ # @option params [Boolean] :dry_run
364
+ # Checks whether you have the required permissions for the action,
365
+ # without actually making the request, and provides an error response.
366
+ # If you have the required permissions, the error response is
367
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
368
+ #
369
+ # @return [Types::AdvertiseByoipCidrResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
+ #
371
+ # * {Types::AdvertiseByoipCidrResult#byoip_cidr #byoip_cidr} => Types::ByoipCidr
372
+ #
373
+ # @example Request syntax with placeholder values
374
+ #
375
+ # resp = client.advertise_byoip_cidr({
376
+ # cidr: "String", # required
377
+ # dry_run: false,
378
+ # })
379
+ #
380
+ # @example Response structure
381
+ #
382
+ # resp.byoip_cidr.cidr #=> String
383
+ # resp.byoip_cidr.description #=> String
384
+ # resp.byoip_cidr.status_message #=> String
385
+ # resp.byoip_cidr.state #=> String, one of "advertised", "deprovisioned", "failed-deprovision", "failed-provision", "pending-deprovision", "pending-provision", "provisioned"
386
+ #
387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdvertiseByoipCidr AWS API Documentation
388
+ #
389
+ # @overload advertise_byoip_cidr(params = {})
390
+ # @param [Hash] params ({})
391
+ def advertise_byoip_cidr(params = {}, options = {})
392
+ req = build_request(:advertise_byoip_cidr, params)
393
+ req.send_request(options)
394
+ end
395
+
343
396
  # Allocates an Elastic IP address to your AWS account. After you
344
397
  # allocate the Elastic IP address you can associate it with an instance
345
398
  # or network interface. After you release an Elastic IP address, it is
346
399
  # released to the IP address pool and can be allocated to a different
347
400
  # AWS account.
348
401
  #
402
+ # You can allocate an Elastic IP address from an address pool owned by
403
+ # AWS or from an address pool created from a public IPv4 address range
404
+ # that you have brought to AWS for use with your AWS resources using
405
+ # bring your own IP addresses (BYOIP). For more information, see [Bring
406
+ # Your Own IP Addresses (BYOIP)][1] in the *Amazon Elastic Compute Cloud
407
+ # User Guide*.
408
+ #
349
409
  # \[EC2-VPC\] If you release an Elastic IP address, you might be able to
350
410
  # recover it. You cannot recover an Elastic IP address that you released
351
411
  # after it is allocated to another AWS account. You cannot recover an
@@ -357,12 +417,13 @@ module Aws::EC2
357
417
  # EC2-Classic per region and 5 Elastic IP addresses for EC2-VPC per
358
418
  # region.
359
419
  #
360
- # For more information, see [Elastic IP Addresses][1] in the *Amazon
420
+ # For more information, see [Elastic IP Addresses][2] in the *Amazon
361
421
  # Elastic Compute Cloud User Guide*.
362
422
  #
363
423
  #
364
424
  #
365
- # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html
425
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html
426
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html
366
427
  #
367
428
  # @option params [String] :domain
368
429
  # Set to `vpc` to allocate the address for use with instances in a VPC.
@@ -370,7 +431,14 @@ module Aws::EC2
370
431
  # Default: The address is for use with instances in EC2-Classic.
371
432
  #
372
433
  # @option params [String] :address
373
- # \[EC2-VPC\] The Elastic IP address to recover.
434
+ # \[EC2-VPC\] The Elastic IP address to recover or an IPv4 address from
435
+ # an address pool.
436
+ #
437
+ # @option params [String] :public_ipv_4_pool
438
+ # The ID of an address pool that you own. Use this parameter to let
439
+ # Amazon EC2 select an address from the address pool. To specify a
440
+ # specific address from the address pool, use the `Address` parameter
441
+ # instead.
374
442
  #
375
443
  # @option params [Boolean] :dry_run
376
444
  # Checks whether you have the required permissions for the action,
@@ -382,6 +450,7 @@ module Aws::EC2
382
450
  #
383
451
  # * {Types::AllocateAddressResult#public_ip #public_ip} => String
384
452
  # * {Types::AllocateAddressResult#allocation_id #allocation_id} => String
453
+ # * {Types::AllocateAddressResult#public_ipv_4_pool #public_ipv_4_pool} => String
385
454
  # * {Types::AllocateAddressResult#domain #domain} => String
386
455
  #
387
456
  #
@@ -418,6 +487,7 @@ module Aws::EC2
418
487
  # resp = client.allocate_address({
419
488
  # domain: "vpc", # accepts vpc, standard
420
489
  # address: "String",
490
+ # public_ipv_4_pool: "String",
421
491
  # dry_run: false,
422
492
  # })
423
493
  #
@@ -425,6 +495,7 @@ module Aws::EC2
425
495
  #
426
496
  # resp.public_ip #=> String
427
497
  # resp.allocation_id #=> String
498
+ # resp.public_ipv_4_pool #=> String
428
499
  # resp.domain #=> String, one of "vpc", "standard"
429
500
  #
430
501
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddress AWS API Documentation
@@ -566,16 +637,25 @@ module Aws::EC2
566
637
  end
567
638
 
568
639
  # Assigns one or more secondary private IP addresses to the specified
569
- # network interface. You can specify one or more specific secondary IP
570
- # addresses, or you can specify the number of secondary IP addresses to
571
- # be automatically assigned within the subnet's CIDR block range. The
572
- # number of secondary IP addresses that you can assign to an instance
573
- # varies by instance type. For information about instance types, see
574
- # [Instance Types][1] in the *Amazon Elastic Compute Cloud User Guide*.
575
- # For more information about Elastic IP addresses, see [Elastic IP
576
- # Addresses][2] in the *Amazon Elastic Compute Cloud User Guide*.
640
+ # network interface.
641
+ #
642
+ # You can specify one or more specific secondary IP addresses, or you
643
+ # can specify the number of secondary IP addresses to be automatically
644
+ # assigned within the subnet's CIDR block range. The number of
645
+ # secondary IP addresses that you can assign to an instance varies by
646
+ # instance type. For information about instance types, see [Instance
647
+ # Types][1] in the *Amazon Elastic Compute Cloud User Guide*. For more
648
+ # information about Elastic IP addresses, see [Elastic IP Addresses][2]
649
+ # in the *Amazon Elastic Compute Cloud User Guide*.
577
650
  #
578
- # AssignPrivateIpAddresses is available only in EC2-VPC.
651
+ # When you move a secondary private IP address to another network
652
+ # interface, any Elastic IP address that is associated with the IP
653
+ # address is also moved.
654
+ #
655
+ # Remapping an IP address is an asynchronous operation. When you move an
656
+ # IP address from one network interface to another, check
657
+ # `network/interfaces/macs/mac/local-ipv4s` in the instance metadata to
658
+ # confirm that the remapping is complete.
579
659
  #
580
660
  #
581
661
  #
@@ -4540,8 +4620,8 @@ module Aws::EC2
4540
4620
  #
4541
4621
  # @option params [Types::IcmpTypeCode] :icmp_type_code
4542
4622
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
4543
- # specifying the ICMP protocol, or protocol 58 (ICMPv6) with an IPv6
4544
- # CIDR block.
4623
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR
4624
+ # block.
4545
4625
  #
4546
4626
  # @option params [String] :ipv_6_cidr_block
4547
4627
  # The IPv6 network range to allow or deny, in CIDR notation (for example
@@ -4551,17 +4631,18 @@ module Aws::EC2
4551
4631
  # The ID of the network ACL.
4552
4632
  #
4553
4633
  # @option params [Types::PortRange] :port_range
4554
- # TCP or UDP protocols: The range of ports the rule applies to.
4634
+ # TCP or UDP protocols: The range of ports the rule applies to. Required
4635
+ # if specifying protocol 6 (TCP) or 17 (UDP).
4555
4636
  #
4556
4637
  # @option params [required, String] :protocol
4557
- # The protocol. A value of `-1` or `all` means all protocols. If you
4558
- # specify `all`, `-1`, or a protocol number other than `6` (tcp), `17`
4559
- # (udp), or `1` (icmp), traffic on all ports is allowed, regardless of
4638
+ # The protocol number. A value of "-1" means all protocols. If you
4639
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
4640
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of
4560
4641
  # any ports or ICMP types or codes that you specify. If you specify
4561
- # protocol `58` (ICMPv6) and specify an IPv4 CIDR block, traffic for all
4562
- # ICMP types and codes allowed, regardless of any that you specify. If
4563
- # you specify protocol `58` (ICMPv6) and specify an IPv6 CIDR block, you
4564
- # must specify an ICMP type and code.
4642
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
4643
+ # all ICMP types and codes allowed, regardless of any that you specify.
4644
+ # If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR
4645
+ # block, you must specify an ICMP type and code.
4565
4646
  #
4566
4647
  # @option params [required, String] :rule_action
4567
4648
  # Indicates whether to allow or deny the traffic that matches the rule.
@@ -4589,7 +4670,7 @@ module Aws::EC2
4589
4670
  # from: 53,
4590
4671
  # to: 53,
4591
4672
  # },
4592
- # protocol: "udp",
4673
+ # protocol: "17",
4593
4674
  # rule_action: "allow",
4594
4675
  # rule_number: 100,
4595
4676
  # })
@@ -5712,7 +5793,7 @@ module Aws::EC2
5712
5793
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
5713
5794
  #
5714
5795
  # @option params [required, Array<String>] :resources
5715
- # The IDs of one or more resources to tag. For example, ami-1a2b3c4d.
5796
+ # The IDs of one or more resources, separated by spaces.
5716
5797
  #
5717
5798
  # @option params [required, Array<Types::Tag>] :tags
5718
5799
  # One or more tags. The `value` parameter is required, but if you don't
@@ -7757,7 +7838,7 @@ module Aws::EC2
7757
7838
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7758
7839
  #
7759
7840
  # @option params [required, Array<String>] :resources
7760
- # The IDs of one or more resources.
7841
+ # The IDs of one or more resources, separated by spaces.
7761
7842
  #
7762
7843
  # @option params [Array<Types::Tag>] :tags
7763
7844
  # One or more tags to delete. Specify a tag key and an optional tag
@@ -8169,6 +8250,52 @@ module Aws::EC2
8169
8250
  req.send_request(options)
8170
8251
  end
8171
8252
 
8253
+ # Releases the specified address range that you provisioned for use with
8254
+ # your AWS resources through bring your own IP addresses (BYOIP) and
8255
+ # deletes the corresponding address pool.
8256
+ #
8257
+ # Before you can release an address range, you must stop advertising it
8258
+ # using WithdrawByoipCidr and you must not have any IP addresses
8259
+ # allocated from its address range.
8260
+ #
8261
+ # @option params [required, String] :cidr
8262
+ # The public IPv4 address range, in CIDR notation. The prefix must be
8263
+ # the same prefix that you specified when you provisioned the address
8264
+ # range.
8265
+ #
8266
+ # @option params [Boolean] :dry_run
8267
+ # Checks whether you have the required permissions for the action,
8268
+ # without actually making the request, and provides an error response.
8269
+ # If you have the required permissions, the error response is
8270
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8271
+ #
8272
+ # @return [Types::DeprovisionByoipCidrResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8273
+ #
8274
+ # * {Types::DeprovisionByoipCidrResult#byoip_cidr #byoip_cidr} => Types::ByoipCidr
8275
+ #
8276
+ # @example Request syntax with placeholder values
8277
+ #
8278
+ # resp = client.deprovision_byoip_cidr({
8279
+ # cidr: "String", # required
8280
+ # dry_run: false,
8281
+ # })
8282
+ #
8283
+ # @example Response structure
8284
+ #
8285
+ # resp.byoip_cidr.cidr #=> String
8286
+ # resp.byoip_cidr.description #=> String
8287
+ # resp.byoip_cidr.status_message #=> String
8288
+ # resp.byoip_cidr.state #=> String, one of "advertised", "deprovisioned", "failed-deprovision", "failed-provision", "pending-deprovision", "pending-provision", "provisioned"
8289
+ #
8290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionByoipCidr AWS API Documentation
8291
+ #
8292
+ # @overload deprovision_byoip_cidr(params = {})
8293
+ # @param [Hash] params ({})
8294
+ def deprovision_byoip_cidr(params = {}, options = {})
8295
+ req = build_request(:deprovision_byoip_cidr, params)
8296
+ req.send_request(options)
8297
+ end
8298
+
8172
8299
  # Deregisters the specified AMI. After you deregister an AMI, it can't
8173
8300
  # be used to launch new instances; however, it doesn't affect any
8174
8301
  # instances that you've already launched from the AMI. You'll continue
@@ -8533,6 +8660,7 @@ module Aws::EC2
8533
8660
  # resp.addresses[0].tags #=> Array
8534
8661
  # resp.addresses[0].tags[0].key #=> String
8535
8662
  # resp.addresses[0].tags[0].value #=> String
8663
+ # resp.addresses[0].public_ipv_4_pool #=> String
8536
8664
  #
8537
8665
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddresses AWS API Documentation
8538
8666
  #
@@ -8801,6 +8929,57 @@ module Aws::EC2
8801
8929
  req.send_request(options)
8802
8930
  end
8803
8931
 
8932
+ # Describes the IP address ranges that were specified in calls to
8933
+ # ProvisionByoipCidr.
8934
+ #
8935
+ # To describe the address pools that were created when you provisioned
8936
+ # the address ranges, use DescribePublicIpv4Pools.
8937
+ #
8938
+ # @option params [Boolean] :dry_run
8939
+ # Checks whether you have the required permissions for the action,
8940
+ # without actually making the request, and provides an error response.
8941
+ # If you have the required permissions, the error response is
8942
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
8943
+ #
8944
+ # @option params [required, Integer] :max_results
8945
+ # The maximum number of results to return with a single call. To
8946
+ # retrieve the remaining results, make another call with the returned
8947
+ # `nextToken` value.
8948
+ #
8949
+ # @option params [String] :next_token
8950
+ # The token for the next page of results.
8951
+ #
8952
+ # @return [Types::DescribeByoipCidrsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8953
+ #
8954
+ # * {Types::DescribeByoipCidrsResult#byoip_cidrs #byoip_cidrs} => Array&lt;Types::ByoipCidr&gt;
8955
+ # * {Types::DescribeByoipCidrsResult#next_token #next_token} => String
8956
+ #
8957
+ # @example Request syntax with placeholder values
8958
+ #
8959
+ # resp = client.describe_byoip_cidrs({
8960
+ # dry_run: false,
8961
+ # max_results: 1, # required
8962
+ # next_token: "NextToken",
8963
+ # })
8964
+ #
8965
+ # @example Response structure
8966
+ #
8967
+ # resp.byoip_cidrs #=> Array
8968
+ # resp.byoip_cidrs[0].cidr #=> String
8969
+ # resp.byoip_cidrs[0].description #=> String
8970
+ # resp.byoip_cidrs[0].status_message #=> String
8971
+ # resp.byoip_cidrs[0].state #=> String, one of "advertised", "deprovisioned", "failed-deprovision", "failed-provision", "pending-deprovision", "pending-provision", "provisioned"
8972
+ # resp.next_token #=> String
8973
+ #
8974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeByoipCidrs AWS API Documentation
8975
+ #
8976
+ # @overload describe_byoip_cidrs(params = {})
8977
+ # @param [Hash] params ({})
8978
+ def describe_byoip_cidrs(params = {}, options = {})
8979
+ req = build_request(:describe_byoip_cidrs, params)
8980
+ req.send_request(options)
8981
+ end
8982
+
8804
8983
  # Describes one or more of your linked EC2-Classic instances. This
8805
8984
  # request only returns information about EC2-Classic instances linked to
8806
8985
  # a VPC through ClassicLink. You cannot use this request to return
@@ -12308,7 +12487,7 @@ module Aws::EC2
12308
12487
  # Default: If no value is provided, the default is 1000.
12309
12488
  #
12310
12489
  # @option params [String] :next_token
12311
- # The token to use to retrieve the next page of results.
12490
+ # The token for the next page of results.
12312
12491
  #
12313
12492
  # @option params [Array<String>] :public_ips
12314
12493
  # One or more Elastic IP addresses.
@@ -13364,6 +13543,55 @@ module Aws::EC2
13364
13543
  req.send_request(options)
13365
13544
  end
13366
13545
 
13546
+ # Describes the specified IPv4 address pools.
13547
+ #
13548
+ # @option params [Array<String>] :pool_ids
13549
+ # The IDs of the address pools.
13550
+ #
13551
+ # @option params [String] :next_token
13552
+ # The token for the next page of results.
13553
+ #
13554
+ # @option params [Integer] :max_results
13555
+ # The maximum number of results to return with a single call. To
13556
+ # retrieve the remaining results, make another call with the returned
13557
+ # `nextToken` value.
13558
+ #
13559
+ # @return [Types::DescribePublicIpv4PoolsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13560
+ #
13561
+ # * {Types::DescribePublicIpv4PoolsResult#public_ipv_4_pools #public_ipv_4_pools} => Array&lt;Types::PublicIpv4Pool&gt;
13562
+ # * {Types::DescribePublicIpv4PoolsResult#next_token #next_token} => String
13563
+ #
13564
+ # @example Request syntax with placeholder values
13565
+ #
13566
+ # resp = client.describe_public_ipv_4_pools({
13567
+ # pool_ids: ["String"],
13568
+ # next_token: "NextToken",
13569
+ # max_results: 1,
13570
+ # })
13571
+ #
13572
+ # @example Response structure
13573
+ #
13574
+ # resp.public_ipv_4_pools #=> Array
13575
+ # resp.public_ipv_4_pools[0].pool_id #=> String
13576
+ # resp.public_ipv_4_pools[0].description #=> String
13577
+ # resp.public_ipv_4_pools[0].pool_address_ranges #=> Array
13578
+ # resp.public_ipv_4_pools[0].pool_address_ranges[0].first_address #=> String
13579
+ # resp.public_ipv_4_pools[0].pool_address_ranges[0].last_address #=> String
13580
+ # resp.public_ipv_4_pools[0].pool_address_ranges[0].address_count #=> Integer
13581
+ # resp.public_ipv_4_pools[0].pool_address_ranges[0].available_address_count #=> Integer
13582
+ # resp.public_ipv_4_pools[0].total_address_count #=> Integer
13583
+ # resp.public_ipv_4_pools[0].total_available_address_count #=> Integer
13584
+ # resp.next_token #=> String
13585
+ #
13586
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePublicIpv4Pools AWS API Documentation
13587
+ #
13588
+ # @overload describe_public_ipv_4_pools(params = {})
13589
+ # @param [Hash] params ({})
13590
+ def describe_public_ipv_4_pools(params = {}, options = {})
13591
+ req = build_request(:describe_public_ipv_4_pools, params)
13592
+ req.send_request(options)
13593
+ end
13594
+
13367
13595
  # Describes one or more regions that are currently available to you.
13368
13596
  #
13369
13597
  # For a list of the regions supported by Amazon EC2, see [Regions and
@@ -15274,7 +15502,8 @@ module Aws::EC2
15274
15502
  #
15275
15503
  # Spot Fleet events are delayed by up to 30 seconds before they can be
15276
15504
  # described. This ensures that you can query by the last evaluated time
15277
- # and not miss a recorded event.
15505
+ # and not miss a recorded event. Spot Fleet events are available for 48
15506
+ # hours.
15278
15507
  #
15279
15508
  # @option params [Boolean] :dry_run
15280
15509
  # Checks whether you have the required permissions for the action,
@@ -21942,6 +22171,81 @@ module Aws::EC2
21942
22171
  req.send_request(options)
21943
22172
  end
21944
22173
 
22174
+ # Provisions an address range for use with your AWS resources through
22175
+ # bring your own IP addresses (BYOIP) and creates a corresponding
22176
+ # address pool. After the address range is provisioned, it is ready to
22177
+ # be advertised using AdvertiseByoipCidr.
22178
+ #
22179
+ # AWS verifies that you own the address range and are authorized to
22180
+ # advertise it. You must ensure that the address range is registered to
22181
+ # you and that you created an RPKI ROA to authorize Amazon ASNs 16509
22182
+ # and 14618 to advertise the address range. For more information, see
22183
+ # [Bring Your Own IP Addresses (BYOIP)][1] in the *Amazon Elastic
22184
+ # Compute Cloud User Guide*.
22185
+ #
22186
+ # Provisioning an address range is an asynchronous operation, so the
22187
+ # call returns immediately, but the address range is not ready to use
22188
+ # until its status changes from `pending-provision` to `provisioned`. To
22189
+ # monitor the status of an address range, use DescribeByoipCidrs. To
22190
+ # allocate an Elastic IP address from your address pool, use
22191
+ # AllocateAddress with either the specific address from the address pool
22192
+ # or the ID of the address pool.
22193
+ #
22194
+ #
22195
+ #
22196
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html
22197
+ #
22198
+ # @option params [required, String] :cidr
22199
+ # The public IPv4 address range, in CIDR notation. The most specific
22200
+ # prefix that you can specify is /24. The address range cannot overlap
22201
+ # with another address range that you've brought to this or another
22202
+ # region.
22203
+ #
22204
+ # @option params [Types::CidrAuthorizationContext] :cidr_authorization_context
22205
+ # A signed document that proves that you are authorized to bring the
22206
+ # specified IP address range to Amazon using BYOIP.
22207
+ #
22208
+ # @option params [String] :description
22209
+ # A description for the address range and the address pool.
22210
+ #
22211
+ # @option params [Boolean] :dry_run
22212
+ # Checks whether you have the required permissions for the action,
22213
+ # without actually making the request, and provides an error response.
22214
+ # If you have the required permissions, the error response is
22215
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
22216
+ #
22217
+ # @return [Types::ProvisionByoipCidrResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
22218
+ #
22219
+ # * {Types::ProvisionByoipCidrResult#byoip_cidr #byoip_cidr} => Types::ByoipCidr
22220
+ #
22221
+ # @example Request syntax with placeholder values
22222
+ #
22223
+ # resp = client.provision_byoip_cidr({
22224
+ # cidr: "String", # required
22225
+ # cidr_authorization_context: {
22226
+ # message: "String", # required
22227
+ # signature: "String", # required
22228
+ # },
22229
+ # description: "String",
22230
+ # dry_run: false,
22231
+ # })
22232
+ #
22233
+ # @example Response structure
22234
+ #
22235
+ # resp.byoip_cidr.cidr #=> String
22236
+ # resp.byoip_cidr.description #=> String
22237
+ # resp.byoip_cidr.status_message #=> String
22238
+ # resp.byoip_cidr.state #=> String, one of "advertised", "deprovisioned", "failed-deprovision", "failed-provision", "pending-deprovision", "pending-provision", "provisioned"
22239
+ #
22240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionByoipCidr AWS API Documentation
22241
+ #
22242
+ # @overload provision_byoip_cidr(params = {})
22243
+ # @param [Hash] params ({})
22244
+ def provision_byoip_cidr(params = {}, options = {})
22245
+ req = build_request(:provision_byoip_cidr, params)
22246
+ req.send_request(options)
22247
+ end
22248
+
21945
22249
  # Purchase a reservation with configurations that match those of your
21946
22250
  # Dedicated Host. You must have active Dedicated Hosts in your account
21947
22251
  # before you purchase a reservation. This action results in the
@@ -22758,8 +23062,8 @@ module Aws::EC2
22758
23062
  #
22759
23063
  # @option params [Types::IcmpTypeCode] :icmp_type_code
22760
23064
  # ICMP protocol: The ICMP or ICMPv6 type and code. Required if
22761
- # specifying the ICMP (1) protocol, or protocol 58 (ICMPv6) with an IPv6
22762
- # CIDR block.
23065
+ # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR
23066
+ # block.
22763
23067
  #
22764
23068
  # @option params [String] :ipv_6_cidr_block
22765
23069
  # The IPv6 network range to allow or deny, in CIDR notation (for example
@@ -22770,17 +23074,17 @@ module Aws::EC2
22770
23074
  #
22771
23075
  # @option params [Types::PortRange] :port_range
22772
23076
  # TCP or UDP protocols: The range of ports the rule applies to. Required
22773
- # if specifying TCP (6) or UDP (17) for the protocol.
23077
+ # if specifying protocol 6 (TCP) or 17 (UDP).
22774
23078
  #
22775
23079
  # @option params [required, String] :protocol
22776
- # The IP protocol. You can specify `all` or `-1` to mean all protocols.
22777
- # If you specify `all`, `-1`, or a protocol number other than `tcp`,
22778
- # `udp`, or `icmp`, traffic on all ports is allowed, regardless of any
22779
- # ports or ICMP types or codes you that specify. If you specify protocol
22780
- # `58` (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP
22781
- # types and codes allowed, regardless of any that you specify. If you
22782
- # specify protocol `58` (ICMPv6) and specify an IPv6 CIDR block, you
22783
- # must specify an ICMP type and code.
23080
+ # The protocol number. A value of "-1" means all protocols. If you
23081
+ # specify "-1" or a protocol number other than "6" (TCP), "17"
23082
+ # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of
23083
+ # any ports or ICMP types or codes that you specify. If you specify
23084
+ # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for
23085
+ # all ICMP types and codes allowed, regardless of any that you specify.
23086
+ # If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR
23087
+ # block, you must specify an ICMP type and code.
22784
23088
  #
22785
23089
  # @option params [required, String] :rule_action
22786
23090
  # Indicates whether to allow or deny the traffic that matches the rule.
@@ -22804,7 +23108,7 @@ module Aws::EC2
22804
23108
  # from: 53,
22805
23109
  # to: 53,
22806
23110
  # },
22807
- # protocol: "udp",
23111
+ # protocol: "17",
22808
23112
  # rule_action: "allow",
22809
23113
  # rule_number: 100,
22810
23114
  # })
@@ -25760,6 +26064,51 @@ module Aws::EC2
25760
26064
  req.send_request(options)
25761
26065
  end
25762
26066
 
26067
+ # Stops advertising an IPv4 address range that is provisioned as an
26068
+ # address pool.
26069
+ #
26070
+ # You can perform this operation at most once every 10 seconds, even if
26071
+ # you specify different address ranges each time.
26072
+ #
26073
+ # It can take a few minutes before traffic to the specified addresses
26074
+ # stops routing to AWS because of BGP propagation delays.
26075
+ #
26076
+ # @option params [required, String] :cidr
26077
+ # The public IPv4 address range, in CIDR notation.
26078
+ #
26079
+ # @option params [Boolean] :dry_run
26080
+ # Checks whether you have the required permissions for the action,
26081
+ # without actually making the request, and provides an error response.
26082
+ # If you have the required permissions, the error response is
26083
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
26084
+ #
26085
+ # @return [Types::WithdrawByoipCidrResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
26086
+ #
26087
+ # * {Types::WithdrawByoipCidrResult#byoip_cidr #byoip_cidr} => Types::ByoipCidr
26088
+ #
26089
+ # @example Request syntax with placeholder values
26090
+ #
26091
+ # resp = client.withdraw_byoip_cidr({
26092
+ # cidr: "String", # required
26093
+ # dry_run: false,
26094
+ # })
26095
+ #
26096
+ # @example Response structure
26097
+ #
26098
+ # resp.byoip_cidr.cidr #=> String
26099
+ # resp.byoip_cidr.description #=> String
26100
+ # resp.byoip_cidr.status_message #=> String
26101
+ # resp.byoip_cidr.state #=> String, one of "advertised", "deprovisioned", "failed-deprovision", "failed-provision", "pending-deprovision", "pending-provision", "provisioned"
26102
+ #
26103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/WithdrawByoipCidr AWS API Documentation
26104
+ #
26105
+ # @overload withdraw_byoip_cidr(params = {})
26106
+ # @param [Hash] params ({})
26107
+ def withdraw_byoip_cidr(params = {}, options = {})
26108
+ req = build_request(:withdraw_byoip_cidr, params)
26109
+ req.send_request(options)
26110
+ end
26111
+
25763
26112
  # @!endgroup
25764
26113
 
25765
26114
  # @param params ({})
@@ -25773,7 +26122,7 @@ module Aws::EC2
25773
26122
  params: params,
25774
26123
  config: config)
25775
26124
  context[:gem_name] = 'aws-sdk-ec2'
25776
- context[:gem_version] = '1.51.0'
26125
+ context[:gem_version] = '1.52.0'
25777
26126
  Seahorse::Client::Request.new(handlers, context)
25778
26127
  end
25779
26128