My script is supposed to do 'set' request table on the device for config backup
my @request;
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.2.$rand_value",INTEGER,
+6));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.3.$rand_value",INTEGER,
+1));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.4.$rand_value",OCTET_ST
+RING,"$device_name"));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.5.$rand_value",IPADDRES
+S,'192.168.0.1'));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.6.$rand_value",OCTET_ST
+RING,'user'));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.7.$rand_value",OCTET_ST
+RING,'password'));
push(@request, ("1.3.6.1.4.1.2011.6.10.1.2.4.1.9.$rand_value",INTEGER,
+4));
my ($session, $error) = Net::SNMP->session(
-hostname => $device_ip,
-version => 'snmpv1',
-community => $device_comunity,
);
$result = $session->set_request(-varbindlist=>[@request]);
if (!defined $result) {
printf "ERROR: %s\n", $session->error();
$session->close();
exit 1;
}
$session->close();
but it does not work and the device displays a message in the log
Aug 4 2013 21:08:33+03:00 device %%01SNMP/4/SNMP_SET(l)[0]:MIB node set. (SourceIP=192.168.0.1, RequestId=376206003, ErrorStatus=7, ErrorIndex=7, hwCfgOperateRowStatus.2667=4)
But request directly from the command line works
snmpset -v 1 -c private 192.168.0.2 .1.3.6.1.4.1.2011.6.10.1.2.4.1.2.1
+003 i 6
.1.3.6.1.4.1.2011.6.10.1.2.4.1.3.1003 i 1 .1.3.6.1.4.1.2011.6.10.1.2.
+4.1.4.1003 s 'config.cfg'
.1.3.6.1.4.1.2011.6.10.1.2.4.1.5.1003 a 192.168.0.1 .1.3.6.1.4.1.2011.
+6.10.1.2.4.1.6.1003 s 'user'
.1.3.6.1.4.1.2011.6.10.1.2.4.1.7.1003 s 'password' .1.3.6.1.4.1.2011.6
+.10.1.2.4.1.9.1003 i 4
what am I doing wrong?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.