community.general.lldp module – Get details reported by LLDP
Note
This module is part of the community.general collection (version 12.6.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 community.general.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.general.lldp.
Synopsis
Reads LLDP data from
lldpdusing the CLI toollldpctl.
Requirements
The below requirements are needed on the host that executes this module.
lldpctl, usually provided by thelldpdpackage.
Parameters
Parameter |
Comments |
|---|---|
If Choices:
|
Attributes
Attribute |
Support |
Description |
|---|---|---|
Support: none |
Can run in |
|
Support: none |
Returns details on what has changed (or possibly needs changing in |
Notes
Note
Requires
lldpdrunning and LLDP enabled on switches.
Examples
# Retrieve switch/port information
- name: Gather information from LLDP
community.general.lldp:
- name: Print each switch/port
ansible.builtin.debug:
msg: "{{ lldp[item]['chassis']['name'] }} / {{ lldp[item]['port']['ifname'] }}"
with_items: "{{ lldp.keys() }}"
# TASK: [Print each switch/port] ***********************************************************
# ok: [10.13.0.22] => (item=eth2) => {"item": "eth2", "msg": "switch1.example.com / Gi0/24"}
# ok: [10.13.0.22] => (item=eth1) => {"item": "eth1", "msg": "switch2.example.com / Gi0/3"}
# ok: [10.13.0.22] => (item=eth0) => {"item": "eth0", "msg": "switch3.example.com / Gi0/3"}