Qu’est-ce que le protocole CDP ?
Le Cisco Discovery Protocol (CDP) est un protocole propriétaire développé par Cisco Systems. Il fonctionne au niveau 2 du modèle OSI (couche liaison de données) et permet aux équipements Cisco de s’identifier mutuellement sur un même segment réseau. CDP transmet des informations essentielles telles que le nom du périphérique, le modèle, l’interface utilisée, l’adresse IP de gestion ou encore le VLAN natif.
Son objectif principal est de simplifier la découverte automatique des voisins réseau, en particulier dans les infrastructures entièrement Cisco.
À quoi sert CDP ?
CDP est un outil précieux pour les ingénieurs réseau car il facilite la visualisation de la topologie physique. Il permet de détecter rapidement les erreurs de câblage, de valider les connexions trunk, de repérer des boucles réseau, ou encore de vérifier les paramètres d’un lien (comme la négociation duplex).
Utiliser CDP permet également de gagner du temps lors du déploiement ou du dépannage d’une infrastructure Cisco.
Fonctionnement de CDP
Le protocole envoie à intervalle régulier des messages CDP encapsulés dans des trames Ethernet. Ces messages sont diffusés à destination de l’adresse MAC 01:00:0C:CC:CC:CC. Chaque trame contient des champs au format TLV (Type-Length-Value) transportant les informations de l’équipement local.
Par défaut, un message CDP est envoyé toutes les 60 secondes, et les informations sont conservées pendant 180 secondes (TTL). L’Ethertype utilisé est 0x2000.
Les informations reçues sont stockées dans une table de voisins, consultable à tout moment via la CLI Cisco avec
show cdp neighbors
.
Différences entre CDP et LLDP
Contrairement à LLDP (Link Layer Discovery Protocol), qui est un standard IEEE 802.1AB utilisé dans des environnements multi-constructeurs, CDP est spécifique à Cisco. Il n’est donc pas compatible avec les équipements d’autres marques, sauf dans certains cas où le support de CDP est intégré manuellement (comme sur des téléphones IP tiers).
LLDP est à privilégier dans les infrastructures mixtes, tandis que CDP reste très pratique dans les environnements 100 % Cisco.
Commandes CDP sur Cisco IOS
Voici quelques commandes utiles pour tirer parti de CDP :
cdp run
: active CDP globalement sur l’équipementcdp enable
ouno cdp enable
: active ou désactive CDP sur une interfaceshow cdp neighbors
: affiche les équipements voisinsshow cdp neighbors detail
: donne des informations plus complètes (adresse IP, modèle…)show cdp
: permet de vérifier les paramètres globaux du protocole
Configuration du protocole CDP
Activer le protocole CDP :
switch# cdp run
Désactiver le protocole CDP :
switch# no cdp run
Les commandes suivantes permettent de vérifier l’état de ce protocole :
switch# show cdp
Global CDP information:
Sending CDP packets every 60 seconds < Envoi toute les 60s ces infos
Sending a holdtime value of 180 seconds < Ces infos sont valide 180s
Sending CDPv2 advertisements is enabled
Switch# show cdp interface fastethernet 0/1
FastEthernet0/1 is up, line protocol is up
Encapsulation ARPA
Sending CDP packets every 60 seconds
Holdtime is 180 seconds
Switch# show cdp traffic
CDP counters :
Total packets output: 304, Input: 305
Hdr syntax: 0, Chksum error: 0, Encaps failed: 0
No memory: 0, Invalid packet: 0,
CDP version 1 advertisements output: 0, Input: 0
CDP version 2 advertisements output: 304, Input: 305
Informations apprise par le protocole CDP
Quand le protocole CDP est activé, il envoie les informations suivantes sur tous ces ports :
- Device ID : Le hostname de l’équipement
- Entry address(es): Adresses IP présentes sur l’équipemen
- Platform: Le modèle de l’équipement
- Capabilities: Type d’équipement (switch/routeur)
- Interface :Interface physique où est branché cet équipement
- Port ID : Interface physique de l’interconnexion sur l’équipement en question
- Version : Version d’IOS
- Advertisement version: Version du protocole CDP
- VTP Management Domain: Domaine VTP
- Native VLAN :VLAN natif (par défaut, tout port est en mode access et fait partie de ce fameux VLAN)
- Management address : Adresse IP de management

Quelques commandes afin de vérifier les informations apprises :
Cette commande va nous permettre de connaître en résumé les informations collectées via le protocole CDP.
switch# show cdp neighbors Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone, D - Remote, C - CVTA, M - Two-port Mac Relay Device ID Local Intrfce Holdtme Capability Platform Port ID SWITCH1 Gig 0/2 170 S I WS-C2960- Gig 0/1 ROUTEUR1 Fas 0/13 136 R S I CISCO2901 Gig 0/1
Cette commande va nous permettre de connaître en détail les informations collectées via le protocole CDP.
switch# show cdp neighbors detail Device ID: SWITCH1 Entry address(es): IP address: 172.16.1.1 Platform: cisco WS-C2960-24TT-L, Capabilities: Switch IGMP Interface: GigabitEthernet0/2, Port ID (outgoing port): GigabitEthernet0/1 Holdtime : 161 sec Version : Cisco IOS Software, C2960 Software (C2960-LANBASEK9-M), Version 15.0(1)SE3, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2012 by Cisco Systems, Inc. Compiled Wed 30-May-12 14:26 by prod_rel_team advertisement version: 2 Protocol Hello: OUI=0x00000C, Protocol ID=0x0112; payload len=27, value=00000000FFFFFFFF010221FF00000000000018339D7B0E80FF0000 VTP Management Domain: '' Native VLAN: 1 Duplex: full Management address(es): IP address: 172.16.1.1 Device ID: ROUTEUR1 etc .....
Cette commande va nous permettre de connaître en détail les informations collectées via le protocole CDP pour un équipement précis.
switch# show cdp entry SWITCH1
Bonnes pratiques
Il est recommandé de désactiver CDP sur les ports publics ou exposés, comme les liaisons vers Internet ou vers des clients non maîtrisés. Cela permet de limiter les fuites d’informations sur l’architecture réseau.
CDP doit être utilisé de manière stratégique : utile sur les liens d’infrastructure, mais à éviter sur les zones non sécurisées.
En résumé
CDP est un outil incontournable pour tous les administrateurs de réseaux Cisco. Il facilite la découverte de la topologie physique, accélère les déploiements et permet un diagnostic efficace des erreurs de configuration. Même s’il est propriétaire, il reste un standard de fait dans les environnements Cisco, simple à mettre en œuvre et très puissant.
Les protocoles CDP et LLDP sont des protocoles de découverte réseau de niveau 2.
Ils permettent à un équipement actif d’avertir ses voisins directement connectés de son existence.
Notre équipement qui utilise un de ces deux protocoles va donc envoyer un message de ce type sur toutes ces interfaces :
“Bonjour ! Je m’appelle switch_01 ! Je possède les adresses IP 192.168.0.254 et 192.168.1.254. Je suis un switch Cisco 2950, mon IOS est en 12.4, mon domaine VTP est VTP_EDF, mon VLAN natif est le VLAN 3 et je suis administrable via l’adresse IP 10.10.10.1. Nous sommes interconnectés via mon port GigabithEthernet 0/1. Bonne journée !”
Ce message va être envoyé toutes les 60 secondes !
Si un équipement reçoit ce type de message et utilise ce protocole, il va garder en mémoire ces informations.