Найти тему

Протокол CDP (Cisco Discovery Protocol)

Давайте рассмотрим достаточно распространённую тему — протокол CDP. Что же о нём можно сказать, если о нём всё известно? Однако некоторые механизмы работы, позволяющие упростить работу сетевого инженера, знают не все. О них и поговорим.

Протокол CDP (Cisco Discovery Protocol) – проприетарный протокол компании Cisco, работающий на уровне 2 модели OSI, позволяющий сетевым устройствам анонсировать в сеть информацию о себе и принимать такие анонсы от своих соседей.

Протокол достаточно полезный, так как он может показать, что за устройство (версия ПО, номера портов, платформа и ещё много другой информации) подключено в сеть. Это может быть удобно для составления карты сети, ведения документации и мониторинга сети. Однако также это облегчает атаку на сеть. В связи с этим протокол CDP в большинстве случаев отключают.

В интернете огромное количество информации по данному протоколу. Например, как посмотреть соседние устройства командой

show cdp neighbors
-2

Как видим из вывода, видны description, порты, платформа соседнего устройства. Также можно посмотреть и более детальную информацию о соседнем устройстве с помощью

show cdp neighbors detail
-3

Тут уже видны и IP адреса и версия ПО, что достаточно удобно для документирования неизвестной сети.

Логика работы

Логика работы протокола CDP достаточно простая и в общих чертах механизм работы следующий:

1. Устройство посылает multicast-сообщение на MAC-адрес 01:00:0C:CC:CC:CC (по умолчанию каждые 60 секунд на порты Ethernet).

2. Принимающее устройство сохраняет эти сообщения в CDP-таблицу. Если спустя 180 секунд (3 анонса CDP) устройство не прислало ни одного сообщения, – удаляется из базы CDP.

Однако несмотря на все минусы и плюсы протокола в качестве мониторинга за сетевым оборудованием, CDP имеет и дополнительные возможности для управления сетевыми устройствами.

В CDP существует механизм объединения сетевых устройств в кластер, которым можно управлять с одного устройства – CDP Cluster.

Когда такой функционал может потребоваться?

Например, вы случайно или не случайно потеряли доступ к оборудованию через ssh/telnet, а до устройства физически сложно добраться. В таком случае единственное что требуется – включенный протокол CDP.

Настройка

1 Настройку CDP cluster рассмотрим на коммутаторах 2960: 1. Заходим на доступный коммутатор и включаем CDP cluster:

SW1# configure terminal
SW1(config)# cluster enable test

2 Проверяем устройства в сети, которые можно подключить к настроенному кластеру

SW2# show cluster candidates

MAC Address Name Device Type PortIf FEC Hops SN PortIf FEC
0017.9510.d16a SW10 WS-C2960-24TT-L Gi0/24 1 0 Gi0/24

3 Из предыдущего вывода берём MAC-адрес и добавляем удалённый коммутатор SW10 в CDP cluster

SW1(config)# cluster member 1 mac-address 0017.9510.d16a password <password>

Всё. Теперь можем подключиться к удалённому коммутатору командой

SW1# rcommand 1

И попадаем на удалённый коммутатор SW1. Теперь можно делать любые настройки, что могут потребоваться.

Чтобы отключить кластер, необходимо удалить всех cluster member из него и только потом отключить сам кластер:

SW1(config)# no cluster member 1
SW1(config)# no cluster enable

Посмотреть кластер можно командой

SW1# show cluster

В итоге имеется полезный и удобный протокол для мониторинга и управления сети на устройствах Cisco, однако из-за отсутствия встроенных механизмов безопасности CDP может нести угрозу внутренней сети предприятия. Поэтому решение об использовании или отключении протокола принимать вам.