Bannière

Aide mémoire des commandes Cisco

  Le 29 août 2023     Aurélien Schnoebelen     #cisco  

Dans ce mémo plutôt ambitieux, j’ai choisi de noter au fur et à mesure de mon apprentissage toutes les commandes que j’utilise afin de me les remémorer. Pour le moment seule la configuration de base est présentée dans ce mémo, mais je compte rajouter au fur et à mesure de mes expérimentations et recherches des éléments de configuration plus avancés et complexes.

Attention, ce mémo est en cours de rédaction. Certaines choses peuvent être erronnées, ne pas être de bonnes pratiques, ou incomplètes ! Je documente ce mémo au fur et à mesure de mon travail de recherche et le corrigerai si besoin lorsque j’aurais une petite journée devant moi.

Si vous souhaitez vous baser sur mon travail pour configurer du matériel Cisco, gardez en mémoire qu’il ne s’agit pas d’un tutoriel ou d’un guide des bonnes pratiques mais seulement d’un aide mémoire ou d’une cheat sheet. Ainsi des erreurs peuvent s’y glisser.

La version actuelle de mon mémo a été mis à jour le 08/09/2023.

Table of Contents

    1. Commandes de base

    • Passer en mode privilège
    enable
    • Depuis le mode privilège, passer en mode configuration globale
    configure terminal
    • Afficher la configuration actuellement chargée (en mode privilèges)
    show running-config
    • Afficher la configuration qui sera chargée au démarrage (en mode privilèges)
    show startup-config
    • Enregistrer la configuration actuelle (en mode privilèges)
    copy running-config startup-config
    • Factory reset (en mode privilèges) :
    write erase !Effacer la configuration
    delete flash:vlan.dat !Effacer les vlan (sur un commutateur)
    reload !Redémarrer

    Confirmer les actions et refuser de sauvegarder la configuration s’il le demande.

    2. Routeurs ou Commutateurs de couche 3

    2.1. Configurer une interface

    2.1.1. IPv4

    • Passer en mode configuration globale
    enable
    configure terminal
    • Passer en mode configuration d’interface
    interface <interface-type> <interface-id>

    Exemple pour l’interface GigabitEthernet 0/0/0 : interface GigabitEthernet 0/0/0

    interface range <interface-type> <interface-id-range>

    Exemple pour l’interface GigabitEthernet 0/0/0 à 0/0/3 : interface range GigabitEthernet 0/0/0 - 3

    • Attribuer une adresse IPv4 à l’interface
    ip address <ipv4-address> <network-mask>

    Exemple avec 192.168.1.1/24 : ip address 192.168.1.1 255.255.255.0

    • Activer l’interface
    no shutdown
    • Désactiver les recherches DNS (évite de bloquer le routeur/commutateur trois plombes quand on fait une typo)
    no ip domain-lookup

    2.1.2. IPv6

    • Passer en mode configuration globale (cf §1)
    • Passer en mode configuration d’interface (cf §2.1.1)
    • Activer l’IPv6
    ipv6 enable
    • Attribuer une adresse IPv6 à l’interface
    ipv6 address <ipv6-address>/<ipv6-prefix>

    Exemple avec 2001:cafe:efac:2023:0:0:1/64 : ipv6 address 2001:cafe:efac:2023:0:0:1/64

    • Attribuer une adresse IPV6 de lien local à l’interface
    ipv6 address <ipv6-address> link-local

    Exemple avec FE80:: : ipv6 address FE80:: link-local

    • Activer l’interface
    no shutdown
    • Puis quitter
    exit

    On peut aussi attribuer une adresse IPv6 générée en EUI-64 (cf. l’article de IT-Connect pour plus d’informations). Au moment d’attribuer l’adresse ipv6, taper plutôt la commande suivante : ipv6 address <ipv6-prefix>/<ipv6-prefix-length> eui-64 (Exemple : ipv6 address 2001:cafe:efac:2023::/64 eui-64. Avec une adresse MAC telle que 00:00:0c:b1:42:01, cela donnera l’adresse ipv6 suivante : 2001:CAFE:EFAC:2023:200:CFF:FEB1:4201).

    2.2. Configurer le protocole de routage EIGRP

    2.2.1. IPv4

    • Passer en mode configuration globale (cf. §1)
    • Activer EIGRP
    router eigrp <autonomous-system-number>
    • Facultatif : désactiver l’agrégation automatique
    no auto-summary
    • Ajouter un réseau (correspondant à ou aux interface(s) que l’on veut ajouter au protocole eigrp. Par exemple, on évite les réseaux locaux pour éviter de router des requêtes extérieures sur un LAN.)
    network <network-address> <inversed-mask>

    Exemple pour le réseau 10.0.1.0/24 : network 10.0.1.0 0.0.0.255

    • Recommencer l’étape précédente pour chaque sous-réseau à ajouter
    • Puis quitter.

    2.2.2. IPv6

    • Passer en mode configuration globale (cf. §1)
    • Activer le routage pour l’IPv6
    ipv6 unicast-routing
    • Activer le protocole eigrp
    ipv6 router eigrp <autonomous-system-number>
    • Dans le mode config-rtr, activer l’eigrp
    no shutdown
    • Puis quitter
    exit
    • Entrer en mode configuration d’interface sur l’interface à configurer en eigrp
    interface <interface-name> <interface-id>
    • Activer l’eigrp sur l’interface
    ipv6 eigrp <autonomous-system-number>

    Avec autonomous-system-number correspondant au numéro configuré précédemment

    • Puis quitter

    2.2.3. Afficher les informations sur EIGRP

    Il est possible d’utiliser la commande show pour afficher quelques informations utiles sur EIGRP (en mode privilèges).

    Exemple pour EIGRP en ipv4

    • affiche les interfaces configurées avec le protocole eigrp :
    show ip eigrp interfaces 
    • affiche la topologie du réseau remontée par le protocole eigrp :
    show ip eigrp topology
    • affiche les voisins utilisant aussi le protocole eigrp :
    show ip eigrp neighbors 

    Pour EIGRP avec IPv6, il faut simplement remplacer ip par ipv6.

    2.3. Configurer le protocole de routage OSPF

    2.3.1. IPv4

    • Passer en mode configuration globale (cf. §1)
    • Activer OSPF
    router ospf <process-id>

    Contrairement à EIGRP, il faut ici entrer un numéro de processus interne au routeur (par exemple 1) et non pas un numéro de système autonome.

    • Ajouter un réseau (correspondant à ou aux interface(s) que l’on veut ajouter au protocole eigrp. Par exemple, on évite les réseaux locaux pour éviter de router des requêtes extérieures sur un LAN.)
    network <network-address> <inversed-mask> area <ospf-area-id>

    Exemple pour le réseau 10.0.1.0/24 pour la zone 1 : network 10.0.1.0 0.0.0.255 area 1

    • Recommencer l’étape précédente pour chaque sous-réseau à ajouter
    • Puis quitter.

    2.3.2. IPv6

    Coming Soon

    2.3.3. Afficher les informations sur OSPF

    Il est possible d’utiliser la commande show pour afficher quelques informations utiles sur OSPF (en mode privilèges).

    Exemple pour OSPF en ipv4

    • affiche les interfaces configurées avec le protocole ospf :
    show ip ospf interface
    • affiche la base de donnée :
    show ip ospf database 
    • affiche les voisins utilisant aussi le protocole ospf :
    show ip ospf neighbor

    2.4. Routage statique

    • Passer en mode configuration globale (cf. §1)
    • Configurer une route par défaut
    ip route 0.0.0.0 0.0.0.0 <gateway-ip-address>

    Coming Soon

    2.5. NAT

    Dans le cas où aucun protocole de routage n’est utilisé, créer une route par défaut et/ou des routes statiques (cf. §2.4)

    2.5.1. Source NAT

    Permet par exemple d’autoriser l’accès à internet à des utilisateurs sur un LAN.

    • Passer en mode configuration globale (cf. §1)
    • Créer une liste d’autorisation (cf. §2.6 pour plus de détails)
    ip access-list standard <acl-name>
    • Ajouter un ou des sous-réseaux à la liste d’autorisation
    permit <network-ip-address> <network-inversed-mask>
    • Puis repasser en mode configuration globale
    exit
    • Passer en mode configuratio
    exit
    • Passer en mode configuration d’interface (cf. §2.1) sur l’interface « externe », par exemple celle pointant vers internet
    • Configurer l’interface en mode nat « externe »
    ip nat outside
    • Puis repasser en mode configuration globale
    exit
    • Passer en mode configuration d’interface (cf. §2.1) sur l’interface « interne », par exemple celle pointant vers le LAN
    • Configurer l’interface en mode nat « interne »
    ip nat inside
    • Puis repasser en mode configuration globale
    exit
    • Activer le Source NAT avec la liste d’autorisation et l’interface externe
    ip nat inside source list <acl-name> interface <interface-type> <interface-id> overload

    avec acl-name le nom de la liste d’autorisation configurée précédemment.

    2.5.2. Destination NAT

    • Passer en mode configuration globale (cf. §1)
    • Activer le Destination NAT vers le serveur web par exemple
    ip nat inside source static tcp <private-server-ip-address> <private-server-port> <public-ip-address> <public-port>

    Exemple avec un serveur web en adresse ip statique 192.168.1.1, une adresse ip publique 85.234.23.10 pour une requête sur le port 443 :

    ip nat inside source static tcp 192.165.1.1 443 85.234.23.10 443

    2.6. ACL

    Cette partie est aussi applicable sur des commutateurs.

    Il existe deux types d’ACL :

    • Standard : ID de 0 à 99. Contrôle une adresse source, bloque ou autorise un protocole complet.
    • Advanced : ID de 100 à 199. Contrôle une adresse source et destination, bloque ou autorise des protocoles ou des ports spécifiques.

    2.6.1. Créer une ACL standard

    • Passer en mode configuration globale (cf. §1)
    • Autoriser une adresse ou un réseau
    access-list <access-list-id-from-0-to-99> permit <ip-address> <inversed-mask>
    • Refuser une adresse ou un réseau
    access-list <access-list-id-from-0-to-99> deny <ip-address> <inversed-mask>

    2.6.2. Créer une ACL advanced

    • Passer en mode configuration globale (cf. §1)
    access-list <access-list-id-from-0-to-99> deny ...

    Coming Soon

    2.7. Router on a stick

    • Passer en mode configuration globale (cf. §1)
    • Créer une interface virtuelle sur l’interface accueillant le(s) VLAN (répéter les actions pour chaque VLAN à configurer sur le router)
    interface <interface-name> <interface-id>.<vlan-id>

    Exemple pour l’interface GigabitEthernet 0/0/0, et ne VLAN n°10 : interface GigabitEthernet 0/0/0.10

    • Activer l’encapsulation dot1Q
    encapsulation dot1Q <vlan-id>

    S’il s’agit du VLAN natif, rajouter native à la fin de la commande

    • Attribuer une adresse IP à l’interface (cf. §2.1.1 pour l’IPv4 et §2.1.2 pour l’IPv6)
    • Activer l’interface
    no shutdown

    Puis quitter

    exit

    2.7. Services

    2.7.1. DHCP

    • Passer en mode configuration globale (cf. §1)
    • Activer le service DHCP
    service dhcp
    • Créer un pool d’adresses IP
    ip dhcp pool <pool-name>
    • Configurer le réseau sur lequel le pool officiera
    network <network-address> <network-mask>

    Exemple pour le réseau 192.168.1.0/24 : network 192.168.1.0 255.255.255.0

    • Configurer la passerelle par défaut
    default-router <gateway-ip-address>
    • Configurer le serveur dns par défaut
    dns-server <dns-ip-address>
    • Configurer le nom de domaine
    domain-name <hostname>
    • Puis quitter
    exit

    Il est possible d’afficher quelques informations avec la commande show :

    • affiche les baux DHCP attribués par le routeur :
    show dhcp lease
    • affiche les informations sur un pool dhcp :
    show ip dhcp pool <pool-name>

    2.7.2. NTP

    • Passer en mode configuration globale (cf. §1)
    • Activer ntp
    ntp master 1

    3. Commutateurs

    3.1. Créer des VLAN

    • Passer en mode configuration globale (cf. §1)
    • Créer un vlan
    vlan <vlan-id>
    • Donner un nom au VLAN
    name <name>
    • Puis quitter
    exit

    On peut afficher les VLAN configurés sur le commutateur en tapant show vlan en mode privilèges.

    Il est aussi possible de supprimer un vlan en ajoutant no devant la commande.
    Par exemple, pour supprimer le vlan 4 : no vlan 4

    3.2. Paramétrer les ports du switch (vlan, trunk…)

    3.2.1. VLAN

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode configuration d’interface (cf §2.1.1)
    • Attribuer un vlan à l’interface
    switchport access vlan <vlan-id>

    3.2.2. Mode Trunk

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode configuration d’interface (cf §2.1.1)
    • Passer l’interface en mode trunk
    switchport mode trunk
    • Autoriser une plage de VLAN à transiter par le trunk
    switchport trunk allowed vlan <vlan-range-id>
    • On peut aussi ajouter des VLAN à une plage existante
    switchport trunk allowed vlan add <vlan-id>
    • Ou encore il est possible d’autoriser tous les vlan
    switchport trunk allowed vlan all
    • Puis quitter
    exit

    vlan-range-id peut être écrit des façons suivantes :

    • 10
    • 2,4,6,8
    • 10-40

    3.3. Configurer en mode client NTP

    • Passer en mode configuration globale (cf. §1)
    • Configurer l’adresse du serveur ntp
    ntp server <ntp-server-ip-address>

    3.4. ACL

    Cf. §2.6

    3.5. Etherchannel avec LACP

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode configuration d’interface sur la plage à configurer en etherchannel
    interface range <interface-type> <interface-id-range>
    • Créer un groupe d’etherchannel avec le protocole LACP
    channel-group <channel-group-number> mode active

    Sur le deuxième switch, on peut mettre passive au lieu de active. Le switch sera donc « esclave » du premier.

    • Puis quitter
    exit
    • Passer en mode configuration de l’interface port-channel créé précédemment
    interface port-channel <channel-group-number>
    • Configurer le trunk si besoin comme au §3.2.2
    • Puis recommencer avec le deuxième switch.

    Cf. l’article d’IT-Connect pour plus de détails.

    3.6. DTP & VTP

    3.6.1. DTP

    Protocole permettant de configurer « automatiquement » en trunk les liens sur les commutateurs liés.

    Sur le commutateur « maître » :

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode configuration d’interface (cf §2.1.1) sur les interfaces à configurer.
    • Configurer le protocole sur les interfaces selectionnées
    switchport mode dynamic desirable
    • Puis quitter
    end

    3.6.2. VTP

    Protocole permettant de faire descendre sur les autres commutateurs la configuration vlan

    Sur le commutateur serveur

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode vtp serveur
    vtp mode server
    • Configurer le domaine vtp
    vtp domain <vtp-domain>
    • Configurer le mot de passe vtp (recommandé)
    vtp password <password>
    • Puis quitter
    end

    Sur le(s) commutateur(s) client(s) :

    • Passer en mode configuration globale (cf. §1)
    • Passer en mode vtp client
    vtp mode client
    • Configurer le domaine vtp
    vtp domain <vtp-domain>
    • Configurer le mot de passe vtp (recommandé)
    vtp password <password>
    • Puis quitter
    end

    3.7. Notes importantes pour l’IPv6

    Pour que l’IPv6 fonctionne correctement sur le réseau, et notemment pour que le routage inter-vlan en IPv6 soit fonctionnel, il est nécessaire de vérifier que le SDM (switch data management) utilise le template dual-ipv4-and-ipv6. Pour vérifier, en mode privilèges taper la commande sh sdm prefer. Elle devrait retourner quelque chose comme cela :

    The current template is "dual-ipv4-and-ipv6 default" template.
    The selected template optimizes the resources in
    the switch to support this level of features for
    0 routed interfaces and 1024 VLANs.
    
    number of unicast mac addresses: 4K
    number of IPv4 IGMP groups + multicast routes: 0.25K
    number of IPv4 unicast routes: 0
    number of IPv6 multicast groups: 0.375k
    number of directly-connected IPv6 addresses: 0
    number of indirect IPv6 unicast routes: 0
    number of IPv4 policy based routing aces: 0
    number of IPv4/MAC qos aces: 0.125K
    number of IPv4/MAC security aces: 0.375K
    number of IPv6 policy based routing aces: 0
    number of IPv6 qos aces: 0.625k
    number of IPv6 security aces: 0.125K

    Pour pouvoir utiliser le template dual-ipv4-and-ipv6, passer en mode configuration globale (cf. §1). Puis taper les commandes suivantes :

    • Activer le template :
    sdm prefer dual-ipv4-and-ipv6 default
    • Quitter le mode configuration globale :
    end
    • Sauvegarder la configuration pour ne pas perdre les éventuelles modifications effectuées :
    copy running-config startup-config
    • Redémarrer le switch :
    reload

    4. Sécurité

    4.1. Créer des utilisateurs

    • Passer en mode configuration globale (cf. §1)
    • Créer un utilisateur
    username <username> secret <password>
    • Lui donner le niveau de privilège max
    username <username> privilege 15

    4.2. Sécuriser le port console avec un utilisateur local

    • Passer en mode configuration globale (cf. §1)
    • Entrer en mode configuration de ligne pour le port console
    line con 0
    • N’autoriser que les utilisateurs locaux enregistrés à se connecter
    login local
    • Puis quitter
    exit
    • On peut faire de même sur les autres ports en remplaçant line con 0 par line

    4.3. Activer l’accès SSH

    4.3.1. Côté « serveur »

    • Passer en mode configuration globale (cf. §1)
    • Configurer le nom de domaine
    ip domain-name <domain-name>
    • Générer les clés SSH
    crypto key generate rsa
    • Activer le ssh
    ip ssh version 2
    • Entrer en mode configuration de ligne pour les vty où l’on souhaite activer le ssh
    line vty <1st-vty-id> <last-vty-id>
    • Autoriser les connexions ssh
    transport input ssh
    • Autoriser les connexions depuis la liste des utilisateurs locaux :
    login local

    4.3.2. Côté « client »

    Pour se connecter en ssh depuis un routeur ou un commutateur Cisco vers un autre switch ou commutateur cisco, on peut utiliser la commande ssh -l <username> <host-ip>

    4.4. Utiliser un serveur Radius pour gérer les utilisateurs

    • Passer en mode configuration globale (cf. §1)
    • Activer le protocole aaa
    aaa new-model
    • Ajouter un serveur radius
    radius server <name>
    • Configurer l’adresse ip
    address ipv4 <radius-server-ipv4-address>
    • Ajouter la clé
    key <secret-shared-key>
    • Autoriser le login
    aaa authentication login default group radius local
    • Autoriser le mode privilèges
    aaa authentication enable default group radius local
    • Entrer en mode config vty
    line vty <1st-vty-id> <last-vty-id>
    • Autoriser l’authentification par le serveur radius
    login authentication default
    • Puis quitter
    exit

    5. Notes et références

    • https://www.cisco.com/c/en/us/support/index.html
    • https://openclassrooms.com/fr/courses/2557196-administrez-une-architecture-reseau-avec-cisco
    • https://www.it-connect.fr/cours-tutoriels/administration-reseau/cisco/