DTP (Dynamic Trunking Protocol)

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 17:57, 26 мая 2017.

DTP (англ. dynamic trunking protocol — динамический протокол транкинга) — проприетарный сетевой протокол канального уровня, разработанный компанией Cisco для реализации транкинговой системы для связи в сети VLAN между двумя сетевыми коммутаторами и для реализации инкапсуляции. Также DTP является собственным протоколом компании Cisco Systems, Inc., который позволяет коммутаторам динамически определять если соседний коммутатор настроен для поднятия транка между портами коммутаторов и какой протокол использовать (802.1Q или ISL)

Согласование характеристик магистральных каналов с использованием динамического протокола ISL (Dynamic ISL — DISL) или динамического протокола формирования магистральных каналов (DTP) позволяет двум соединенным между собой портам согласовать решение о том, должны ли они стать портами магистрального канала. Такое согласование применяется для того, чтобы администратору не приходилось настраивать конфигурацию с обеих сторон магистрального канала и достаточно было выполнить настройку только с одной стороны. Порт, находящийся на другом конце канала, может выполнить настройку требуемых параметров автоматически. Автор предпочитает настраивать все порты магистральных каналов вручную, поскольку автоматическое согласование обычно не позволяет сэкономить столь существенное время (но печально известно тем, что нарушения в его работе приводят к большим неприятностям).

Существуют следующие настройки режима порта коммутатора:

  • Access — ставит Ethernet-порт в режим постоянного бестранкового состояния и преобразовывает канал связи в бестранковый. Ethernet-порт становится бестранковым, даже если соседний порт не согласен с изменением.
  • Trunk — переводит порт Ethernet в постоянный режим транкинга и согласовывает с другими портами, чтобы преобразовать канал связи в одиночный канал связи; порт становится транк-портом даже если соседний порт не согласен с изменением.
  • Dynamic Auto — делает порт Ethernet готовым преобразовать канал связи в одиночный канал связи; порт становится транк-портом, если соседний порт установит режим Trunk или Dynamic Desirable; этот режим используется по умолчанию для всех портов Ethernet.
  • Dynamic Desirable — порт активно пытается преобразовать канал связи в одиночный канал связи; порт становится транк-портом, если соседний Ethernet-порт установит режим Trunk, Dynamic Desirable или Dynamic Auto.
  • Nonegotiate — отключает DTP, порт не будет отправлять DTP-кадры или использовать входящие DTP-кадры; чтобы установить одиночный канал связи между двумя коммутаторами, когда DTP отключен, транкинг на каждой из сторон настраивается вручную.

Как правило, проще всего перевести порты с обеих концов канала либо в режим on, либо в режим off. Но если порт на одном из концов канала переведен в режим on или desirable, то порт, находящийся на другом конце, автоматически приступает к формированию магистрального канала, поскольку для всех портов, способных поддерживать магистральный канал (портов Ethernet со скоростью 100 Мбит/с или более высокой скоростью), по умолчанию предусмотрен режим auto[1].

Подробнее о режимах и их включении

Dynamic Trunking Protocol помогает автоматически создавать trunk между двумя устройствам Cisco. В случае, когда на двух портах включен DTP, и хотя бы один из них переведен в режим desirable, два коммутатора согласуют организацию trunk на этой линии связи. Не следует путать DTP и VLAN (Virtual Local Area Network), хотя VTP (VLAN Trunking Protocol) домен действительно играет значение для DTP.

Для начала рассмотрим пример как в ручную настроить порт в режим Trunk.

Switch(config)# interface gi0/20
Switch(config-if)# switchport mode trunk

Теперь рассмотрим как это происходит при помощи DTP. DTP имеет два динамических режима когда порт переходит в режим работы trunk.

1. Desirable – порт активно пытается сформировать trunk с удаленным портом другого коммутатора.

Switch(config)# interface gi0/21
Switch(config-if)# switchport mode dynamic desirable


2. Auto – порт в пассивном режиме ожидает когда удаленный коммутатор инициирует создание trunk-а.

Switch(config)# interface gi0/21
Switch(config-if)# switchport mode dynamic auto

Так же есть режим nonegotiate:

3. nonegotiate – порт находится в режиме trunk, но не отсылает DTP кадры и не ожидает их получить от другого коммутатора. Для того, чтобы trunk между коммутаторами заработал, на соседнем коммутаторе порт должен быть настроен в ручную в режиме trunk.

Switch(config)# interface gi0/21
Switch(config-if)# switchport nonegotiate

DTP кадры отсылаются через интерфейс каждые 30 секунд и по этому рекомендуется настраивать trunk в ручную.

Trunk между портами формируется при следующей настройке режима портов:

manual trunk <-> manual trunk manual trunk <-> dynamic desirable manual trunk <-> dynamic auto dynamic desirable <-> dynamic desirable dynamic desirable <-> dynamic auto

Плюсы и минусы. Способы несанкционированного доступа

DTP включен по умолчанию на всех современных коммутаторах Cisco Systems, Inc.. Возникает вопрос «зачем?». Действительно ли вы хотите, чтобы коммутаторы создавали trunk по собственной инициативе? Скорее всего нет, по нескольким причинам.

Использование DTP часто говорит о некачественном дизайне, т.к. trunk должны быть там, где запланировано и только там. Во-вторых, оставить порты в режиме DTP — значит создать брешь в безопасности. Все что будет необходимо злоумышленнику, это отправить корректный DTP кадр на access порт, преобразовав его тем самым в trunk. Тем самым злоумышленник получит доступ ко всем VLAN (Virtual Local Area Network) на этом коммутаторе, которые разрешены на этом порту (по умолчанию все). К счастью, этих двух проблем можно избежать настроив статический режим порта «access» или «trunk» — что является по сути лучшим решением.

! '''Access port'''
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
! '''Trunk port'''
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk encapsulation dot1q

Однако, даже если порт настроен таким образом, DTP все равно активен в порте. Если вы попытаетесь настроить trunk между двумя коммутаторами в разных VTP (VLAN Trunking Protocol) доменах, вы получите сообщение о ошибке:

%DTP-5-DOMAINMISMATCH: Unable to perform trunk negotiation on port Fa0/1 because of VTP domain mismatch.

Помните, что кадр DTP содержит имя VTP (VLAN Trunking Protocol) домена. Коммутатор не сможет создать trunk на порту с включенным DTP с коммутатором у которого отличается имя домена DTP, даже в случае статической настройки Trunk.

Полезные видеоматериалы и знания

Обучение к настройке(англ.)

Онлайн практическое обучение и проверка знаний по настройке протоколов

Примечания

  1. Ко времени написания этого материала коммутаторы ряда 2900 и 3500 (т.е. коммутаторы со стандартной IOS) не поддерживали автоматическое согласование. Для подключения таких коммутаторов к коммутаторам ряда 1900 или 5500 необходимо перевести соответствующие порты коммутатора 1900 или 5500 в режим nonegotiate формирования магистрального канала.

Ссылки