amazon.aws.aws_service_ip_ranges – Look up the IP ranges for services provided in AWS such as EC2 and S3.
Note
This plugin is part of the amazon.aws collection (version 1.5.1).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install amazon.aws
.
To use it in a playbook, specify: amazon.aws.aws_service_ip_ranges
.
Synopsis
AWS publishes IP ranges used on the public internet by EC2, S3, CloudFront, CodeBuild, Route53, and Route53 Health Checking.
This module produces a list of all the ranges (by default) or can narrow down the list to the specified region or service.
Requirements
The below requirements are needed on the local controller node that executes this lookup.
must have public internet connectivity
Parameters
Parameter |
Comments |
---|---|
The AWS region to narrow the ranges to. Examples: us-east-1, eu-west-2, ap-southeast-1 |
|
The service to filter ranges by. Options: EC2, S3, CLOUDFRONT, CODEbUILD, ROUTE53, ROUTE53_HEALTHCHECKS |
Examples
vars:
ec2_ranges: "{{ lookup('aws_service_ip_ranges', region='ap-southeast-2', service='EC2', wantlist=True) }}"
tasks:
- name: "use list return option and iterate as a loop"
debug: msg="{% for cidr in ec2_ranges %}{{ cidr }} {% endfor %}"
# "52.62.0.0/15 52.64.0.0/17 52.64.128.0/17 52.65.0.0/16 52.95.241.0/24 52.95.255.16/28 54.66.0.0/16 "
- name: "Pull S3 IP ranges, and print the default return style"
debug: msg="{{ lookup('aws_service_ip_ranges', region='us-east-1', service='S3') }}"
# "52.92.16.0/20,52.216.0.0/15,54.231.0.0/17"
Return Values
Common return values are documented here, the following are the fields unique to this lookup:
Key |
Description |
---|---|
comma-separated list of CIDR ranges Returned: success |
Authors
James Turner <turnerjsm@gmail.com>