Hello, Lispers
I'm glad to release the version 1.2 of my cl-net-snmp package, a pure
lisp SNMP client, see
http://common-lisp.net/project/cl-net-snmp/
for more information, and you can download the tarball at here:
http://common-lisp.net/project/cl-net-snmp/release/cl-net-snmp_1.2.tar.gz
In the version, snmp-walk and snmp-get are fixed for performance and
nice output, and more SMI type are support (opague, counter, and
gauge), and this is a example usage of snmp-walk:
CL-USER 1 > (clc:clc-require :net-snmp)
CL-USER 2 > (snmp:snmp-walk "localhost" "system")
((#<SMI:OBJECT-ID sysDescr.0>
"Linux 2950.lab.163.org 2.6.18-4-xen-vserver-amd64 #1 SMP Fri May 4
03:26:45 UTC 2007 x86_64")
(#<SMI:OBJECT-ID sysObjectID.0>
#<SMI:OBJECT-ID netSnmpAgentOIDs.linux>)
(#<SMI:OBJECT-ID sysUpTime.sysUpTimeInstance>
#<SMI:TIMETICKS (169041005) 469:33:30.05>)
(#<SMI:OBJECT-ID sysContact.0>
"Root <ยทยทยทยท@localhost> (configure /etc/snmp/snmpd.local.conf)")
(#<SMI:OBJECT-ID sysName.0> "2950.lab.163.org")
(#<SMI:OBJECT-ID sysLocation.0>
"Unknown (configure /etc/snmp/snmpd.local.conf)")
(#<SMI:OBJECT-ID sysORLastChange.0> #<SMI:TIMETICKS (1) 0:00:00.01>)
(#<SMI:OBJECT-ID sysORID.1> #<SMI:OBJECT-ID snmpModules.snmpMIB>)
(#<SMI:OBJECT-ID sysORID.2> #<SMI:OBJECT-ID mib-2.tcpMIB>)
(#<SMI:OBJECT-ID sysORID.3> #<SMI:OBJECT-ID mib-2.ip>)
(#<SMI:OBJECT-ID sysORID.4> #<SMI:OBJECT-ID mib-2.udpMIB>)
(#<SMI:OBJECT-ID sysORID.5>
#<SMI:OBJECT-ID vacmMIBGroups.vacmBasicGroup>)
(#<SMI:OBJECT-ID sysORID.6>
#<SMI:OBJECT-ID
snmpFrameworkMIBCompliances.snmpFrameworkMIBCompliance>)
(#<SMI:OBJECT-ID sysORID.7>
#<SMI:OBJECT-ID snmpMPDMIBCompliances.snmpMPDCompliance>)
(#<SMI:OBJECT-ID sysORID.8>
#<SMI:OBJECT-ID usmMIBCompliances.usmMIBCompliance>)
(#<SMI:OBJECT-ID sysORDescr.1> "The MIB module for SNMPv2 entities")
(#<SMI:OBJECT-ID sysORDescr.2>
"The MIB module for managing TCP implementations")
(#<SMI:OBJECT-ID sysORDescr.3>
"The MIB module for managing IP and ICMP implementations")
(#<SMI:OBJECT-ID sysORDescr.4>
"The MIB module for managing UDP implementations")
(#<SMI:OBJECT-ID sysORDescr.5>
"View-based Access Control Model for SNMP.")
(#<SMI:OBJECT-ID sysORDescr.6>
"The SNMP Management Architecture MIB.")
(#<SMI:OBJECT-ID sysORDescr.7>
"The MIB for Message Processing and Dispatching.")
(#<SMI:OBJECT-ID sysORDescr.8>
"The management information definitions for the SNMP User-based
Security Model.")
(#<SMI:OBJECT-ID sysORUpTime.1> #<SMI:TIMETICKS (0) 0:00:00.00>)
(#<SMI:OBJECT-ID sysORUpTime.2> #<SMI:TIMETICKS (0) 0:00:00.00>)
(#<SMI:OBJECT-ID sysORUpTime.3> #<SMI:TIMETICKS (0) 0:00:00.00>)
(#<SMI:OBJECT-ID sysORUpTime.4> #<SMI:TIMETICKS (0) 0:00:00.00>)
(#<SMI:OBJECT-ID sysORUpTime.5> #<SMI:TIMETICKS (0) 0:00:00.00>)
(#<SMI:OBJECT-ID sysORUpTime.6> #<SMI:TIMETICKS (1) 0:00:00.01>)
(#<SMI:OBJECT-ID sysORUpTime.7> #<SMI:TIMETICKS (1) 0:00:00.01>)
(#<SMI:OBJECT-ID sysORUpTime.8> #<SMI:TIMETICKS (1) 0:00:00.01>))
I think Linux system administrators which also like Common Lisp will
love my package. I'm planing to write a more advanced network
management platform base on cl-net-snmp and others.
I'll glad to see some SA use my package, patches and advices are both
welcome.
Chun Tian (binghe)