.. _ansible.utils.in_network_test:
************************
ansible.utils.in_network
************************
**Test if IP address falls in the network**
Version added: 2.2.0
.. contents::
:local:
:depth: 1
Synopsis
--------
- This plugin checks if the provided IP address belongs to the provided network
Parameters
----------
.. raw:: html
Parameter |
Choices/Defaults |
Configuration |
Comments |
ip
string
/ required
|
|
|
A string that represents an IP address
{'For example': '10.1.1.1'}
|
network
string
/ required
|
|
|
A string that represents the network address in CIDR form
{'For example': '10.0.0.0/8'}
|
Examples
--------
.. code-block:: yaml
#### Simple examples
- name: Check if 10.1.1.1 is in 10.0.0.0/8
ansible.builtin.set_fact:
data: "{{ '10.1.1.1' is ansible.utils.in_network '10.0.0.0/8' }}"
# TASK [Check if 10.1.1.1 is in 10.0.0.0/8] ***********************************
# ok: [localhost] => {
# "ansible_facts": {
# "data": true
# },
# "changed": false
# }
- name: Check if 10.1.1.1 is not in 192.168.1.0/24
ansible.builtin.set_fact:
data: "{{ '10.1.1.1' is not ansible.utils.in_network '192.168.1.0/24' }}"
# TASK [Check if 10.1.1.1 is not in 192.168.1.0/24] ****************************
# ok: [localhost] => {
# "ansible_facts": {
# "data": true
# },
# "changed": false
# }
- name: Check if 2001:db8:a::123 is in 2001:db8:a::/64
ansible.builtin.set_fact:
data: "{{ '2001:db8:a::123' is ansible.utils.in_network '2001:db8:a::/64' }}"
# TASK [Check if 2001:db8:a::123 is in 2001:db8:a::/64] ****************************
# task path: /home/prsahoo/playbooks/collections/localhost_test/utils_in_network.yml:16
# ok: [localhost] => {
# "ansible_facts": {
# "data": true
# },
# "changed": false
# }
- name: Check if 2001:db8:a::123 is not in 10.0.0.0/8
ansible.builtin.set_fact:
data: "{{ '2001:db8:a::123' is not ansible.utils.in_network '10.0.0.0/8' }}"
# TASK [Check if 2001:db8:a::123 is not in 10.0.0.0/8] *********************************
# task path: /home/prsahoo/playbooks/collections/localhost_test/utils_in_network.yml:20
# ok: [localhost] => {
# "ansible_facts": {
# "data": true
# },
# "changed": false
# }
Return Values
-------------
Common return values are documented `here `_, the following are the fields unique to this test:
.. raw:: html
Key |
Returned |
Description |
data
-
|
|
If jinja test satisfies plugin expression true
If jinja test does not satisfy plugin expression false
|
Status
------
Authors
~~~~~~~
- Priyam Sahoo (@priyamsahoo)
.. hint::
Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.