Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Luciomo/Network-Automation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Network Automation (Cisco Switches) 🐍🔧

Resumo

Este projeto contém scripts em Python para automatizar a configuração de múltiplos switches Cisco via Telnet. Os scripts configuram parâmetros básicos (hostname, usuário, VLANs, interfaces, console, etc.) e suportam a criação massiva de VLANs (por exemplo, 11–200).


Arquivos principais

  • python_devnet.py
    Script refatorado que pede credenciais uma vez e itera por uma lista de hosts (hosts), conectando por Telnet e aplicando configurações básicas. Inclui:

    • retries de conexão e timeouts
    • detecção flexível de prompts (Username/Password)
    • delays entre comandos para evitar Broken pipe
    • logging (console + arquivo rotativo network_automation.log)
  • python_loops_devnet.py
    Script menor que demonstra uso de loop para criar VLANs (ex.: 11–200) em um host conectado por Telnet.


Como usar

  1. Coloque os IPs dos seus switches na lista hosts dentro do python_devnet.py.
  2. Execute com Python 3.x:
python python_devnet.py
  1. Quando solicitado, informe o Usuario e a Senha (será solicitado apenas uma vez). Recomendo testar primeiro com um único host para validar:
# Exemplo: testar apenas o primeiro host
hosts = ["172.20.30.1"]

Saída e logs

  • Logs são exibidos no console e gravados em network_automation.log (rotating file).
  • Em caso de erro (ex.: [Errno 32] Broken pipe), verifique:
    • conectividade (ping/ACLs)
    • se o Telnet está ativo no equipamento
    • aumentar delays entre comandos ou reduzir número de comandos consecutivos

Imagem da topologia

A imagem que representa a topologia deve estar em images/topology.png para ser exibida abaixo. Se você tiver o arquivo de imagem (anexo), salve-o nesse caminho.

Topology

Se preferir, renomeie o arquivo da imagem para topology.png e coloque no diretório images/.


Sugestões de melhoria

  • Substituir Telnet por Netmiko/Nornir para maior robustez e suporte a SSH.
  • Adicionar argparse para controlar hosts, nível de log e modo --dry-run.
  • Implementar retomada (resume) em caso de desconexão durante tarefas longas (ex.: criação de VLANs).

Licença

MIT License — sinta-se livre para adaptar o projeto às suas necessidades.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages