Jump to content
Калькуляторы

Обновление прошивки на коммутаторах SNR по SNMP

Добрый день! 
Прошу помочь с решением следующей задачи: есть 1600 коммутаторов SNR, на всех необходимо обновить прошивку. Заходить на каждый по отдельности и вручную качать файл не очень хочется, на данный момент пытаюсь решить данную проблему скриптом, который сам будет заходить на все железки и заливать софт.

У меня вопрос: а возможно ли обновить софт по SNMP-протоколу? Если да, то прошу подсказать как, или хотя бы в какую сторону копать. 

Заранее благодарю

Share this post


Link to post
Share on other sites

@Bonik добрый день.

Обновить ПО через SNMP можно. Процедура сводится к копированию файла с TFTP/FTP сервера в файл nos.img на коммутаторе. Возможно потребуется обновить и boot.rom.

Вот описание из нашей статьи в базе знаний:

 

Скрытый текст

Передача файлов

Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.3.0 s server_ip

 

Задаем имя файла на коммутаторе:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.4.0 s switch_file

 

Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.5.0 s server_file

 

Устанавливаем тип сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.7.0 i server_type

 

Запускаем процедуру передачи файла:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.8.0 i direction

 

Проверка статуса выполнения команды:

snmpget -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния (0 - Error, 1 - OK, 2 - Uploading, 3 - Downloading, 4 - Idle)

 

где:

ip_addr - IP коммутатора

server_ip - IP адрес сервера

switch_file - имя файла на коммутаторе

server_file - имя файла на сервере

server_type - тип сервера (1 - FTP, 2 - TFTP)

direction - направление передачи файла по отношению к коммутатору (1 - Upload, 2 - Download)


Сохранение настроек коммутатора

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.6.0 i 1


Перезагрузка коммутатора

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.1.0 i 3

 

 

Share this post


Link to post
Share on other sites
11 minutes ago, Ivan Tarasenko said:

@Bonik добрый день.

Обновить ПО через SNMP можно. Процедура сводится к копированию файла с TFTP/FTP сервера в файл nos.img на коммутаторе. Возможно потребуется обновить и boot.rom.

Вот описание из нашей статьи в базе знаний:

 

  Reveal hidden contents

Передача файлов

Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.3.0 s server_ip

 

Задаем имя файла на коммутаторе:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.4.0 s switch_file

 

Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.5.0 s server_file

 

Устанавливаем тип сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.7.0 i server_type

 

Запускаем процедуру передачи файла:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.8.0 i direction

 

Проверка статуса выполнения команды:

snmpget -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния (0 - Error, 1 - OK, 2 - Uploading, 3 - Downloading, 4 - Idle)

 

где:

ip_addr - IP коммутатора

server_ip - IP адрес сервера

switch_file - имя файла на коммутаторе

server_file - имя файла на сервере

server_type - тип сервера (1 - FTP, 2 - TFTP)

direction - направление передачи файла по отношению к коммутатору (1 - Upload, 2 - Download)


Сохранение настроек коммутатора

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.6.0 i 1


Перезагрузка коммутатора

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.1.0 i 3

 

 

Иван, спасибо большое за помощь! 
Вроде перед тем, как писать, пробежался по форуму и базе знаний... Сходу не смог найти. Что ж, пойду тестить

Share this post


Link to post
Share on other sites

Доброго времени суток. Возможно не в той теме. Хотелось бы уточнить. Как перекинуть кусок конфигурации на SNR (2965) . Допустим на Dlink можно кинуть такой командой:

 

DES-3526:admin#download cfg_fromTFTP 0.0.0.0 /cfg/3526.cfg increment 

При этом состав конфигурации содержит только ACL. 

 

Ну и собственно вопрос...как обновить только нужную конфигурацию у 100+ железок серии SNR 2965?

Share this post


Link to post
Share on other sites

@Kroys обычно в cisco-like это copy FILE_URL run - проверьте есть ли такая команды на ваших свитчах

Share this post


Link to post
Share on other sites
31 minutes ago, s.lobanov said:

