Creates cables from LLDP neighbor data by collecting LLDP from all inventory devices, validating both endpoints against the NetBox inventory (devices + interfaces), deduplicating bidirectional links, and importing via the NetBox REST API. Handles interface name normalization across vendors (NOS space-delimited names, abbreviated LLDP names, etc.). First run: 30 cables created across Cisco IOS, IOS-XR, Brocade ICX/VDX, and CML lab routers. Idempotent on re-run (skips already-cabled interfaces). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4.5 KiB
4.5 KiB
| 1 | side_a_device | side_a_type | side_a_name | side_b_device | side_b_type | side_b_name | side_a_site | side_b_site | status | tags |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | 4351-01 | dcim.interface | GigabitEthernet0/0/0 | C3850-04 | dcim.interface | GigabitEthernet1/0/10 | main | main | connected | lldp-discovered |
| 3 | 4351-01 | dcim.interface | GigabitEthernet0 | C3850-04 | dcim.interface | GigabitEthernet1/0/2 | main | main | connected | lldp-discovered |
| 4 | 2960CX-01 | dcim.interface | GigabitEthernet0/10 | C3850-04 | dcim.interface | GigabitEthernet1/0/3 | main | main | connected | lldp-discovered |
| 5 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/1 | CML-R9K-01 | dcim.interface | GigabitEthernet0/0/0/1 | main | main | connected | lldp-discovered |
| 6 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/2 | CML-R9K-01 | dcim.interface | GigabitEthernet0/0/0/2 | main | main | connected | lldp-discovered |
| 7 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/4 | CML-R9K-04 | dcim.interface | GigabitEthernet0/0/0/4 | main | main | connected | lldp-discovered |
| 8 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/5 | CML-R9K-04 | dcim.interface | GigabitEthernet0/0/0/5 | main | main | connected | lldp-discovered |
| 9 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/6 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/6 | main | main | connected | lldp-discovered |
| 10 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/7 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/5 | main | main | connected | lldp-discovered |
| 11 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/12 | CML-R9K-02 | dcim.interface | GigabitEthernet0/0/0/12 | main | main | connected | lldp-discovered |
| 12 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/13 | CML-R9K-03 | dcim.interface | GigabitEthernet0/0/0/13 | main | main | connected | lldp-discovered |
| 13 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/14 | CML-R9K-02 | dcim.interface | GigabitEthernet0/0/0/14 | main | main | connected | lldp-discovered |
| 14 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/15 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/0 | main | main | connected | lldp-discovered |
| 15 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/1 | CML-R9K-CORE-01 | dcim.interface | GigabitEthernet0/0/0/16 | main | main | connected | lldp-discovered |
| 16 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/4 | CML-R9K-04 | dcim.interface | GigabitEthernet0/0/0/2 | main | main | connected | lldp-discovered |
| 17 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/5 | CML-R9k-06 | dcim.interface | GigabitEthernet0/0/0/5 | main | main | connected | lldp-discovered |
| 18 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/6 | CML-R9k-06 | dcim.interface | GigabitEthernet0/0/0/6 | main | main | connected | lldp-discovered |
| 19 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/7 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/7 | main | main | connected | lldp-discovered |
| 20 | CML-R9K-CORE-02 | dcim.interface | GigabitEthernet0/0/0/8 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/8 | main | main | connected | lldp-discovered |
| 21 | CML-R9K-03 | dcim.interface | GigabitEthernet0/0/0/0 | ebgppeer | dcim.interface | GigabitEthernet2 | main | main | connected | lldp-discovered |
| 22 | CML-R9K-03 | dcim.interface | GigabitEthernet0/0/0/3 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/3 | main | main | connected | lldp-discovered |
| 23 | CML-R9K-04 | dcim.interface | GigabitEthernet0/0/0/0 | CML-R9k-06 | dcim.interface | GigabitEthernet0/0/0/0 | main | main | connected | lldp-discovered |
| 24 | CML-R9K-04 | dcim.interface | GigabitEthernet0/0/0/1 | CML-R9k-06 | dcim.interface | GigabitEthernet0/0/0/1 | main | main | connected | lldp-discovered |
| 25 | CML-R9K-05 | dcim.interface | GigabitEthernet0/0/0/4 | CML-R9K-03 | dcim.interface | GigabitEthernet0/0/0/4 | main | main | connected | lldp-discovered |
| 26 | ebgppeer | dcim.interface | GigabitEthernet1 | CML-MLS-MGMT.apodacalab.com | dcim.interface | Ethernet1/0 | main | main | connected | lldp-discovered |
| 27 | Brocade40G-01 | dcim.interface | 1/1/1 | im7248-2-dac | dcim.interface | eth0 | main | main | connected | lldp-discovered |
| 28 | Brocade40G-01 | dcim.interface | 1/2/1 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet 1/0/3 | main | main | connected | lldp-discovered |
| 29 | Brocade40G-02 | dcim.interface | 1/2/1 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet 1/0/2 | main | main | connected | lldp-discovered |
| 30 | Brocade40g-Core | dcim.interface | 1/2/1 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet 1/0/1 | main | main | connected | lldp-discovered |
| 31 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet1/0/1 | Brocade40g-Core | dcim.interface | 40GigabitEthernet1/2/1 | main | main | connected | lldp-discovered |
| 32 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet1/0/2 | Brocade40G-02 | dcim.interface | 40GigabitEthernet1/2/1 | main | main | connected | lldp-discovered |
| 33 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet1/0/3 | Brocade40G-01 | dcim.interface | 40GigabitEthernet1/2/1 | main | main | connected | lldp-discovered |
| 34 | Brocade-VDX-6940-01 | dcim.interface | FortyGigabitEthernet1/0/33 | proxmox3 | dcim.interface | ens2 | main | main | connected | lldp-discovered |