Visualizing network topologies with Golang

This day is inspired by the article “Визуализация сетевых топологий, или зачем еще сетевому инженеру Python #2”. I wrote Golang program that analyzes the output of the cisco sh int, sh mac-address-table (for switches) or sh ip arp (for routers) commands and vizualizes network topology from mac address tables. I only used mac address information, not LLDP (CDP). NeXt Ui (Github) is used for visualization. For example, I received an output with self-made telnet client on Golang from a network of this topology: ...

<span title='2020-08-23 00:00:00 +0000 UTC'>August 23, 2020</span>

Использование EasyJSON в golang вместо encoding/json

Пакет Go easyjson от Mail.Ru предоставляет быстрый и простой способ маршалировать/демаршалировать структуры Go в/из JSON основанный на рефлексии. В тестах производительности easyjson превосходит стандартный encoding/json пакет в несколько раз (сравнительный benchmark в конце). Установка и использование (OS Windows) Должна быть установлена переменная окружения GOPATH. У меня: echo %GOPATH% d:\projects-go\ И должен быть установлен git. Cтавим easyjson: go get -u github.com/mailru/easyjson/... в %GOPATH%\bin появится easyjson.exe В каталоге нашего проекта создаем подкаталог, он же пакет go, отличный от main (это обязательно), например %GOPATH%\project\model ...

<span title='2020-08-08 00:00:00 +0000 UTC'>August 8, 2020</span>

Сохранение паролей в Windows Credentials Locker из Python

Ставим keyring pip install keyring Выполняем import keyring keyring.set_password("system", "username", "password") Результат Доступ к данным keyring.get_password("system", "username") 'password'

<span title='2020-04-08 00:00:00 +0000 UTC'>April 8, 2020</span>