@Kroys обычно в cisco-like это copy FILE_URL run - проверьте есть ли такая команды на ваших свитчах


SNR-S2965-24T#copy tftp://0.0.0.0/startup.cfg startup.cfg
ascii                      binary                     indentity-key 

 

Какую из них выберать?

Share this post


Link to post
Share on other sites
17 часов назад, Kroys сказал:


SNR-S2965-24T#copy tftp://0.0.0.0/startup.cfg startup.cfg
ascii                      binary                     indentity-key 

 

Какую из них выберать?

Выберите binary (по-умолчанию), или не выбирайте ничего - просто нажмите Enter.

 

100+ коммутаторов возможно будет проще обновить через SNMP: 

Скрытый текст

Для начала необходимо настроить SNMP на коммутаторе (если еще не настроен):

conf

snmp-server enable
snmp-server securityip disable
snmp-server community ro 0 public
snmp-server community rw 0 private

 

Передача файлов (с примером сохранения конфигурации на TFTP-сервер)

Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.3.0 s server_ip

 

Задаем имя файла на коммутаторе:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.4.0 s switch_file

 

Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.5.0 s server_file

 

Устанавливаем тип сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.7.0 i server_type

 

Запускаем процедуру передачи файла:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.8.0 i direction

 

Проверка статуса выполнения команды:

snmpget -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния (0 - Error, 1 - OK, 2 - Uploading, 3 - Downloading, 4 - Idle)

 

где:

ip_addr - IP коммутатора

server_ip - IP адрес сервера

switch_file - имя файла на коммутаторе

server_file - имя файла на сервере

server_type - тип сервера (1 - FTP, 2 - TFTP)

direction - направление передачи файла по отношению к коммутатору (1 - Upload, 2 - Download)

 

Share this post


Link to post
Share on other sites
21 minutes ago, Ivan Tarasenko said:

Выберите binary (по-умолчанию), или не выбирайте ничего - просто нажмите Enter.

 

100+ коммутаторов возможно будет проще обновить через SNMP: 

  Hide contents

Для начала необходимо настроить SNMP на коммутаторе (если еще не настроен):

conf

snmp-server enable
snmp-server securityip disable
snmp-server community ro 0 public
snmp-server community rw 0 private

 

Передача файлов (с примером сохранения конфигурации на TFTP-сервер)

Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.3.0 s server_ip

 

Задаем имя файла на коммутаторе:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.4.0 s switch_file

 

Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.5.0 s server_file

 

Устанавливаем тип сервера:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.7.0 i server_type

 

Запускаем процедуру передачи файла:

snmpset -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.8.0 i direction

 

Проверка статуса выполнения команды:

snmpget -v2c -c private ip_addr .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния (0 - Error, 1 - OK, 2 - Uploading, 3 - Downloading, 4 - Idle)

 

где:

ip_addr - IP коммутатора

server_ip - IP адрес сервера

switch_file - имя файла на коммутаторе

 server_file - имя файла на сервере

 server_type - тип сервера (1 - FTP, 2 - TFTP)

direction - направление передачи файла по отношению к коммутатору (1 - Upload, 2 - Download)

  

Спасибо за ответ. А возможно ли обновить часть конфига? А не весь полностью..на длинке такая возможность присутствует.

Share this post


Link to post
Share on other sites
Только что, Kroys сказал:

Спасибо за ответ. А возможно ли обновить часть конфига? А не весь полностью..на длинке такая возможность присутствует.

Такой возможности нет. 

Share this post


Link to post
Share on other sites
1 minute ago, Ivan Tarasenko said:

Такой возможности нет. 

Хорошо, спасибо. Будем выкручиваться так. Хотелось бы добавить это в копилку пожеланий =)

Share this post


Link to post
Share on other sites

Доброго дня, хотелось бы уточнить, если нужно обновить boot и сам root можно ли это сделать одновременно? То есть по snmp задать загрузку сначала boot, потом root, а затем дать команду на перезагрузку? Или сначала нужно по snmp загрузить boot потом дать команду на перезагрузку, затем по snmp загрузить root и дать снова команду на перезагрузку?

Спасибо!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this