Espionnez ses voisins avec CDP :)

0

espionEn voilà un protocole super utile ! Et on peut dire chapeau à Cisco de l’avoir créé !

Certains diront que j’en fais un peu trop sur Cisco mais il faut avouer que ce protocole est d’une utilité grandiose quand on débarque sur un réseau inconnu. Et pour preuve, une norme découle de ce protocole pour l’interopérabilité, le LLDP – Link Layer Discovery Protocol.

Imaginez: vous êtes en console ou en telnet sur un routeur et vous vous demandez quel est le port connecté au switch voisin et même vous aimeriez bien savoir quel est le port du switch en question. Comment faire? à part connaitre l’architecture par coeur ou avoir un schéma réseau sous la main, il n’y a pas de solution. Sauf si vous êtes en présence de routeur et switch Cisco !

Définition

Le CDP – Cisco Discovery Protocol, permet de découvrir ses voisins directs en envoyant régulièrement des messages sur tous les ports de l’équipement. Si le voisin est du Cisco, il vous répondra, sinon vous saurez que ce n’est pas du Cisco en face 🙂

Ce protocole fonctionne sur la plupart des équipements Cisco, que ce soit un routeur, switch, borne WiFi, téléphone IP… et j’en passe.

Faire attention, c’est un protocole de niveau 2 point à point –> On découvre ses voisins directs, pas les voisins de mon voisin.

Par défaut, le protocole est actif sur tous les ports, pour le désactiver, il y a 2 possibilités:

  • désactivation totale
Switch_A(config)# no cdp run
Switch_A(config)# end
  • désactivation par port
Switch_A(config)# interface FastEthernet 0/1
Switch_A(config-if)# no cdp enable
Switch_A(config-if)# end

Fonctionnement

Pas grand chose à savoir si ce n’est la commande suivante pour visualiser ses voisins:

Switch# show cdp neighbors
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r – Repeater
Device ID   Local Intrfce   Holdtme   Capability   Platform   Port ID
SW_B         Fa0/1           129       S            2900       Fa0/8
SW_C         Fa0/2           144       S            2900       Fa0/8 
Switch#

Que nous dit cette commande? et bien que:

  • notre Switch est connecté via le port Fa0/1 à un équipement nommé SW_B sur son port Fa0/8;
  • notre Switch est connecté via le port Fa0/2 à un équipement nommé SW_C sur son port Fa0/8;
  • que la Capability de ces 2 équipements est “S“, en regardant la légende, on sait que ce sont 2 switchs.

Remarque pour le CCNA: la question typique est “qui est connecté à qui et comment?

Il faut faire attention à la seconde colonne “Local Intrfce” qui identifie l’interface de votre switch et pas celle de votre voisin (erreur classique car juste à côté du nom). Celle du voisin est précisée dans la dernière colonne “Port ID“.

Maintenant, j’aimerais en savoir un peu plus sur ces switchs voisins, je tape la même commande mais avec la variable detail à la fin:

Switch# show cdp neighbors detail
-------------------------
Device ID: SW_B
Entry address(es):
IP address: 192.168.1.2
Platform: cisco 2950,
Capabilities: Switch
Interface: FastEthernet0/8, Port ID (outgoing port): FastEthernet0/1
Holdtime : 123 sec
Version :
Cisco Internetwork Operating System Software IOS (tm) 2900 Software (C2950), Version 12.2(3) Copyright (c) 1986-2002 by Cisco Systems, Inc.
advertisement version: 2 Duplex: full
-------------------------
. . .
Switch#

Et là, c’est le miracle! On connait quasiment tout sur notre voisin:

  • son nom: SW_B
  • l’adresse IP de management (pratique pour faire un telnet): 192.168.1.2
  • le type d’équipement: switch Catalyst 2950
  • la version de l’IOS installé dessus (ça c’est fort!): 12.2(3)

Je n’ai pas mis la suite mais on a les mêmes informations pour SW_C, c’est à dire nom, adresse IP…

Donc pour le CCNA, soyez à l’aise avec ce protocole car vous aurez des impressions d’écrans vous demandant de détailler le contenu (qui est connecté à qui et comment) ou vous aurez un TP avec une console à disposition où il faudra utiliser le CDP pour identifier vos voisins.

PARTAGER SUR

LAISSER UNE RÉPONSE