L'automatisation des périphériques réseau, tels que les routeurs et commutateurs Cisco, peut être facilement réalisée à l'aide de Python avec la bibliothèque Netmiko, conçue pour gérer facilement les connexions SSH. Ci-dessous, je vous montre deux scripts de base pour visualiser la configuration d'un appareil Cisco et pour automatiser la création et la configuration des VLAN.
1. Script pour afficher la configuration d'un appareil Cisco (routeur) :
from netmiko import ConnectHandler ssh=ConnectHandler( device_type="cisco_ios", host="192.168.0.10", port=22, username="cisco", password="cisco" ) out=ssh.send_command("show run") print(ssh.find_prompt()) print("show run:\n"+out)
Fonctionnement :
Ce script est utile pour effectuer des requêtes de configuration rapides sur les appareils Cisco de manière automatisée.
2. Script pour créer, configurer et attribuer des adresses IP aux VLAN :
from netmiko import ConnectHandler ssh = ConnectHandler( device_type="cisco_ios", host="192.168.10.2", port=22, username="womar1", password="womar" ) ssh.enable() comandos = [ "hostname uwu", "vlan 10", "interface vlan 10", "ip address 192.168.2.1 255.255.255.0", "no shutdown", 'interface range fa0/1 - 5', # Corrección aquí "switchport mode access", 'switchport access vlan 10', "vlan 20", "interface vlan 20", "ip address 192.168.3.1 255.255.255.0", "no shutdown", 'interface range fa0/6 - 10', # Corrección aquí "switchport mode access", 'switchport access vlan 20', "vlan 10", "interface vlan 30", "ip address 192.168.4.1 255.255.255.0", "no shutdown", 'interface range fa0/11 - 15', # Corrección aquí "switchport mode access", 'switchport access vlan 30', "vlan 10", "interface vlan 40", "ip address 192.168.5.1 255.255.255.0", "no shutdown", 'interface range fa0/16 - 20', # Corrección aquí "switchport mode access", 'switchport access vlan 40', "vlan 50", "interface vlan 50", "ip address 192.168.200.1 255.255.240.0", "no shutdown", 'interface range fa0/21 - 22', # Corrección aquí "switchport mode access", 'switchport access vlan 50', ] ssh.send_config_set(comandos) configuracion = ssh.send_command("show run") comands = ssh.find_prompt() print(comands) print("show run:\n" + configuracion)
Fonctionnement :
Ce script est idéal pour automatiser la configuration des VLAN et attribuer des IP aux interfaces, facilitant ainsi l'administration de réseaux complexes de manière rapide et efficace.
Ressources nécessaires :
Avant de commencer à automatiser la configuration des appareils Cisco à l'aide de Python, il est important de vous assurer que vous disposez du bon environnement. Je détaille ici les ressources et outils dont vous aurez besoin :
1. Installation de Python et des bibliothèques
Vous devez avoir Python 3.6 ou supérieur installé sur votre système. Si vous ne l'avez pas encore, vous pouvez facilement l'installer en fonction de votre système d'exploitation.
Pour interagir avec les appareils Cisco de manière automatisée, nous utilisons Netmiko, une bibliothèque Python qui facilite la connexion SSH aux routeurs et commutateurs.
2. Installation des Bibliothèques
Pour installer Netmiko et ses dépendances (dont Paramiko), exécutez la commande suivante dans votre terminal :
pip install netmiko
Cette commande téléchargera et installera Netmiko ainsi que ses dépendances nécessaires. Une fois terminé, vous pouvez vérifier que tout a été correctement installé en utilisant :
pip list
Cela vous montrera toutes les bibliothèques installées, parmi lesquelles vous devriez voir netmiko et paramiko.
3. Accès SSH aux appareils Cisco
En plus des bibliothèques installées, vous devez vous assurer que le périphérique Cisco (routeur ou commutateur) est configuré pour accepter les connexions SSH. Vous trouverez ci-dessous quelques points clés pour activer l'accès :
a) Activez SSH sur le périphérique Cisco :
configure terminal ip domain-name cisco.local crypto key generate rsa username cisco privilege 15 secret cisco line vty 0 4 transport input ssh login local exit
b) Vérifiez les informations d'identification et l'adresse IP :
Avec ces configurations, vous êtes prêt à exécuter des scripts et à automatiser des tâches sur les appareils Cisco à l'aide de Python.
Conclusion
Avec les bonnes ressources (Python, Netmiko, SSH activés sur les appareils Cisco) et les bibliothèques nécessaires installées, vous serez prêt à commencer à automatiser la configuration et la gestion de vos appareils réseau à l'aide de Python. Netmiko facilite la connexion et l'exécution de commandes sur ces appareils, simplifiant les tâches répétitives et améliorant l'efficacité de la gestion du réseau.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!