Macinvent voor cisco

Ik zag ooit een functionaliteit in Infoblox die handig is. Welke mac adressen zitten er op het netwerk, wanneer zijn ze voor het eerst gezien en wanneer voor het laatst.
Ik kan wel zeggen dat ik (o.a.) dit script bijne elke dag gebruik.
Dit is vrij eenvoudig te maken door de ip-arp uit de cisco core router te halen, deze entries blijven 4 uur bewaard dus als we elke 4 uur deze actie doen dan missen we niks.
Het script kan dus aangeroepen worden in de crontab zodat het elke 4 uur uitgevoerd wordt. Het script leest alle entries uit de ip-arp lijst en controleert in de csv file of het mac adres al voor komt. Zo nee wordt die toegevoegd en zo ja wordt de tijd bijgewerkt.
Er zijn een paar niet standaard python modules nodig, natsort en netmiko.
python3 -m pip install natsort netmiko
Pas in de source wel de script directory en de html directory aan en het ip adres en credentials van de core.
Er zijn nog twee extra scripts, mac-invent-cli.py en mac-invent-cleanup.py. De eerste is een cli om de data (snel) te raadplegen en de tweede is om entries ouder dan X (2) jaar op te ruimen als die behoefte er is.

Code

mac-invent2.py
mac-invent-cli.py
mac-invent-cleanup.py
(ivm webserver restricties is er een .txt van gemaakt)

Output

$ mac-invent2.py
Toegevoegd: 0001.8082.e319 1 192.168.3.107
Toegevoegd: 7cdd.909b.da2e 2 192.168.5.105
Toegevoegd: b827.ebf4.01a5 2 192.168.5.106
Timestamp      : 2024-02-11_11:02
Records updated: 52
Records added  : 3
Total records  : 208
total time     : 1.20

$ mac-invent-cleanup.py
2024-02-11: opruimen alle entries ouder dan 2 jaar? (J/N)J
000c.2954.aeea  192.168.3.23    opgeruimd
0418.d607.d0b0  192.168.3.250   opgeruimd
268e.e0b6.8c9c  192.168.3.28    opgeruimd

$ mac-invent-cli.py 192.168.5.105
Mac:            Vl:  IP:              Eerst_gezien:     Laatst_gezien:
7cdd.909b.da2e  2    192.168.5.105    2024-02-11_11:02  2024-02-11_11:02
Results: 1


Als je het wat vindt dan hoor ik dat graag.




Geef hieronder uw commentaar, mening of aanvullingen op deze pagina en lees de eventuele meldingen van andere lezers.

naam:
email:
spamcheck: 1999+1=...
opmerking:
   



Website door Wouter Barendsen, 2005-2024