Целевая аудитория
- сетевые инженеры, желающие освоить Python для автоматизации
- администраторы сетей, стремящиеся упростить рутинные задачи
- специалисты с базовым опытом, готовые углубить навыки программирования
Предварительные требования
- базовое понимание сетевых технологий (IP, протоколы, маршрутизация)
- знание основ Python (переменные, циклы, функции) — желательно
- опыт работы с сетевым оборудованием (CLI, конфигурации)
Приобретаемые знания и навыки
По окончании курса слушатели смогут:
- автоматизировать задачи конфигурации и мониторинга сетей
- работать с сетевыми API и парсить данные оборудования
- писать скрипты для анализа логов и трафика
- использовать Python для взаимодействия с устройствами и системами
- применять асинхронность для ускорения сетевых операций
Программа курса
Модуль 1. Python для сетевых инженеров: старт и настройка
- Почему Python для сетей: реальные кейсы автоматизации;
- Установка Python: интерпретатор, pip, виртуальные окружения;
- Инструменты инженера: VS Code с плагинами для сетевых скриптов;
- Первый сетевой скрипт: генерация IP-адресов из подсети;
- Практикум: Написание скрипта для вывода списка IP из заданной сети (например, 192.168.1.0/24)
Модуль 2. Данные и структуры: обработка сетевой информации
- Числовые типы: преобразование IP в десятичный формат и обратно;
- Строки: парсинг вывода CLI (например, "show ip int brief");
- Списки и словари: хранение интерфейсов и их статусов;
- Логические операторы: фильтрация данных (активные vs неактивные порты);
- Практикум: Скрипт для разбора вывода "show interfaces" в словарь (интерфейс: статус).
Модуль 3. Функции и модули: автоматизация шаг за шагом
- Функции: написание утилит (например, проверка валидности IP);
- Модули: подключение paramiko для SSH или requests для API;
- Передача аргументов: обработка параметров (IP, порт, команда);
- Обработка ошибок: try-except для устойчивости скриптов;
- Практикум: Функция для проверки доступности устройства по IP (ping или SSH).
Для лекции: Покажи, как функция спасает от ошибок ввода, — это впечатлит.
Модуль 4. Алгоритмы для сетей: анализ и оптимизация
- Поиск: проверка наличия IP в списке подсетей;
- Сортировка: упорядочивание списка MAC-адресов;
- Рекурсия: разбиение сети на подсети (например, /24 → /28);
- Парсинг логов: поиск ошибок по ключевым словам;
- Практикум: Скрипт для анализа логов и подсчета ошибок интерфейсов.
Модуль 5. ООП для сетей: моделирование устройств
- Классы: создание модели NetworkDevice (IP, имя, тип);
- Методы: подключение, получение статуса, отправка команд;
- Наследование: классы Router и Switch с разным поведением;
- Инкапсуляция: скрытие паролей и учетных данных;
- Практикум: Класс Router с методом вывода таблицы маршрутизации.
Модуль 6. Взаимодействие через API: данные от оборудования
- REST API: подключение к устройству (например, Cisco DNA);
- JSON: парсинг ответа (список интерфейсов, нагрузка);
- Аутентификация: токены и ключи для доступа;
- Обработка данных: фильтрация по статусу или трафику;
- Практикум: Скрипт для получения списка активных интерфейсов через API.
Модуль 7. Асинхронность: ускоряем сетевые операции
- Зачем асинхронность: опрос множества устройств;
- Asyncio: запуск параллельных подключений;
- Корутины: асинхронный пинг или сбор данных;
- Ошибки и таймауты: управление асинхронными сбоями;
- Практикум: Асинхронный опрос статуса 5 устройств одновременно.
Модуль 8. Автоматизация сетей: реальные кейсы
- Типовые задачи: резервное копирование конфигураций;
- Парсинг конфигов: извлечение VLAN или IP;
- Мониторинг: сбор метрик (загрузка CPU, трафик);
- Генерация отчетов: сводка по статусу сети;
- Практикум: Скрипт для бэкапа конфигурации через SSH и отчета в CSV.
ДОКУМЕНТЫ ОБ ОКОНЧАНИИ КУРСА
- Сертификат Учебного центра Noventiq
- Cертификат об обучении установленного образца

