# Dynamic Trunking Protocol

DTP (Dynamic Trunking Protocol) es un protocolo propietario creado por Cisco Systems que opera entre switches Cisco, el cual automatiza la configuración de trunking (etiquetado de tramas de diferentes VLAN's con ISL o 802.1Q) en enlaces Ethernet.
Dicho protocolo puede establecer los puertos ethernet en cinco modos diferentes de trabajo: AUTO, ON, OFF, DESIRABLE y NON-NEGOTIATE.

## Modos de trabajo de los puertos

* dynamic auto — Es el modo por defecto en switches Catalyst 2960 de Cisco. El puerto aguardará pasivamente la indicación del otro extremo del enlace para pasar a modo troncal. Para ello envía periódicamente tramas DTP al puerto en el otro lado del enlace indicando que es capaz de establecer un enlace troncal. Esto no quiere decir que lo solicita, sino que sólo lo informa. Si el puerto remoto está configurado en modo on o dynamic desirable se establece el enlace troncal correctamente. Sin embargo, si los dos extremos están en modo dynamic auto no se establecerá el enlace como troncal, sino como acceso, lo que probablemente implique configuración adicional.
* on — Suele ser el modo por defecto. Fuerza al enlace a permanecer siempre en modo troncal, aún si el otro extremo no está de acuerdo.
* off — Fuerza al enlace a permanecer siempre en modo de acceso, aún si el otro extremo no está de acuerdo.
* dynamic desirable — Es el modo por defecto en switches Catalyst 2950 de Cisco. En este modo el puerto activamente intenta convertir el enlace en un enlace troncal. De este modo, si en el otro extremo encuentra un puerto en modo on, dynamic auto o dynamic desirable pasará a operar en modo troncal.
* nonegotiate — Fuerza siempre al puerto a permanecer en modo troncal, pero no envía tramas DTP. Los vecinos deberán establecer el modo troncal en el enlace de forma manual.

## Configuración de DTP

DTP se habilita automáticamente en un puerto del switch cuando se configura un modo de trunking adecuado en dicho puerto. Para ello el administrador debe ejecutar el comando switchport mode adecuado al configurar el puerto: switchport mode {access | trunk | dynamic auto | dynamic desirable}. Con el comando switchport nonegotiate se desactiva DTP.
Su función es gestionar de forma dinámica la configuración del enlace troncal al conectar dos switches, introduciendo los comandos del IOS (sistema operativo de los switches y routers Cisco) en la configuración del dispositivo (running-config) de forma automática sin que el administrador intervenga.
Esto implica que si estamos configurando un puerto de un switch Cisco para DTP, el puerto del otro lado del enlace también debe tener DTP habilitado para que el enlace quede configurado correctamente.
La combinación de los modos asignados a los puertos define cuál va a ser el estado final del enlace asociado a éstos:
* o bien 'access', es decir, pasarán las tramas de una única VLAN y no necesitaremos etiquetarlas.
* o bien 'trunking', es decir, pasarán las tramas de todas las VLAN permitidas etiquetándolas adecuadamente (ISL o 802.1Q).
La siguiente tabla describe las combinaciones de modos y el estado final del puerto al que se llega, asumiendo que ambos lados tienen DTP habilitado:
| puerto local\remoto | Dynamic Auto | Dynamic Desirable | Trunk | Access |
| Dynamic Auto | access | trunk | trunk | access |
| Dynamic Desirable | trunk | trunk | trunk | access |
| Trunk | trunk | trunk | trunk | fallo |
| Access | access | access | fallo | access |
Este protocolo es una ayuda que facilita la vida del administrador de la red. Los switches no necesitan DTP para establecer enlaces troncales, y algunos switches y routers Cisco no soportan DTP.