If you have not been compiling as you went along, try and compile now.
|
$
|
make -f ifTable_Makefile
|
After running make, you should have an executable named ifTable.
You can run the ifTable agent as a regular SNMP agent, or as an AgentX
sub-agent. The default is to run as a sub-agent. While testing, the -f
(do not fork into background) and -L (log to stderr) options are
recommended.
|
AgentX Sub-agent:
|
ifTable -f -L
|
|
Standard SNMP Agent:
|
ifTable -M -f -L [udp[:port]]
|
Note that running the sub-agent application as a master agent will
runwithout any access control. All SNMPv1 and SNMPv2c requests will be
accepted, regardless of the community string.
For that reason, when testing I run as a regular user (not root), and
only bind to the localhost interface, like so:
|
$ ./ifTable -f -L -DifTable -M localhost:1161
2004-04-21 21:51:47 ifTable:init_ifTable: Registering ifTable as a mibs-for-dummies table.
2004-04-21 21:51:48 ifTable: using linux 2.2 kernel /proc/net/dev
|
A simple snmpwalk will quickly test the module:
|
$ snmpwalk -v1 localhost:1161 ifTable
IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
IF-MIB::ifIndex.3 = INTEGER: 3
IF-MIB::ifDescr.1 = STRING:
IF-MIB::ifDescr.2 = STRING:
IF-MIB::ifDescr.3 = STRING:
IF-MIB::ifType.1 = INTEGER: softwareLoopback(24)
IF-MIB::ifType.2 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.3 = INTEGER: tunnel(131)
IF-MIB::ifPhysAddress.1 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.2 = STRING: 0:30:65:cd:a3:c8
IF-MIB::ifPhysAddress.3 = STRING: 0:0:0:0:0:0
IF-MIB::ifInOctets.1 = Counter32: 51368348
IF-MIB::ifInOctets.2 = Counter32: 2666605618
IF-MIB::ifInOctets.3 = Counter32: 0
IF-MIB::ifInUcastPkts.1 = Counter32: 415774
IF-MIB::ifInUcastPkts.2 = Counter32: 13971039
IF-MIB::ifInUcastPkts.3 = Counter32: 0
IF-MIB::ifInDiscards.1 = Counter32: 0
IF-MIB::ifInDiscards.2 = Counter32: 0
IF-MIB::ifInDiscards.3 = Counter32: 0
IF-MIB::ifInErrors.1 = Counter32: 0
IF-MIB::ifInErrors.2 = Counter32: 0
IF-MIB::ifInErrors.3 = Counter32: 0
IF-MIB::ifOutOctets.1 = Counter32: 51370076
IF-MIB::ifOutOctets.2 = Counter32: 879325033
IF-MIB::ifOutOctets.3 = Counter32: 0
IF-MIB::ifOutUcastPkts.1 = Counter32: 415798
IF-MIB::ifOutUcastPkts.2 = Counter32: 8046959
IF-MIB::ifOutUcastPkts.3 = Counter32: 0
IF-MIB::ifOutDiscards.1 = Counter32: 0
IF-MIB::ifOutDiscards.2 = Counter32: 0
IF-MIB::ifOutDiscards.3 = Counter32: 0
IF-MIB::ifOutErrors.1 = Counter32: 0
IF-MIB::ifOutErrors.2 = Counter32: 0
IF-MIB::ifOutErrors.3 = Counter32: 0
IF-MIB::ifSpecific.3 = No more variables left in this MIB View (It is past the end of the MIB tree)
|
If you ran the agent with debugging, you should see something like this:
|
$ ./ifTable -f -L -DifTable -M localhost:1161
2004-04-21 21:51:47 ifTable:init_ifTable: Registering ifTable as a mibs-for-dummies table.
2004-04-21 21:51:48 ifTable: using linux 2.2 kernel /proc/net/dev
|