Cisco Auto Cdp Description is a script for automating the configuration of Cisco switches, allowing bulk interface description setup based on data obtained through the proprietary CDP (Cisco Discovery Protocol). The script facilitates easy management of multiple switches using IP ranges and includes a mechanism for handling authentication and privileged access errors.
- Bulk Configuration: Ability to configure multiple switches using an IP range.
- Authentication: Supports login and password with optional enable password support.
- Error Handling: If authentication errors or the need for an enable password occur, the script will prompt for re-entry of the necessary information.
- Flexibility: The script works with Cisco switches that support
show cdp neighbors detail
. - Color-coded Output: Interactive and informative output using ANSI codes for event indication.
- Clone the repository:
git clone https://github.com/shendr404/cisco-auto-cdp-description.git
- Navigate to the project directory:
cd cisco-auto-cdp-description
- Create a virtual environment:
python3 -m venv venv
- Activate the virtual environment:
- On Windows:
venv\Scripts\activate
- On macOS/Linux:
source venv/bin/activate
- Clone the repository:
git clone https://github.com/shendr404/cisco-auto-cdp-description.git
- Navigate to the project directory:
cd CiscoAutoConfig
- Install the required dependencies (if needed):
pip install netmiko
- Run the script:
python en/cdp_description.py
- Enter the IP address or range of IP addresses for the switches you want to configure (e.g., 192.168.0.1 or 192.168.0.1-192.168.0.10).
- Enter the login, password, and, if necessary, the enable password to connect to the switches.
- The script will automatically connect to all switches within the specified range, gather information about neighboring devices via CDP, and configure the interface descriptions.
- If any errors occur during connection or when entering configuration mode, the script will notify you and prompt for re-entry of the necessary information.
- If an enable password was not provided at the start but is required during the script's execution, you will be prompted to enter it.
Enter the IP address or range of IP addresses (e.g., 192.168.0.1-192.168.0.10): 192.168.0.1-192.168.0.10
Enter login: admin
Enter password: password
Is an enable password required? (y/n): y
Enter enable password: enablepassword
After entering the information, the script will sequentially connect to each switch in the range, configure the interfaces, and save the configuration.
- Python 3.6+
netmiko
module
This project is licensed under the GPL-3.0 License — see the LICENSE file for details.
If you have any questions or suggestions, you can contact the author via GitHub Issues.
Author: shendr404
Сisco Auto Cdp Description — это скрипт автоматизации настройки коммутаторов Cisco, который позволяет выполнять массовую настройку описания интерфейсов на основе данных, полученных с помощью проприетарного протокола CDP (Cisco Discovery Protocol). Скрипт позволяет легко управлять большим количеством коммутаторов, используя IP-диапазоны, и включает механизм обработки ошибок аутентификации и привилегированного доступа.
- Массовая настройка: Возможность конфигурации нескольких коммутаторов по диапазону IP-адресов.
- Аутентификация: Поддержка логина и пароля с возможностью использования enable пароля.
- Обработка ошибок: При возникновении ошибок аутентификации или необходимости использования enable пароля скрипт предложит повторный ввод данных.
- Гибкость: Скрипт работает с коммутаторами Cisco, поддерживающими
show cdp neighbors detail
. - Цветной вывод: Интерактивный и информативный вывод с использованием ANSI-кодов для цветовой индикации событий.
- Клонируйте репозиторий:
git clone https://github.com/shendr404/cisco-auto-cdp-description.git
- Перейдите в директорию проекта:
cd cisco-auto-cdp-description
- Создайте виртуальное окружение:
python3 -m venv venv
- Активируйте виртуальное окружение:
- На Windows:
venv\Scripts\activate
- На macOS/Linux:
source venv/bin/activate
- Клонируйте репозиторий:
git clone https://github.com/shendr404/cisco-auto-cdp-description.git
- Перейдите в директорию проекта:
cd CiscoAutoConfig
- Установите необходимые зависимости (если требуется):
pip install netmiko
- Запустите скрипт:
python ru/cdp_description.py
- Введите IP-адрес или диапазон IP-адресов коммутаторов, которые вы хотите настроить (например, 192.168.0.1 или 192.168.0.1-192.168.0.10).
- Введите логин, пароль, и при необходимости, enable пароль для подключения к коммутаторам.
- Скрипт автоматически подключится ко всем коммутаторам в указанном диапазоне, соберет информацию о соседних устройствах через CDP, и настроит описание интерфейсов.
- Если на каком-либо этапе подключения или при переходе в конфигурационный режим возникнет ошибка, скрипт уведомит вас об этом и предложит повторно ввести соответствующие данные.
- Если enable пароль не был указан при запуске, но потребовался во время работы скрипта, его также можно будет ввести при необходимости.
Введите диапазон IP-адресов (например, 192.168.0.1-192.168.0.10): 192.168.0.1-192.168.0.10
Введите логин: admin
Введите пароль: password
Требуется ли enable пароль? (y/n): y
Введите enable пароль: enablepassword
После ввода данных скрипт последовательно подключится к каждому коммутатору в диапазоне, настроит интерфейсы и сохранит конфигурацию.
- Python 3.6+
- Модуль
netmiko
Этот проект лицензирован под лицензией GPL-3.0 - подробности см. в файле LICENSE.
Если у вас возникли вопросы или предложения, вы можете связаться с автором через GitHub Issues.
Автор: shendr404