# Virtual Router Redundancy Protocol

Virtual Router Redundancy Protocol (VRRP) es un protocolo de comunicaciones no propietario definido en el RFC 3768 diseñado para aumentar la disponibilidad de la puerta de enlace por defecto dando servicio a máquinas en la misma subred. El aumento de fiabilidad se consigue mediante el anuncio de un router virtual como una puerta de enlace por defecto en lugar de un router físico. Dos o más routers físicos se configuran representando al router virtual, con sólo uno de ellos realizando realmente el enrutamiento. Si el router físico actual que está realizando el enrutamiento falla, el otro router físico negocia para sustituirlo. Se denomina router maestro al router físico que realiza realmente el enrutamiento y routers de respaldo a los que están en espera de que el maestro falle.
VRRP se puede usar sobre redes Ethernet, MPLS y Token Ring. El protocolo VRRP ha sido implementado más que sus competidores. Fabricantes como Alcatel-Lucent, D-Link, Extreme Networks, Dell, Hirschmann, Mikrotik, Nokia, Siemens-Ruggedcom, Nortel, Cisco Systems, Inc, Allied Telesis, Juniper Networks, Huawei, Foundry Networks, Radware, Raisecom, Aethra y 3Com Corporation ofrecen routers y switches de nivel 3 que pueden utilizar el protocolo VRRP. También están disponibles implementaciones para Linux y BSD.
Hay que tener en cuenta que VRRP es un protocolo de router, no de routing. Cada instancia de VRRP se limita a una única subred. No anuncia rutas IP ni afecta a la tabla de encaminamiento.

## Implementación

Un router virtual tiene que utilizar la siguiente dirección MAC: 00-00-5E-00-01-XX. El último byte de la dirección es el identificador de router virtual (Virtual Router IDentifier o VRID), que es diferente para cada router virtual en la red. Esta dirección sólo la utiliza un único router físico a la vez, y es la única forma de que otros routers físicos puedan identificar el router maestro en un router virtual. Los routers físicos que actúan como router virtuales deben comunicarse entre ellos utilizando paquetes con dirección IP multicast 224.0.0.18 y número de protocolo IP 112.
Los routers maestros tienen una prioridad de 255 y los de respaldo entre 1 y 254. Cuando se realiza un cambio planificado de router maestro se cambia su prioridad a 0 lo que fuerza a que alguno de los routers de respaldo se convierta en maestro más rápidamente. De esta forma se reduce el periodo de agujero negro.

## La elección del router maestro

Un fallo en la recepción de un paquete de multicast del master durante un tiempo superior a tres veces el tiempo de anuncio hace que los routers de respaldo asuman que el router maestro está caído. El router virtual cambia su estado a "inestable" y se inicia un proceso de elección para seleccionar el siguiente router maestro de entre los routers de respaldo. Esto se realiza mediante la utilización de paquetes multicast.
Hay que hacer notar que los routers de respaldo únicamente envían paquetes multicast durante el proceso de elección. Una excepción a esta regla es cuando un router físico se configura para que derroque al master actual cuando se le introduzca en el router virtual. Esto permite al administrador de red forzar a que un router sea el maestro inmediatamente después de un arranque, por ejemplo cuando un router es más potente que otros o cuando un router utiliza el ancho de banda más barato. El router de respaldo con la prioridad más alta se convierte en el router maestro aumentando su prioridad a 255 y enviando paquetes ARP con la dirección MAC virtual y su dirección IP física. Esto redirige los paquetes del maestro caído al router maestro actual. En los casos en los que los routers de respaldo tengan todos la misma prioridad, el router de respaldo con la dirección IP más alta se convierte en el router maestro.
Todos los routers físicos que actúan como router virtual tienen que estar a un salto entre ellos. La comunicación dentro del router virtual se realiza periódicamente. Este periodo puede ajustarse cambiando el intervalo de anuncio. Cuanto más corto el intervalo de anuncio más pequeño será el tiempo de agujero negro a cambio de un aumento del tráfico de red. La seguridad se implementa respondiendo únicamente a los paquetes de primer salto, aunque se ofrecen otros mecanismos para su refuerzo, en particular para ataques locales.
La utilización de los routers de respaldo puede mejorarse mediante el balanceo de carga (RFC 3768).

## Historia

VRRP se basa en los conceptos de HSRP propiedad de Cisco. VRRP es realmente una versión estandarizada del HSRP de Cisco. Estos protocolos, similares en el concepto, no son compatibles.