STP: Features de protección

STP: Features de protección

- in Enterprise Infrastructure
5376
0

Root Guard

La función Root Guard se desarrolló como un medio para controlar cuando un switch candidato a root bridge se conecta a la red.

Registra el bridge ID del actual root bridge de la topologia y no permite que otro switch envíe BPDu superiores por algún puerto donde esta habilitado root guard. En caso de que se reciba un BPDU superior, el puerto pasa a estado root-inconsistent. Este mecanismo evita que un switch nuevo agregado a la red u otro switch con un bridge id menor (prioridad + MAC) al del root bridge actual se convierta en el nuevo root bridge y por ende un nuevo cálculo en la topología completa STP.

Root Guard designa que un puerto solo puede enviar o retransmitir BPDU pero no puede recibir BPDUs. Root Guard evita que el puerto se convierta en un puerto raíz donde las BPDU normalmente se recibirían desde el root bridge.

En resumen, si por un puerto configurado con root guard un switch trata de ser el root bridge, root guard bloqueará el puerto.

Puede habilitar Root Guard sólo por puerto. Por defecto, está deshabilitado en todos los puertos del switch. Para habilitarlo, use el siguiente comando de configuración de interfaz:

Switch(config-if)# spanning-tree guard root

Para visualizar el estado un puerto que root guard ha puesto en root-inconsistente utilice:

Switch# show spanning-tree inconsistentports

BPDU Guard

Desarrollado para proteger los puertos de acceso configurados con Portfast. Recordemos que portfast pasa el puerto directo al estado forwarding sin pasar por otros estados. En caso de que un puerto configurado con BPDU Guard reciba un BPDU el puerto pasa a estado errdisable.

BPDU Guard evita cualquier posibilidad de que se agregue un switch al puerto ya sea intencionalmente o por error y así evitar un posible loop. Una aplicación obvia para BPDU Guard es en los puertos del switch de la capa de acceso donde se conectan los usuarios y otros dispositivos finales.

Por defecto BPDU Guard está deshabilitado en todos los puertos del switch. Podemos configurarlo de manera global con el siguiente comando:

Switch(config)# spanning-tree portfast bpduguard

El comando anterior habilitará bpdu guard en todos los puertos que estén como portfast.

Otra forma de habilitarlo es manualmente en cada en cada interfaz:

Switch(config-if)# spanning-tree bpduguard enable

Loop guard:

Mantiene un monitoreo en los puertos no designados o root para validar que se estén recibiendo BPDUs por estos puertos . Si los BPDU son recibidos continuamente, el puerto trabaja normal. Si los BPDU dejan de ser recibidos, el puerto automáticamente pasa a estado “loop-inconsistent” para prevenir un posible loop.

Por ejemplo, supongamos que tenemos un enlace entre SwitchA y SwtchB, el Switch A tiene el puerto Designado-Forwarding y el SwitchB en Alterno-Blocking para evitar loops. Supongamos que SwitchA presenta un problema de sobrecarga de memoria o cpu y por tal motivo le deja de enviar BPDU al puerto Alterno del SwitchB, entonces el SwitchB con el puerto alterno espera sus 20 segundos de Max Age, después pasará a listening 15 seg, learning 15 seg y al final a forwarding lo cual provocaría un posible loop debido a que el SwitchA con sobrecarga va a terner sus puertos en Forwarding. Este aquí donde entra Loop Guard colocando el el puerto alterno del SwitchB en estado loop-inconsistent y lo bloquea para evitar posibles loops.

Por defecto, Loop Guard está deshabilitado en todos los puertos del switch. Puede habilitar Loop Guard como un valor predeterminado global, que afecta a todos los puertos del conmutador, con el siguiente comando de configuración global:

Switch(config)# spanning-tree loopguard default

También puede habilitar o deshabilitar Loop Guard en un puerto de conmutador específico utilizando el siguiente comando de configuración de interfaz:

Switch(config-if)# [ no] spanning-tree guard loop

Aunque Loop Guard está configurado en un puerto de switch, su acción de bloqueo correctivo se toma por VLAN

BPDU Filter

Esta característica permite deshabilitar STP en algunos puertos del switch, es decir, se filtran las BPDU para evitar el envío o procesamiento de las BPDU en uno o más puertos. BPDU filter está deshabilitado por default y se puede configurar globalmente con el siguiente comando:

Switch(config)# spanning-tree portfast bpdufilter default

La palabra clave default indica que el BPDU filter se habilitará automáticamente en todos los puertos configurados con PortFast

La configuración también se puede hacer sobre las interfaces específicas:

Switch(config-if)# spanning-tree bpdufilter { enable | disable}

En resumen, BPDU filter evita que los puertos especificados envíen o reciban BPDU. La configuración de la interfaz filtra las BPDU entrantes y salientes incondicionalmente, independientemente del estado operativo PortFast o del modo access/trunk. Esto es efectivamente el equivalente a apagar STP. Esto puede ser muy peligroso porque se puede crear fácilmente un bucle permanente. Curiosamente, IOS no muestra un mensaje de advertencia cuando se aplica este comando. Habilitar PortFast en la interfaz incorrecta no es tan arriesgado como el BDPU filter, aunque extrañamente, IOS considera que es lo suficientemente importante como para informar al administrador.

Mas información:

https://learningnetwork.cisco.com/blogs/vip-perspectives/2016/03/10/advanced-stp-features-portfast-bpdu-guard-and-bpdu-filter

Facebook Comments

You may also like

Cómo instalar un servidor SSH en Linux 

1.- Install with apt-get command on Ubuntu: sudo