CDP, protocole de découverte cisco : définition utilisation

Qu’est-ce que le Cisco CDP Protocole ?

Le Cisco Discovery Protocol (CDP) est un protocole propriétaire développé par Cisco. Il permet aux appareils Cisco, de partager des informations sur eux-mêmes avec d’autres appareils Cisco connectés au même réseau.

Contrairement à d’autres protocoles de découverte comme LLDP (Link Layer Discovery Protocol), qui est standardisé et peut être utilisé avec des équipements d’autres fabricants, CDP est exclusivement utilisé dans les environnements Cisco.

Comment fonctionne le Cisco CDP Protocole ?

Le CDP fonctionne au niveau 2 du modèle OSI (couche de liaison de données) et est activé par défaut sur la plupart des équipements Cisco. Voici comment il fonctionne :

1)Émission de Paquets CDP : Chaque appareil Cisco envoie périodiquement des paquets CDP sur chacune de ses interfaces actives. Ces paquets contiennent des informations essentielles sur l’appareil, telles que le nom de l’appareil, l’adresse IP, le type de matériel, le logiciel de l’IOS utilisé, et les interfaces actives.

2)Réception des Paquets CDP : Les appareils Cisco voisins reçoivent ces paquets et enregistrent les informations dans une table CDP. Cela permet à chaque appareil de savoir quels autres appareils Cisco sont connectés directement à lui.

3)Mise à jour et expiration : Les informations CDP sont régulièrement mises à jour grâce à l’envoi continu des paquets. Cependant, si un appareil cesse d’envoyer des paquets CDP (par exemple, en cas de panne), les informations le concernant expirent après un certain temps et sont supprimées de la table.

Commandes du protocole CDP sur Cisco

Nous allons voir que nous pouvons personnaliser son fonctionnement en fonction de vos besoins. Voici quelques commandes de base avec un exemple simple :

protocole CDP

Ci-dessus, nous pouvons voir notre réseau de trois routeurs : R1, R2 et R3.

Visualisation Routeur 1 :

Admettons que nous sommes placés sur R1. Avant toute chose, il est important de connaître l’état de CDP sur notre équipement.

Vérifier l’état de CDP :

R1# show cdp # Affiche l'état global de CDP

Global CDP information:
   Sending CDP packets every 60 seconds
   Holdtime is 180 seconds
   CDP is enabled on all interfaces

Ici, nous voyons comment CDP est configuré dans son état par défaut. On y voit que l’intervalle d’envoi est de 60 secondes, le holdtime est de 180 secondes et CDP est activé sur toutes les interfaces. Il est possible de modifier ces métriques pour ajuster la fréquence des annonces CDP et leur durée de validité.

Afficher les voisins CDP :

Je ne connais pas la topologie qui m’entoure. Je vais utiliser la commande show cdp neighbors qui va me permettre de découvrir quels sont les équipements auxquels je suis relié grâce à CDP.

R1# show cdp neighbors

Device ID    Local Intf     Holdtime   Capability  Platform  Port ID
R2           Gig0/2        145        R S I       ISR4331   Gig0/1

Explication : On voit ici que R1 est connecté à R2 via l’interface GigabitEthernet 0/2. L’équipement distant est un ISR4331, et son port de connexion est GigabitEthernet 0/1.

Obtenir plus d’informations sur le voisin CDP :

R1# show cdp neighbors detail # Donne des informations détaillées sur les voisins CDP

Device ID: R2
Entry address(es):
  IP address: 192.168.10.2
Platform: Cisco ISR4331, Capabilities: Router Switch IGMP
Interface: Gig0/2, Port ID (outgoing port): Gig0/1
Holdtime: 145 sec
Version:
Cisco IOS XE Software, Version 17.3.1

Explication : Ici, on observe en plus l’adresse IP du voisin R2 (192.168.10.2), sa version IOS (Cisco IOS XE 17.3.1).

Visualisation Routeur 2 :

On va maintenant faire pareil sur R2.

Afficher les voisins CDP :

R2# show cdp neighbors

