06-14-2018 09:21 PM - editado 03-21-2019 05:43 PM
Este documento es una traducción de la presentación que realizamos para la comunidad en inglés y que pueden consultar aquí:
También hay una grabación y diapositivas:
En una red existen básicamente 3 tipos de tráfico:
unicast: donde el receptor es una IP definida, por ejemplo, de 10.1.1.1 a 10.1.1.2
broadcast: donde el receptor es todo host que pertenece a una red, por ejemplo 10.1.1.255/24
multicast: donde el receptor se suscribe a un grupo para recibir cierto tráfico, que puede ser de cualquier fuente (*,G) o de una fuente en particular (S,G)
*anycast: es un tipo de tráfico donde asignamos la misma IP a dos dispositivos diferentes (usualmente una loopback) y depués por ruteo se alcanza al dispositivo más cercano.
Multicast en capa 3 funciona en base al protocolo PIM (protocol independent multicast) que es el protocolo 103 asignado por la IANA y funciona con la señalización mediante los siguientes paquetes:
Paquetes multicastPIM Hello PIM join/prune PIM DF-elect (PIM Bidir) PIM assert PIM Bootstrap |
Paquetes unicastSource Register packets Register Stop packets BSR Candidate-RP advertisement
|
Los routers que corren PIM envían paquetes de multicast al grupo 224.0.0.13, y los routers en el mismo dominio de colisión (o VLAN) escuchan dichos mensajes y así se dan cuenta de que hay algún vecino, intercambian paquetes de hello y se forman adyacencias de PIM, con lo que poco a poco se va formando el dominio de multicast.
En su forma más simple, tenemos un router que actúa como Rendevouz-Point (punto de reunión) y que es el punto de referencia para todos los routers de mcast en la red.
Cuando tenemos un suscriptor interesado en un grupo de multicast, envía un paquete de IGMP report para avisarle al dispositivo capa 2 de su interés, quien a su vez lo comparte con el siguiente dispositivo capa 3 (que usa como gateway y para multicast es el Last Hop Router) donde se convierte en un paquete de PIM join y se envía al RP y se forma un estado (*,G).
También del lado de la fuente de tráfico pasa algo similar, envía tráfico de mcast al grupo en cuestión y el primer dispositivo capa 3 (First Hop Router) encapsula el primer paquete dentro de un paquete Source Register de mcast (forma un túnel de mcast) y lo envía al RP, donde se desencapsula y se interpreta la fuente u origen del paquete y el grupo al que va dirigido, con esta información formamos un estado (S,G).
El RP ahora conoce un suscriptor y una fuente que pertenecen al mismo grupo, y avisa al FHR que hay un interesado (*,G) y se enpieza a formar el árbol de distribución desde el FHP hasta el LHP con información de PIM, que básicamente revisa el ruteo en forma inversa, el FHP recibe el tráfico y lo reenvía a la interface que por ruteo lleva hacia el FHP, pero el siguiente router recibe el tráfico de mcast y verifica si la interface de entrada es por ruteo por donde se alcanza a la fuente (S,G), si es así, reenvía el tráfico, si no, lo descarta (RPF check). Por supuesto es mucho más elaborado que esta pequeña descripción, pero la idea general es así.
El RP puede ser definido de forma
Pasando al tema de seguridad, hay posibles vectores de ataque para multicast, por ejemplo desde un host generando mensajes falsos de :
Por eso un host nunca debe ejecutar PIM.
algunos ejemplos:
ip pim multicast-routing ip access-list 1 permit 10.0.0.2 ip access-list 1 deny any interface ethernet0/0 ip addess 10.0.0.1 255.255.255.0 ip pim sparse-mode ip pim neighbor-filter 1 |
ip pim multicast-routing ip access-list 1 permit 10.0.0.1 ip access-list 1 deny any interface ethernet0/0 ip addess 10.0.0.2 255.255.255.0 ip pim sparse-mode ip pim neighbor-filter 1 |
MSDP control
ip msdp peer 10.0.0.1
ip msdp password peer 10.0.0.2 $ecret
AutoRP control:
BSR control
interface ethernet0/0
ip pim bsr-border
BSR está basado en PIM y se propaga por saltos entre vecinos, por lo que no es posible bloquearlo usando un ACL porque se bloquerían todos los mensajes de BSR.
Access Control para multicast anysource (*,G) o source specific multicast
grupos que se reciben en una interface grupos utilizables control plane scoping Packet level filtering fuentes conocidas límite de mroutes límite de mroutes por interface |
ip igmp access-group ip multicast group-range ip multicast bounday [acl|ext-acl] ip access-group [in|out] ip pim accept-registry ip multicast route-limit [limit] ip multicast limit [rpf|out|connected] |
Referencias:
Best Practices:
¡Conecte con otros expertos de Cisco y del mundo! Encuentre soluciones a sus problemas técnicos o comerciales, y aprenda compartiendo experiencias.
Queremos que su experiencia sea grata, le compartimos algunos links que le ayudarán a familiarizarse con la Comunidad de Cisco:
Navegue y encuentre contenido personalizado de la comunidad