Парсинг вывода команды через telnet

5 000 руб. за проект
26 октября 2021, 07:24 • 12 откликов • 59 просмотров
Дано: публичные центральные роутеры операторов связи, с открытым доступом для всех.
Цель: получать карту маршрутов глобального интернета.

Карта маршрутов получается обычно командой: show bgp

Нужна программа(с исходником), которая заходит через telnet на роутер, выполняет команду
и результат вывода парсит и сохраняет в csv файл.
Программа должна работать в консоли в linux.

На входе:
- Адрес роутера, например: route-server.he.net
- Пароль роутера, если указан, то используется, например в данном случае: rviews
- И команда для роутера, например: show bgp

Команда show bgp выдает длинный список с пагинацией, его нужно весь забрать.

Результатом является список, из которого нужны две колонки Network и Path
Это нужно вывести в файл csv.

Второй пример:
- route-views.kixp.routeviews.org
- без пароля
- show bgp

В выдаче могут быть несколько Path записей для Network, дубликаты нужно не класть в csv файл, если разные Path, то записать несколько строк Network с разными Path.