alexaaa Posted December 23, 2011 Posted December 23, 2011 Есть сеть на D-link коммутаторах, коммутаторов каждой серии по 60 штук, если ли скрипт на linux для прошивки коммутаторов всех одновременно по snmp? help? Вставить ник Quote
biox Posted December 23, 2011 Posted December 23, 2011 У меня есть скрипт который по телнету выполняет команды из файла commands, заходя по очереди на IP из файла Вставить ник Quote
passer Posted December 23, 2011 Posted December 23, 2011 (edited) expect + telnet (snmp) пишется минут за 10-15. Лучше сами потренируйтесь. Да, прошивая коммутаторы в поле, стоит предварительно проверить совместимость прошивок. На дебилинках сталкивался с крайне непредвиденными косяками с stp и ip-mac-port привязках. Edited December 23, 2011 by passer Вставить ник Quote
pppoetest Posted December 23, 2011 Posted December 23, 2011 на перле накидал подобный апдейт по телнету за 10 мин Да, прошивая коммутаторы в поле, стоит предварительно проверить совместимость прошивок. Знамо дело, сначала все прошивается и проверятся на стенде, затем десяток коммутаторов в поле, лишь потом массовый апдей Вставить ник Quote
mlevel Posted December 23, 2011 Posted December 23, 2011 (edited) есть еще empty Дайте линк. P.S. Сам увидел - http://empty.sourceforge.net/ Edited December 23, 2011 by mlevel Вставить ник Quote
passer Posted December 23, 2011 Posted December 23, 2011 (edited) Вероятно это: http://empty.sourceforge.net/ Интересно, однако. Edited December 23, 2011 by passer Вставить ник Quote
Negator Posted December 24, 2011 Posted December 24, 2011 на перле накидал подобный апдейт по телнету за 10 мин у меня на обычно шелле все работает. по snmp быстрее правда. там все просто. Вставить ник Quote
pppoetest Posted December 24, 2011 Posted December 24, 2011 (edited) по snmp быстрее правда. там все просто. Согласен, но у длинков есть один ... эмнь... одна особенность, менять ОИДы от прошивки к прошивке, CLI менее подвержен этому идиотизму Edited December 24, 2011 by pppoetest Вставить ник Quote
Ilya Evseev Posted December 25, 2011 Posted December 25, 2011 скрипт на linux для прошивки коммутаторов всех одновременно по snmp? Все одновременно опасно, т.к. при перепрошивке узлового устройства отвалятся конечные. Если они в этот момент тоже перепрошиваются - не факт, что процесс закончится успешно. Сценарий для сбора конфигов, можете взять за основу: #!/usr/bin/perl use strict; use warnings; use DBI; use Net::Telnet; my $TFTP_SERVER = '10.90.90.250'; my $TFTP_PATH = 'configs'; my $LOGIN = 'admin'; my $PASSWORD = 'MyPass'; sub exec_telnet($$) { my ($IP, $CMD) = @_; my $t = new Net::Telnet(Prompt => '/[\$%#>] *$/'); unless ($t) { warn "$IP: Cannot create Net::Telnet\n"; return undef; } unless ($t->open($IP)) { warn "$IP: Cannot open:".$t->errmsg."\n"; return undef; } print "$IP: Open OK.\n"; unless ($t->login($LOGIN, $PASSWORD)) { warn "$IP: Cannot login:".$t->errmsg."\n"; return undef; } print "$IP: Login OK.\n"; my @lines = $t->cmd($CMD); print "$IP: command passed.\n"; $t->close; print "$IP: Closed.\n"; } ... exec_telnet('10.90.90.12', "upload cfg_toTFTP tftp://$TFTP_SERVER/$TFTP_PATH/10.90.90.12.cfg"); exec_telnet('10.90.90.13', "upload configuration $TFTP_SERVER $TFTP_PATH/10.90.90.13.cfg running"); exec_telnet('10.90.90.14', "upload cfg_toTFTP $TFTP_SERVER $TFTP_PATH/10.90.90.14.cfg"); ... Вставить ник Quote
terrible Posted December 25, 2011 Posted December 25, 2011 по snmp быстрее правда. там все просто. Согласен, но у длинков есть один ... эмнь... одна особенность, менять ОИДы от прошивки к прошивке, CLI менее подвержен этому идиотизму У длинков OID-ы по работе с файлами не меняются (я ни разу такого не встречал), а зачастую они одни и теже даже на нескольких сериях коммутаторов. Вставить ник Quote
secandr Posted December 25, 2011 Posted December 25, 2011 Писал подобное на перле, но задача стояла: получить полностью настроенный коммутатор. Монтажник приходит, ставит коммутатор, настраивает ip и route, инженер с места пускает перловский скрипт. Скрипт проверяет прошивку, отключает stp, перепрошивает, включает stp, прописывает все типовые настройки, создаёт вланы,... + acl. Удобно. Вставить ник Quote
biox Posted December 25, 2011 Posted December 25, 2011 Некогда нашёл это в интернете cat conveer.sh #!/usr/local/bin/bash FILE=`cat $1 | sort -u` for I in $FILE do if [ -n "$I" ] then (sleep 1; echo admin_login; echo "admin_password";sleep 2; cat ./commands; sleep 5; )| telnet $I fi В скрипте правим admin_login и admin_password, в файл commands вписываем комманды, которые нужно выполнить на коммутаторе, в файл например с именем ipofswitchs вписываем в столбец ip адреса коммутаторов. Далее командой sh conveer.sh ipofswitchs выполняем команды на коммутаторах. Использую этот скрипт для до настройки или перенастройки коммутаторов dlink. Вставить ник Quote
sexst Posted December 26, 2011 Posted December 26, 2011 Все одновременно опасно, т.к. при перепрошивке узлового устройства отвалятся конечные. Если они в этот момент тоже перепрошиваются - не факт, что процесс закончится успешно. ИМХО постараться надо. Кучу раз шились сразу по 5-6-7К (сейчас еще больше) разношерстных длинков и эджкоров скриптом в пару десятков строк на питоне и ни разу ничего не пропало. Залить новую прошивку оно вообще нехитро. Хитрее с одновременным ребутом всех свитчей для зарузки новой прошивки. У Эджкоров есть отсрочка ребута, длинку приходится в кучу потоков скармливать всем свитчам "тяжелую команду" типа диагностики кабеля и сразу ребут. Кольца по свитчей 30 еще прокатывает. Длиннее пока нет. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.