До этого мы рассмотрели как настроить PIM-DM. Здесь же рассмотрим настройку sparse mode протокола PIM (рисунок 1). Использовать будем следующую топологию:
Рисунок 1. Sparse mode PIM
Работа режима sparse построена вокруг rendezvous point. RP это точка, к которой строятся деревья от клиентов, которые хотят получать трафик определенной широковещательной группы.
Также RP в PIM-SM отвечает за процесс регистрации источника, который состоит в том, что маршрутизатор, который ближе всех находится к источнику трафика, отправляется сообщение на RP, с указанием адреса источника и группы (фактически сам мультикаст пакет отправленный источником).
Когда источник зарегистрирован, и уже есть или появляются позже клиенты, которые хотят получать трафик определенной группы, задача RP построить SPT-дерево к источнику.
В PIM-SM оба дерева, и RPT и SPT, односторонние. То есть, трафик может передаваться по ним только в одном направлении. В SPT от источника к RP, а в RPT от RP к клиентам.
Перейдем к настройкам:
AR1
interface GigabitEthernet 0/0/1
ip address 192.168.1.1 255.255.255.0
interface GigabitEthernet 0/0/0
ip address 1.1.1.1 255.255.255.252
ospf
area 0
network 192.168.1.0 0.0.0.255
network 1.1.1.0 0.0.0.255
AR2
interface loopback 0
ip address 20.20.20.20 32
interface GigabitEthernet 0/0/0
ip address 1.1.1.2 255.255.255.252
interface GigabitEthernet 0/0/1
ip address 2.2.2.2 255.255.255.252
ospf
area 0
network 1.1.1.0 0.0.0.255
network 2.2.2.0 0.0.0.255
network 20.20.20.20 0.0.0.0
AR3
interface GigabitEthernet 0/0/1
ip address 2.2.2.1 255.255.255.252
interface GigabitEthernet 0/0/2
ip address 192.168.2.1 255.255.255.0
ospf
area 0
network 2.2.2.0 0.0.0.255
network 192.168.2.0 0.0.0.255
Далее активируем мультикаст на всех маршрутизаторах, а также протокол PIMна каждом интерфейсе:
AR1
multicast routing-enable
interface GigabitEthernet 0/0/1
pim dm
igmp enable
interface GigabitEthernet 0/0/0
pim dm
AR2
multicast routing-enable
interface GigabitEthernet 0/0/0
pim dm
interface GigabitEthernet 0/0/1
pim dm
AR3
multicast routing-enable
interface GigabitEthernet 0/0/1
pim dm
interface GigabitEthernet 0/0/2
pim dm
igmp enable
Первое, что делает протокол PIM после активации – устанавливает соседство с другими устройствами. Для этого используются сообщения PIM Hello (рисунок 2). С интерфейса, на котором активирован PIM, начинают рассылаться сообщения на адрес 224.0.0.13 с TTL равным 1. Это означает, что соседями могут быть только маршрутизаторы, находящиеся в одном широковещательном домене.
Рисунок 2. PIM Hello
[AR2] display pim neighbor
VPN-Instance: public net
Total Number of Neighbors = 2
Neighbor Interface Uptime Expires Dr-Priority BFD-Session
1.1.1.1 GE0/0/0 01:42:17 00:01:17 1 N
2.2.2.1 GE0/0/1 01:42:08 00:01:18 1 N
Как видим, соседство было установлено, но если сейчас подключить широковещательный сервер и клиента, то AR1 получит трафик от сервера, а AR3 получит сообщение от клиента о желании получить широковещательный трафик. В итоге AR1 не будет знать о клиенте, а AR3 о сервере.
Чтобы всё заработало нам необходимо настроить RendezvousPoint. Точка, которой извества информация об источнике широковещательного потока и о клиентакх группы. Все PIM-маршрутизаторы должны знать, кто является RP в домене. Существует два способа задания RP: статический и динамический. В данном примере рассмотрим настройку статической точки.
В качестве RP выберем маршрутизаторAR2, а точнее его ранее настроенный loopback интерфейс. Далее на остальных маршрутизаторах выполняем следующие команды:
pim
static-rp 20.20.20.20
После этого AR3 узнает об источнике трафика для группы 224.1.1.1. Проверим pim таблицу маршрутизации:
[AR3] display pim routing-table
VPN-Instance: public net
Total 1 (*, G) entry; 1 (S, G) entry
(*, 224.1.1.1)
RP: 20.20.20.20
Protocol: pim-sm, Flag: WC
UpTime: 01:26:03
Upstream interface: GigabitEthernet0/0/1
Upstream neighbor: 2.2.2.2
RPF prime neighbor: 2.2.2.2
Downstream interface(s) information:
Total number of downstreams: 1
1: GigabitEthernet0/0/2
Protocol: igmp, UpTime: 01:26:03, Expires: -
(192.168.1.10, 224.1.1.1)
RP: 20.20.20.20
Protocol: pim-sm, Flag: SPT ACT
UpTime: 00:00:21
Upstream interface: GigabitEthernet0/0/1
Upstream neighbor: 2.2.2.2
RPF prime neighbor: 2.2.2.2
Downstream interface(s) information:
Total number of downstreams: 1
1: GigabitEthernet0/0/2
Protocol: pim-sm, UpTime: 00:00:21, Expires: -
Первая запись вида (*, 224.1.1.1) говорит о получателях потока. Это может быть не только клиент-компьютер, но и другой PIM-маршрутизатор.
Вторая запись (192.168.1.10, 224.1.1.1) говорит об источнике потока. В нашем случае – источник с адресом 192.168.1.10, который вещает трафик для группы 224.1.1.1. Трафик приходит на интерфейс GE0/0/1 и дальше рассылается на интерфейс GE0/0/2.