В моей работе часто возникает необходимость быстро продиагностировать физические порты на коммутаторах. Способ который я предлагаю ускоряет процесс диагностики и делает его более наглядным по сравнению с прописыванием команд на коммутаторе. Тестирование производится на Linux, так же требуются:
minicom (putty тоже подойдет, утилита играет роль отображения информации в консоль);
сведенный к дефолтным настройкам коммутатор Dlink DGS-1210-28/ME;
в моем случая "модеризированный патч-корд" из 4 штук в одной шине (картинка в конце текста), но можно и обычный патч-корд.
Для удобства была написана программа gui на python 3. Она разбита на два модуля, один из которых реализует подключение по COM порту, второй - графический интерфейс.
Подробный алгоритм диагностики портов:
включаем коммутатор (ждем когда загрузится), подключаем его к компьютеру через конвертор USB to RS-232;
Чтобы узнать какие USB устройства у вас подключены можно воспользоваться командой:
ls /dev/ttyUSB*
;
(номер(строка) идущая после "USB" указать при запуске скрипта main.py)запускаем программу командой:
python3 main.py 0
- это часть имени USB to RS-232, который в программе представлен как:
0port = "/dev/ttyUSB"+str(sys.argv[1])
;
у вас эта часть может отличаться.запускаем параллельно в другом терминале minicom командой:
minicom -D /dev/ttyUSB0 -b 9600
;
после запуска нажать несколько раз Enter, чтобы пройти строки авторизации;коммутируем порты витой пары или SFP. Нажимаем кнопки графического интерфейса, что в свою очередь генерирует данные диагностики кабеля соответствующего порта.
Диагностику можно проводить как на одном так и на множестве коммутаторов:
Четыре совмещенных патч-корда склеил для удобства, в основном пользуюсь одним из них, переключая и проверяя сразу 4 порта (8 - если на одном коммутаторе).
SFP так же можно диагностировать, для этих портов прописанное отдельное условие для команды коммутатора show ports <номер порта(25-28)>.
Программу планирую дорабатывать:
универсальность для DGS 3120, 3100, 1210;
индикация о состоянии кабелей;
опция генерации циклического прохода по всем портам и записи результатов диагностики в файл.