使用Ansible获取最后两段ip地址

Get last two segment of ip address using Ansible

我有一个获取 ip 地址的 playbook,如下所示。

---
- hosts: all
  tasks:
    - debug: var=hostvars[inventory_hostname]['ansible_default_ipv4']['address']

输出:

TASK [debug] *************************************************************************************************************************************************
ok: [mwiwas01] => {
    "hostvars[inventory_hostname]['ansible_default_ipv4']['address']": "10.0.12.15"
}

但是,我希望获得 IP 地址的最后两段,即仅 12.15

注意:每个主机上的 IP 地址都会发生变化,因此我正在寻找一种兼容任何给定 IP 版本 4 的标准解决方案。

如何从IP地址中获取相同的内容。

利用split功能。

- debug: var=hostvars[inventory_hostname]['ansible_default_ipv4']['address'].split(".")[3]+hostvars[inventory_hostname]['ansible_default_ipv4']['address'].split(".")[4]