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

Конфигуратор коммутаторов D-Link

Привет всем. Написал под себя небольшой конфигуратор (с псевдо GUI на основе dialog, можно использовать на серверных сборках) для конфигурации коммутаторов через USB/COM кабель, решил поделится. В принципе можно допилить под свои нужды как угодно. Так как опыт в скриптописании сравнительно небольшой прошу не "кидать тапками". Проверялся на коммутаторах DES-32xx и DES-30xx, опять же можно переделать под какие угодно модели. Присутствует базовая настройка, IP, Vlans, Loopdetect, Traffic Control, Multicast, SNMP community, SNTP.

v6Z_8tv9JQw.jpg

 

UEYavMJlvF0.jpg

 

75CbLIU7Q7g.jpg

swconf2.zip

Edited by moonsn

Share this post


Link to post
Share on other sites

Спасибо за скрипт.

Начиная с 130 строки осталось сделать читабельное форматирование кода.

Сделать глобальную переменную со значением "SWITCHconf v2.0 Beta".

Кое-где встречается sleep 1, что желательно обосновать применение.

 

Конструкции вида:

echo "create syslog host 1 ipaddress $syslogserv severity all state enable">$usb1
echo "enable syslog">$usb1

заменить на

 

cat << EOF > $usb1
create syslog host 1 ipaddress $syslogserv severity all state enable
enable syslog
EOF

Share this post


Link to post
Share on other sites

Начиная с 130 строки осталось сделать читабельное форматирование кода.

Сделать глобальную переменную со значением "SWITCHconf v2.0 Beta".

Кое-где встречается sleep 1, что желательно обосновать применение.

 

Конструкции вида:

echo "create syslog host 1 ipaddress $syslogserv severity all state enable">$usb1
echo "enable syslog">$usb1

заменить на

 

cat << EOF > $usb1
create syslog host 1 ipaddress $syslogserv severity all state enable
enable syslog
EOF

 

Спасибо за Ваш отзыв и подсказки. Недочеты из за того, что такой большой (для меня) скрипт писал впервые и практически с нулевыми знаниями Linux систем, спустя всего месяц после знакомства с ними.

Сделать глобальную переменную со значением "SWITCHconf v2.0 Beta".

Изначально что то не подумал об этом, тем самым усложнив себе работу

Кое-где встречается sleep 1, что желательно обосновать применение.

sleep 1 собственно как таковой не нужен, он идет только для нормальной визуализации прогресс-бара выполнения процесса.

Share this post


Link to post
Share on other sites

Спасибо за Ваш отзыв и подсказки. Недочеты из за того, что такой большой (для меня) скрипт писал впервые и практически с нулевыми знаниями Linux систем, спустя всего месяц после знакомства с ними.

 

Используйте тактику "Тик-так".

На фазу Тик добавляйте функционал.

На фазу Так оптимизируйте написанное.

 

Ну, и промежуточные тесты в виртуалке.

 

Да, советую использовать IDE IntelliJ IDEA с модулем BashSupport

Локальный Git или еще github - по вкусу.

Share this post


Link to post
Share on other sites

Старания похвальны, но зачем?

Как правило конфигурация пишется единажды, дальше по написанному шаблону, подстановкой параметров, и ручным измененем при необходимости под задачу. Последнее реже.

Share this post


Link to post
Share on other sites

Старания похвальны, но зачем?

Как правило конфигурация пишется единажды, дальше по написанному шаблону, подстановкой параметров, и ручным измененем при необходимости под задачу. Последнее реже.

В основном для собственной практики при изучении Linux систем и bash кодинга. Второстепенно - чтобы опять же был шаблон. Поделился скриптом с той же целью, чтобы у кого то был шаблон, который можно переделать и использовать под себя. Наработки лежат, что добру пропадать. Когда в свое время ставил заббикс, тоже зачастую пользовался чужими наработками, кусками кода, это очень помогло, особенно если учесть что тогда знания были вообще нулевые а задача стояла.

Share this post


Link to post
Share on other sites

Альтруизм. Похвально. В любом случае, спасибо за наработку. Может пригодиться. Вам дальнейшего успеха в этом деле.

p.s. подправте свой первый пост, ограничив картинки в размере, а то рвёт.

Edited by bomberman

Share this post


Link to post
Share on other sites

Еще пару скриптов.

1. FindMAC - bash скрипт для автоматического поиска заданного mac адреса в сети коммутаторов D-Link.
Поддерживает модели коммутаторов:
DES-3200-10
DES-3200-18
DES-3200-26
DES-3200-28
DES-3200-28F
DES-3010G
DES-3016
DES-3026
Для корректной работы скрипта необходимо создать файл ip.txt в папке скрипта с перечисленными ip адресами коммутаторов
Пример:
192.168.0.1
192.168.0.2
192.168.0.31
Зная OIDы коммутаторов других серий можно вполне привязать и к другим моделям D-Link'а.

 

2. D-Link ports checker - скрипт проверки портов на прохождение трафика. Работает по snmp (коммьюнити нужно указать свое).
Запрашивает ip, модель, аптайм и проверяет все порты на то, было ли прохождение broadcast трафика после последней перезагрузки коммутатора до момента проверки. Выдает результат в виде количества портов и были ли они использованы - Used или нет - Not Used.
Для нормально работы скрипта необходимо установить пакеты expect и dialog.

find_mac.sh

utiliz.zip

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