All my projects are hosted on GitHub. Here are a few of them:
lldpd is a 802.1AB daemon. It sends and receives LLDP frames which enables remote L2 equipments to determine which equipment is remotely present. These frames contain information like the equipment name, the port name, VLAN, etc. This daemon features SNMP support and also supports additional protocols like CDP, SONMP and EDP.
Here is an example of output:
Interface: eth0, via: LLDP, RID: 1, Time: 0 day, 00:00:33 Chassis: ChassisID: mac 00:00:00:00:00:02 SysName: ns-2.example.com SysDescr: Spectacular GNU/Linux 2016 Linux 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 MgmtIP: fe80::200:ff:fe00:2 MgmtIface: 2 Capability: Bridge, off Capability: Router, off Capability: Wlan, off Capability: Station, on Port: PortID: mac 00:00:00:00:00:02 PortDescr: eth1 TTL: 120 PMD autoneg: supported: no, enabled: no MAU oper type: 10GigBaseCX4 - X copper over 8 pair 100-Ohm balanced cable
Dashkiosk is a solution to manage dashboards on multiple screens. There are four components:
- the server which will manage the screens by sending them what they should display; the server also provides an administration interface,
- the receiver running in a browser and connecting to the server to know which dashboard should be displayed,
- an Android application running the receiver,
- a Chromecast application running the receiver.
For a demo, have a look at the following video:
Snimpy is a Python tool targeted at writting simple tools using SNMP queries. It features a very pythonic interface and any Python developer should feel at home with it. Here is a use example:
load("IP-FORWARD-MIB") m=M() print "Using IP-FORWARD-MIB::ipCidrRouteTable..." routes = m.ipCidrRouteNextHop for x in routes: net, netmask, tos, src = x print "%15s/%-15s via %-15s src %-15s" % (net, netmask, routes[x], src)
Have a look at “Snimpy: SNMP & Python” for more details.