faq обучение настройка
Текущее время: Пт авг 29, 2025 17:50

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: DES-3526, ACL по SNMP
СообщениеДобавлено: Пн июн 05, 2006 13:55 
Не в сети

Зарегистрирован: Пт апр 01, 2005 17:41
Сообщений: 177
Откуда: Омск
Здравствуйте уважаемые, объясните чайнику, как собственно сделать.

Есть необходимость добавлять/удалять ACL в автоматическом режиме, если я правильно понял – оптимальный способ по SNMP.

DES-3526
Boot PROM Version: 3.00.004
Firmware Version: 3.06-B20
Hardware Version: 1A1

Что сделано, скачал mib’ы проверил как все это работает на DViev5.1 всё отлично, но задача обходится «без рук»
С SNMP дела не имел. Начал общение через виндузявую приблюду которая поставляется с дистрибутивом. Написал скрипт на vbscript тестировал на стандартные функции RCF1213, всё как не странно получилось с первого раза, но как только добрался до ACL (SW-ACLMGMT-MIB) отказывается компилироваться, попытки полазить в мибах и поправить что нибудь ни к чему не привели, вот и прошу совета, может можно как ни будь проше без мибов? А быть может есть другие утилиты которые позволят из скрипта запускаться с нужными параметрами – передавать на устройства необходимее данные и забирать информацию. Только есть одно условие – платформа win32 :-)
Спасибо.

Пример скрипта:

Код:
<job>
<script language="vbscript">

StrIPAddress = "xxx.xxx.xxx.xxx"

Set wmiLocator = CreateObject("WbemScripting.SWbemLocator")
Set wmiService = wmiLocator.ConnectServer(, "root\snmp\localhost")
Set wmiContext = CreateObject("WbemScripting.SWbemNamedValueSet")
Set strName = wmiContext.Add("AgentAddress", StrIPAddress)
Set strName = wmiContext.Add("AgentReadCommunityName", "public")
Set SelectObjects = wmiService.ExecQuery ("Select ifAdminStatus, ifDescr, ifSpeed, ifOperStatus from SNMP_RFC1213_MIB_ifTable", , , wmiContext)
For Each SelDataObject In SelectObjects
        For Each SelData in SelDataObject.Properties_
      If Not IsNull( SelData.Name ) Then
         WScript.Echo SelData.Name & " : " & SelData.Value
      End If
   Next
   wscript.echo "******************"
Next

</script>
</job>


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: DES-3526, ACL по SNMP
СообщениеДобавлено: Пн июн 05, 2006 20:06 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
Morpeh писал(а):
одно условие – платформа win32 :-)
про active perl слышали? под перловку есть замечательные SNMP_Util и SNMP_Session, попробуйте, Вам понравится ;)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн июн 05, 2006 20:12 
Не в сети

Зарегистрирован: Пт апр 01, 2005 17:41
Сообщений: 177
Откуда: Омск
Слышал но не пробывал - я как то больше asp.net :-)
Спасибо, попробую.
а примерчик запроса не дадите? :oops:


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн июн 05, 2006 21:25 
Не в сети

Зарегистрирован: Пт апр 01, 2005 17:41
Сообщений: 177
Откуда: Омск
Aperl установил - занятная штука :)
что то я ни как не найду SNMP_Util и SNMP_Session под windows.
ссылками не поделитесь? если они кончено есть


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 13:58 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
Morpeh писал(а):
а примерчик запроса не дадите? :oops:
вот так вот примерно у меня с кошки статистика по траффику через SNMP в свое время собиралась... тут многое урезано, если интересно, могу дать полный вариант ;)
Код:
use BER;
use SNMP_util;
use DBI;
use POSIX qw(strftime);
use strict;
++$|;

my $host = "1.1.1.1";
my $community = "private";
my $router = "$community\@$host";

my $dbhost = "localhost";
my $dbuser = "root";
my $dbpass = "root";
my $dbname = "traf";


my $dbh = DBI->connect("dbi:mysql:$dbname", $dbuser, $dbpass) or die $DBI::errstr;

# необходимые OID-ы
&snmpmapOID("actLostByts", "1.3.6.1.4.1.9.2.4.6", "actCheckPoint", "1.3.6.1.4.1.9.2.4.11", "ckactByts", "1.3.6.1.4.1.9.2.4.9.1.4");
# actLostByts   - Total bytes of lost IP packets.
# actCheckPoint - Check points the accounting database.
# ckactByts     - Total number of bytes in IP packets from source to destination in checkpoint matrix.
#                 A zero value indicates that no access list was violated.

# забор статистики
my ($checkpoint) = snmpget($router, 'actCheckPoint.0');
snmpset ($router,'actCheckPoint.0','integer',$checkpoint);
my (@data)       = snmpwalk($router, 'ckactByts');
my $query        = "INSERT INTO traffic_tmp (src_ip,dst_ip,bytes) VALUES (INET_ATON(?),INET_ATON(?),?);";
my $sth          = $dbh->prepare($query) or die $DBI::errstr;
foreach (@data) {
    /(\d+\.\d+\.\d+\.\d+)\.(\d+\.\d+\.\d+\.\d+):(\d+)/;
    my ($source,$destination,$bytes) = ($1,$2,$3);
    $sth->execute($source, $destination, $bytes) or die $DBI::errstr;
}
Morpeh писал(а):
ссылками не поделитесь?
лехко! ;) классический CPAN ну или сразу http://www.switch.ch/misc/leinen/snmp/perl/ ;)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 15:09 
Не в сети

Зарегистрирован: Пт апр 01, 2005 17:41
Сообщений: 177
Откуда: Омск
Спасибо, огромное!
на сайте я этом был... смутило расширение архива... :oops:

РАБОТАЕТ! как всё просто :-)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт июн 06, 2006 15:21 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
Morpeh писал(а):
Спасибо, огромное!
было б за что...
Morpeh писал(а):
РАБОТАЕТ!
вот! вот он пример творчесского подхода! фсем брать пример! если Вам не трудно, дайте потом пару примерчиков, страждущим пригодится... а то тут некоторых товарисчей идея "ACL через SNMP" чуть ли не в ступор вводит, как впрочем и идея управления свичом не иначе как через веб фейс...


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB