Envio de Traps: SNMP::Util y comando snmptrap

Luis Vivero morenisco en gmail.com
Lun Oct 23 17:43:47 CLST 2006


Estimados,

Estoy intentando enviar traps via comando snmptrap, y tengo algunos
problemas.
Pude hacerlo con un pequenno script con SNMP::Util, pero tengo problemas
para implementarlo en Red-Hat 4ES, por lo cual me gustaria hacerlo solamente
con el comando snmptrap.

He aqui los dos scripts:

1) trap.0.1.remote.pl

#!/usr/bin/perl
use SNMP_util;

# Variables
$PORT="162";
$HOST1="172.19.4.50";
$HOST2="192.168.228.10";
$COM_NAME="netadmro";
$E_OID=".1.3.6.1.4.1.4227";
$OID=".1.3.6.1.4.1.4227";
$GEN_TRAP_NUMBER="6";
$SPEC_TRAP_NUMBER="200";
$TYPE="string";
$VALUE="hello";

printf ("Hello World from Perl xD\n");

snmptrap("$COM_NAME\@$HOST1:$PORT",$E_OID,$HOST2,$GEN_TRAP_NUMBER,$SPEC_TRAP_NUMBER,$OID,$TYPE,$VALUE);

2) send_trap0.1_v1

#!/bin/bash

# Variables
PORT="162"
HOST="172.19.4.50"
AGENT="192.168.228.10"
COM_NAME="netadmro"
E_OID=".1.3.6.1.4.1.4227"
OID=".1.3.6.1.4.1.4227"
GEN_TRAP_NUMBER="6"
SPEC_TRAP_NUMBER="200"
TYPE="s"
VALUE="hello"

#snmptrap $HOST $COM_NAME $E_OID $AGENT $GEN_TRAP_NUMBER $SPEC_TRAP_NUMBER
'' $OID $TYPE $VALUEi
snmptrap -v 1 -c $COM_NAME $HOST $E_OID '' $AGENT $TRAP $SPEC_TRAP_NUMBER ''
$OID $TYPE $VALUE

Si bien es cierto que el comando snmptrap asi como esta funciona, no envia
de la misma forma los datos por la red. En el fondo tengo problema con la
sixtaxis del comando. Vi el man del mismo pero aun no le doy xD

Los datos que viajan por la red dan evidencia que el script con snmptrap no
esta pescando el agente (quien envia los traps). El esnifeo con tcpdump da
lo siguiente:

morenisco en movexzone:~/scripting/traps$ perl trap.0.1.remote.pl
Hello World from Perl xD
morenisco en movexzone:~/scripting/traps$ sh -x send_trap0.1_v1
+ PORT=162
+ HOST=172.19.4.50
+ AGENT=192.168.228.10
+ COM_NAME=netadmro
+ E_OID=.1.3.6.1.4.1.4227
+ OID=.1.3.6.1.4.1.4227
+ GEN_TRAP_NUMBER=6
+ SPEC_TRAP_NUMBER=200
+ TYPE=s
+ VALUE=hello
+ snmptrap -v 1 -c netadmro 172.19.4.50 .1.3.6.1.4.1.4227 ''
192.168.228.10200 '' .1.3.6.1.4.1.4227 s hello

[root en movexzone ~]# tcpdump dst 172.19.4.50 -vvv

15:08:08.023566 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: UDP
(17), length: 90) 172.22.18.80.32768 > 172.19.4.50.snmp-trap:  { SNMPv1
C=netadmro { Trap(45)  E:4227 192.168.228.10 enterpriseSpecific s=200 0
E:[|snmp] } }

15:08:14.515601 IP (tos 0x0, ttl  64, id 0, offset 0, flags [DF], proto: UDP
(17), length: 93) 172.22.18.80.32768 > 172.19.4.50.snmp-trap:  { SNMPv1
C=netadmro { Trap(48)  E:4227 172.22.18.80 gt=192[specific-trap(200)!=0]
773226 [|snmp] } }

Alguien sabe como debo ejecutar el comando snmptrap?

Saludos.


Luis Eduardo Vivero Peña.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listas.inf.utfsm.cl/pipermail/linux/attachments/20061023/dd2e801d/attachment.html


Más información sobre la lista de distribución Linux