Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: SNMP RemotePort

by superfrink (Curate)
on Apr 10, 2008 at 19:23 UTC ( #679561=note: print w/replies, xml ) Need Help??


in reply to SNMP RemotePort

Update: I did not realize SNMP is a front end for Net::SNMP. The code below probably won't help.

Run tcpdump on the machine running the SNMP server to see if the NAT is really working and that the traffic really is getting through to port 161.

Check that snmpd is listening and allowing connections from outside localhost. (On Ubuntu/Debian check /etc/default/snmp to see what IP it is binding to. Also check snmpd.conf.)

Original post:

If you can do it just open UDP port 161 on the firewall from the IP of the server doing the monitoring.

I have not tried using a different port but Net::SNMP has functionality to specify the port number. Code I have run (based on the docs as I recall) is below.
use strict; use Data::Dumper; use Net::SNMP; my ($session, $error) = Net::SNMP->session( -hostname => shift || 'localhost', -community => shift || 'public', -port => shift || 161 ); if (!defined($session)) { printf("ERROR: %s.\n", $error); exit 1; } my $sysUpTime = '1.3.6.1.2.1.1.3.0'; my $result = $session->get_request( -varbindlist => [$sysUpTime] ); if (!defined($result)) { printf("ERROR: %s.\n", $session->error); $session->close; exit 1; } printf("sysUpTime for host '%s' is %s\n", $session->hostname, $result->{$sysUpTime} ); #print Dumper($result); $session->close; exit 0;
Example output is:
$ ./snmp-uptime.pl 172.19.1.2 my_community_string sysUpTime for host '172.19.1.2' is 263 days, 14:47:49.58

Replies are listed 'Best First'.
Re^2: SNMP RemotePort
by vortmax (Acolyte) on Apr 10, 2008 at 20:12 UTC
    okay...it works now. sorry. I tested it with tcpdump, which showed that it was in fact sending packets on port 163 but the response was timing out. So on a hunch, I moved the script over to a different server (no edits) and tried it again... and it worked. So it must be an issue with how something on my dev machine is installed/configured. thanks for your help

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://679561]
help
Chatterbox?
[Discipulus]: yes marto I understood
[Corion]: Discipulus: I'm slowly migrating my code to require 5.8.x ;) Most of my code works on 5.6, but Filter::signatures requires 5.10 I think
[Corion]: 5.14 is also a good target, widely available and fairly stable. Also, over five years old, which doesn't push people into a needless upgrade cycle
[Discipulus]: yes I saw your efforts Corion but the pain is worth?
[Corion]: Discipulus: IMO it's not that much pain, but most of the systems I use have a Perl 5.14 or newer on them nowadays
[marto]: the question is more, is Padre still the way new users should be directed?
[Discipulus]: ah ah I have all 5.26 atm but I play alone..
[Corion]: Except this RHEL box, which comes with Perl 5.10.1 , but there I installed my own 5.20.3 for the real Perl programs we run ;)
[Corion]: marto: I used Padre for some time but then switched to Notepad++, since all the funky features I wanted to put into Padre couldn't be made to work, and/or I lost interest :)
[Discipulus]: indeed marto I dunno. I tested once and many years ago. But I'm not the programmer yardstick. I try to install Padre via cpan now just to add a line about it in the issue. Strawberryperl all life long!

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (10)
As of 2018-06-25 08:49 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?



    Results (126 votes). Check out past polls.

    Notices?