Device ID    Local Intf     Holdtime   Capability  Platform  Port ID
R1           Gig0/1        150        R S I       ISR4331   Gig0/2
R3           Se0/0/2       140        R S I       ISR4331   Se0/0/1

Explication : Cette fois-ci, on voit deux voisins : R1 et R3. R1 est connecté à GigabitEthernet 0/1, tandis que R3 est connecté à Serial 0/0/2.

Obtenir plus d’informations sur les voisins CDP :

R2# show cdp neighbors detail # Donne des informations détaillées sur les voisins CDP

Device ID: R1
Entry address(es):
  IP address: 192.168.10.1
Platform: Cisco ISR4331, Capabilities: Router Switch IGMP
Interface: Gig0/1, Port ID (outgoing port): Gig0/2
Holdtime: 150 sec
Version:
Cisco IOS XE Software, Version 17.3.1
---
Device ID: R3
Entry address(es):
  IP address: 192.168.10.3
Platform: Cisco ISR4331, Capabilities: Router Switch IGMP
Interface: Se0/0/2, Port ID (outgoing port): Se0/0/1
Holdtime: 140 sec
Version:
Cisco IOS XE Software, Version 17.3.1

Explication : On voit ici les adresses IP de R1 (192.168.10.1) et R3 (192.168.10.3), ainsi que leurs interfaces et leurs versions IOS.

Visualisation Routeur 3 :

On va maintenant faire pareil sur R3.

Afficher les voisins CDP :

R3# show cdp neighbors

Device ID    Local Intf     Holdtime   Capability  Platform  Port ID
R2           Se0/0/1       145        R S I       ISR4331   Se0/0/2

Explication : Cette fois-ci, on voit un seul voisin qui est R2.

Obtenir plus d’informations sur le voisin CDP :

R1# show cdp neighbors detail # Donne des informations détaillées sur les voisins CDP

Device ID: R2
Entry address(es):
  IP address: 192.168.10.2
Platform: Cisco ISR4331, Capabilities: Router Switch IGMP
Interface: Se0/0/1, Port ID (outgoing port): Se0/0/2
Holdtime: 145 sec
Version:
Cisco IOS XE Software, Version 17.3.1

Explication : On voit ici l’adresse IP de R2 (192.168.10.2), sa plateforme (ISR4331) et sa version IOS (17.3.1).

Autres commandes supplémentaire :

Activer ou désactiver CDP :

R1(config)# cdp run        # Activer CDP globalement  
R1(config-if)# cdp enable  # Activer CDP sur une interface  

R1(config)# no cdp run     # Désactiver CDP globalement  
R1(config-if)# no cdp enable  # Désactiver CDP sur une interface  

Personnaliser l’intervalle d’envoi de CDP :

R1(config)# cdp timer 40      # Configure l'intervalle d'envoi des paquets CDP à 40s  
R1(config)# cdp holdtime 150  # Configure le holdtime à 150s 

Sécurité et CDP

Un aspect crucial à prendre en compte est la sécurité. Comme CDP partage des informations détaillées sur le réseau, il est recommandé de désactiver CDP sur les interfaces externes ou non sécurisées pour éviter toute exposition inutile des données sensibles, voire de le désactiver totalement.

De plus, CDP peut être exploité pour mener des attaques par déni de service (DoS) en envoyant un grand nombre de paquets CDP, ce qui peut surcharger les équipements Cisco et entraîner leur indisponibilité. Cette vulnérabilité, documentée par l’ANSSI (CERTA-2001-AVI-121), concerne les équipements utilisant Cisco IOS et CatOS. CDP étant activé par défaut, il est essentiel d’évaluer son utilité avant de le laisser actif.

Conclusion

Le protocole CDP est un outil puissant pour la gestion des réseaux Cisco, facilitant la découverte, la supervision et le dépannage des équipements. Cependant, son utilisation doit être maîtrisée pour éviter des risques de sécurité, notamment l’exposition d’informations sensibles ou les attaques DoS. En l’adoptant de manière contrôlée et en appliquant les bonnes pratiques, vous pouvez tirer parti de ses avantages tout en garantissant la sécurité et la stabilité de votre infrastructure réseau.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *