IP Address Management (сокращенно IPAM) – средство планирования, отслеживания и управления IP адресами в сети (
via).
В больших сетях отследить все используемые адреса и приготовиться к их изменению или внедрению новых – большая, трудновыполнимая задача. База данных IP адресов у многих ведется в различных табличка (Google Docs, Excel), у остальных не ведется совсем.
При изменениях в сети оперировать информацией из этих мест становится все сложнее и документы быстро теряют свою актуальность.
Именно поэтому было решено развернуть сервер управления IP адресами в нашей сети. После мук выбора я остановился на PHP IPAM - он показался мне наиболее дружелюбным и функциональным, к тому же имеет API для взаимодействия с внешними системами.
Посмотреть на демо это системы можно
тут
Как происходит установка этой замечательной системы я рассказывать не буду - всё и так хорошо описано в Интернете. Если будут вопросы - спрашивайте в комментариях
А так как сеть у меня уже большая и информация о ней мало где отражена, то актуальнейшая информация находится в таблицах маршрутизации роутеров. Эту информацию нужно внести в базу данных сервера IPAM. А как это сделать, я сейчас расскажу.
С помощью системы мониторинга The Dude выгружаем таблицу маршрутизации в csv
|
Экспорт из Dude в csv |
Открываем Excel и загружаем данные. Данные - из текста
|
Импорт csv в Excel |
Выбираем наш файл. В открывшемся окне указываем формат - с разделителям и жмем далее
|
С разделителями |
The Dude экспортирует в файл с раделителями - запятыми, поэтому выбираем "запятые" и жмем далее
|
Разделители - запятые |
На следующем шаге жмем кнопку "Готово"
|
Готово! |
Выбираем ячейку, начиная с которой нужно вставить данные - обычно это А1. И наслаждаемся результатом. Теперь можно подкорректировать табличку.
|
Excel |
Теперь нам нужно сформировать csv, который принял бы наш IPAM сервер. А у него следующий формат файла для импорта:
|
Формат csv для импорта в IPAM |
section name*(varchar(128)), subnet*(varchar(255)), mask(varchar(3)), description(text), vlan name(varchar(255)), domain name(varchar(64)), vrf name(varchar(32)). Обязательны только первые два параметра - имя секции и подсеть.
Оставим только нужную нам информацию
|
Убрали ненужное |
Как видим, остались только данные о подсети и связанного с ней филиала. Но имя интерфейса нам ни к чему, поэтому из строки вида <sstp-pub-740102> надо сделать RB740102. В этом нам поможет Excel
|
Найти и заменить |
Теперь нам нужно избавиться от закрывающего спецсимвола ">"
|
> |
|
Финиш близко
|
Приведем нашу табличку к такому виду
|
Готовый Excel |
И сохраним как csv. Excel ругнется на то, что мы потеряем данные, но мы готовы на такой риск =)
В итоге должны получить файл следующего вида
|
CSV |
Его уже можно импортировать в PHP IPAM. Заходим в Administration - Import/Export
|
Import |
В PHP IPAM на данный момент в версии 1.2 rev1 доступен импорт только subnets. Поэтому выбираем subnets и жмем Import
|
Import subnets |
Жмем Browse
|
Browse |
Выбираем наш csv и жмем открыть.
На этом этапе мы должны получить ошибку:
Error: Upload directory is not writable, or does not exist.
|
Error: Upload directory is not writable, or does not exist. |
Это значит, что у веб-сервера нет прав на запись в папку upload. Добавим эти права. Выполним в консоли sudo chmod -R g+w o+w /var/www/html/phpipam/app/admin/import-export/upload/
Тут должен быть путь до вашего сервера IPAM!
|
Import |
Повторяем пункты импорта. Система выдаст предупреждение о том, что не все пункты сопоставлены. Точно - в первом столбце пусто. Выбираем там section name и жмем Preview. Если все хорошо, то система покажет список импортируемых подсетей и их имена
|
Uploaded data |
Жмем Import и проверяем указанную в поле section csv-файла секцию. Наши записи успешно импортированы!
|
Готово! |
Можно ли таким способом импортировать и Master Sabnet??? Если не таким способом, то как?
ОтветитьУдалитьК сожалению не проверял. А сейчас уже и посмотреть-проверить негда
Удалить