Документация: ПО Факел — разрабатываемая версия
PIM и IGMP¶
Обзор¶
Протокол PIM может быть настроен на любом интерфейсе каждого маршрутизатора. Каждый маршрутизатор должен иметь заданную точку коммуникационной встречи - Rendezvous Point, из которой будут впоследствии выстраиваться однонаправленные общие деревья для дальнейшего их распространения через групповые рассылки.
Трафик от источников в рамках групповой рассылки поступает в точку коммуникационной встречи, после чего получатели данного трафика извлекают его из общего с помощью протокола IGMP.
Получатели трафика в рамках групповой рассылки используют протокол IGMP для коммуникаций с ближайшим (локальным) маршрутизатором, поэтому кроме протокола PIM на каждом маршрутизаторе, который является получателем трафика в рамках групповой рассылки, должен быть также настроен протокол IGMP.
Операционная система поддерживает протокол IGMP версии 2 и версии 3. Возможность избирательных групповых рассылок на основе отправителя предоставляет версия 3.
Параметры интерфейса PIM задаются командами protocols pim interface <interface> …. Кроме приоритета и интервала сообщений Hello, на интерфейсе можно:
включить обнаружение отказов соседей с помощью BFD и применить профиль BFD (см. BFD);
отключить обработку сообщений начальной загрузки (BSM), в том числе только одноадресных;
перевести интерфейс в пассивный режим, в котором он не отправляет и не принимает управляющие пакеты PIM;
задать IPv4-адрес источника для установления соединения PIM;
отключить IGMP, не удаляя его настройки (
igmp disable);задать статические групповые маршруты: адрес группы (
static-route) и выходной интерфейс (next-hop-interface).
Общие параметры протокола PIM задают таймеры (интервал сообщений Join/Prune, таймер Keep Alive, таймер подавления сообщений Register), число пакетов, которые обрабатываются за один раз, использование и перебалансировку равноценных путей (ECMP) и передачу вторичных адресов IPv6 в сообщениях Hello. Списки префиксов IPv4 (см. Политика маршрутизации) задают диапазон групп SSM (ssm prefix-list), прием сообщений Register (register-accept-list prefix-list) и запрет переключения на дерево кратчайшего пути (spt-switchover infinity-and-beyond). Команда protocols pim igmp watermark-warning задает число групп IGMP, при достижении которого выводится предупреждение.
Примечание
В текущей версии ПО Факел протоколы PIM и IGMP строят групповые маршруты только в ядре Linux, в FVE эти маршруты не передаются, поэтому пересылка группового трафика плоскостью передачи данных FVE не гарантируется (см. Ограничения).
Пример настройки¶
Пример базовой конфигурации групповых рассылок между тремя маршрутизаторами.
Настройка на маршрутизаторе 1:
Шаг |
Команда |
Описание |
|---|---|---|
1 |
set interfaces ethernet eth2 address |
Задает адрес |
2 |
set interfaces ethernet eth1 address |
Задает адрес |
3 |
set protocols ospf area |
Активирует OSPF в области |
4 |
set protocols ospf area |
Активирует OSPF в области |
5 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
6 |
set protocols pim interface |
Активирует протокол IGMP на интерфейсе |
7 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
8 |
set protocols pim rp address |
Задает точку коммуникационной встречи |
Настройка на маршрутизаторе 2:
Шаг |
Команда |
Описание |
|---|---|---|
1 |
set interfaces ethernet eth1 address |
Задает адрес |
2 |
set interfaces ethernet eth2 address |
Задает адрес |
3 |
set protocols ospf area |
Активирует OSPF в области |
4 |
set protocols ospf area |
Активирует OSPF в области |
5 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
6 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
7 |
set protocols pim rp address |
Задает точку коммуникационной встречи |
Настройка на маршрутизаторе 3:
Шаг |
Команда |
Описание |
|---|---|---|
1 |
set interfaces dummy dum0 address |
Задает адрес |
2 |
set interfaces ethernet eth0 address |
Задает адрес |
3 |
set interfaces ethernet eth1 address |
Задает адрес |
4 |
set protocols ospf area |
Активирует OSPF в области |
5 |
set protocols ospf area |
Активирует OSPF в области |
6 |
set protocols ospf area |
Активирует OSPF в области |
7 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
8 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
9 |
set protocols pim interface |
Активирует протокол PIM на интерфейсе |
10 |
set protocols pim rp address |
Задает точку коммуникационной встречи |
Список команд¶
Режим «Конфигурирование»¶
protocols pim interface <interface>¶
Синтаксис:
set protocols pim interface
<interface>delete protocols pim interface
<interface>show protocols pim interface
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim rp address <address> group <group>¶
Синтаксис:
set protocols pim rp address
<address>group<group>delete protocols pim rp address
<address>group<group>show protocols pim rp address
<address>group
Аргументы:
<address>— адрес точки коммуникационной встречи. Формат: IPv4-адрес (x.x.x.x).<group>— префикс адресов групповой рассылки. Формат: IPv4-префикс (x.x.x.x/x). Можно задать несколько значений.
Режим: «Конфигурирование».
protocols pim interface <interface> igmp¶
Синтаксис:
set protocols pim interface
<interface>igmpdelete protocols pim interface
<interface>igmpshow protocols pim interface
<interface>igmp
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> dr-priority <dr-priority>¶
Синтаксис:
set protocols pim interface
<interface>dr-priority<dr-priority>delete protocols pim interface
<interface>dr-priority<dr-priority>show protocols pim interface
<interface>dr-priority
Аргументы:
<interface>— имя интерфейса.<dr-priority>— приоритет. Формат: целое число. Диапазон значений: от 1 до 4294967295. Значение по умолчанию: 1.
Режим: «Конфигурирование».
protocols pim interface <interface> hello <hello>¶
Hello в рамках протокола PIM.Синтаксис:
set protocols pim interface
<interface>hello<hello>delete protocols pim interface
<interface>hello<hello>show protocols pim interface
<interface>hello
Аргументы:
<interface>— имя интерфейса.<hello>— временной интервал в секундах. Формат: целое число. Диапазон значений: от 1 до 180.
Режим: «Конфигурирование».
protocols pim rp keep-alive-timer <keep-alive-timer>¶
KATimer вывода show ip pim upstream): например, при значении 400 таймер состояния (S,G) на точке встречи начинается с 6 минут 40 секунд.Синтаксис:
set protocols pim rp keep-alive-timer
<keep-alive-timer>delete protocols pim rp keep-alive-timer
<keep-alive-timer>show protocols pim rp keep-alive-timer
Аргументы:
<keep-alive-timer>— тайм-аут в секундах. Формат: целое число. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
protocols pim interface <interface> igmp join <join> source-address <source-address>¶
Синтаксис:
set protocols pim interface
<interface>igmp join<join>source-address<source-address>delete protocols pim interface
<interface>igmp join<join>source-address<source-address>show protocols pim interface
<interface>igmp join<join>source-address
Аргументы:
<interface>— имя интерфейса.<join>— адрес группы групповой рассылки. Формат: IPv4-адрес (x.x.x.x).<source-address>— адрес отправителя. Формат: IPv4-адрес (x.x.x.x). Можно задать несколько значений.
Режим: «Конфигурирование».
protocols pim interface <interface> igmp query-interval <query-interval>¶
Синтаксис:
set protocols pim interface
<interface>igmp query-interval<query-interval>delete protocols pim interface
<interface>igmp query-interval<query-interval>show protocols pim interface
<interface>igmp query-interval
Аргументы:
<interface>— имя интерфейса.<query-interval>— временной интервал в секундах. Формат: целое число. Диапазон значений: от 1 до 1800.
Режим: «Конфигурирование».
protocols pim interface <interface> igmp query-max-response-time <query-max-response-time>¶
Синтаксис:
set protocols pim interface
<interface>igmp query-max-response-time<query-max-response-time>delete protocols pim interface
<interface>igmp query-max-response-time<query-max-response-time>show protocols pim interface
<interface>igmp query-max-response-time
Аргументы:
<interface>— имя интерфейса.<query-max-response-time>— тайм-аут в десятых долях секунды. Формат: целое число. Диапазон значений: от 10 до 250.
Режим: «Конфигурирование».
protocols pim interface <interface> igmp version <version>¶
Синтаксис:
set protocols pim interface
<interface>igmp version<version>delete protocols pim interface
<interface>igmp version<version>show protocols pim interface
<interface>igmp version
Аргументы:
<interface>— имя интерфейса.<version>— версия протокола IGMP. Возможные значения:2— IGMP версии 2;3— IGMP версии 3. Значение по умолчанию:3.
Режим: «Конфигурирование».
protocols pim interface <interface> bfd¶
Синтаксис:
set protocols pim interface
<interface>bfddelete protocols pim interface
<interface>bfdshow protocols pim interface
<interface>bfd
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> bfd profile <profile>¶
Синтаксис:
set protocols pim interface
<interface>bfd profile<profile>delete protocols pim interface
<interface>bfd profile<profile>show protocols pim interface
<interface>bfd profile
Аргументы:
<interface>— имя интерфейса.<profile>— имя профиля BFD. Формат: строка.
Режим: «Конфигурирование».
protocols pim interface <interface> no-bsm¶
Синтаксис:
set protocols pim interface
<interface>no-bsmdelete protocols pim interface
<interface>no-bsmshow protocols pim interface
<interface>no-bsm
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> no-unicast-bsm¶
Синтаксис:
set protocols pim interface
<interface>no-unicast-bsmdelete protocols pim interface
<interface>no-unicast-bsmshow protocols pim interface
<interface>no-unicast-bsm
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> passive¶
Синтаксис:
set protocols pim interface
<interface>passivedelete protocols pim interface
<interface>passiveshow protocols pim interface
<interface>passive
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> source-address <source-address>¶
show ip pim neighbor. Адрес может принадлежать другому интерфейсу маршрутизатора.Синтаксис:
set protocols pim interface
<interface>source-address<source-address>delete protocols pim interface
<interface>source-address<source-address>show protocols pim interface
<interface>source-address
Аргументы:
<interface>— имя интерфейса.<source-address>— IPv4-адрес источника. Формат: IPv4-адрес (x.x.x.x).
Режим: «Конфигурирование».
protocols pim interface <interface> igmp disable¶
Синтаксис:
set protocols pim interface
<interface>igmp disabledelete protocols pim interface
<interface>igmp disableshow protocols pim interface
<interface>igmp disable
Аргументы:
<interface>— имя интерфейса.
Режим: «Конфигурирование».
protocols pim interface <interface> static-route <static-route>¶
Синтаксис:
set protocols pim interface
<interface>static-route<static-route>delete protocols pim interface
<interface>static-route<static-route>show protocols pim interface
<interface>static-route<static-route>
Аргументы:
<interface>— имя интерфейса.<static-route>— адрес группы групповой рассылки. Формат: IPv4-адрес (x.x.x.x).
Режим: «Конфигурирование».
protocols pim interface <interface> static-route <static-route> next-hop-interface <next-hop-interface>¶
Синтаксис:
set protocols pim interface
<interface>static-route<static-route>next-hop-interface<next-hop-interface>delete protocols pim interface
<interface>static-route<static-route>next-hop-interface<next-hop-interface>show protocols pim interface
<interface>static-route<static-route>next-hop-interface
Аргументы:
<interface>— имя интерфейса.<static-route>— адрес группы групповой рассылки. Формат: IPv4-адрес (x.x.x.x).<next-hop-interface>— имя выходного интерфейса.
Режим: «Конфигурирование».
protocols pim ecmp¶
Синтаксис:
set protocols pim ecmp
delete protocols pim ecmp
show protocols pim ecmp
Режим: «Конфигурирование».
protocols pim ecmp rebalance¶
Синтаксис:
set protocols pim ecmp rebalance
delete protocols pim ecmp rebalance
show protocols pim ecmp rebalance
Режим: «Конфигурирование».
protocols pim igmp watermark-warning <watermark-warning>¶
Синтаксис:
set protocols pim igmp watermark-warning
<watermark-warning>delete protocols pim igmp watermark-warning
<watermark-warning>show protocols pim igmp watermark-warning
Аргументы:
<watermark-warning>— число групп. Формат: целое число. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
protocols pim join-prune-interval <join-prune-interval>¶
Синтаксис:
set protocols pim join-prune-interval
<join-prune-interval>delete protocols pim join-prune-interval
<join-prune-interval>show protocols pim join-prune-interval
Аргументы:
<join-prune-interval>— интервал в секундах. Формат: целое число. Диапазон значений: от 1 до 65535. Значение по умолчанию: 60.
Режим: «Конфигурирование».
protocols pim keep-alive-timer <keep-alive-timer>¶
Синтаксис:
set protocols pim keep-alive-timer
<keep-alive-timer>delete protocols pim keep-alive-timer
<keep-alive-timer>show protocols pim keep-alive-timer
Аргументы:
<keep-alive-timer>— значение таймера в секундах. Формат: целое число. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
protocols pim packets <packets>¶
Синтаксис:
set protocols pim packets
<packets>delete protocols pim packets
<packets>show protocols pim packets
Аргументы:
<packets>— число пакетов. Формат: целое число. Диапазон значений: от 1 до 255. Значение по умолчанию: 3.
Режим: «Конфигурирование».
protocols pim register-suppress-time <register-suppress-time>¶
Синтаксис:
set protocols pim register-suppress-time
<register-suppress-time>delete protocols pim register-suppress-time
<register-suppress-time>show protocols pim register-suppress-time
Аргументы:
<register-suppress-time>— значение таймера в секундах. Формат: целое число. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
protocols pim register-accept-list prefix-list <prefix-list>¶
Синтаксис:
set protocols pim register-accept-list prefix-list
<prefix-list>delete protocols pim register-accept-list prefix-list
<prefix-list>show protocols pim register-accept-list prefix-list
Аргументы:
<prefix-list>— имя списка префиксов IPv4. Формат: строка.
Режим: «Конфигурирование».
protocols pim no-v6-secondary¶
show ip pim secondary.Синтаксис:
set protocols pim no-v6-secondary
delete protocols pim no-v6-secondary
show protocols pim no-v6-secondary
Режим: «Конфигурирование».
protocols pim spt-switchover infinity-and-beyond¶
Синтаксис:
set protocols pim spt-switchover infinity-and-beyond
delete protocols pim spt-switchover infinity-and-beyond
show protocols pim spt-switchover infinity-and-beyond
Режим: «Конфигурирование».
protocols pim spt-switchover infinity-and-beyond prefix-list <prefix-list>¶
Синтаксис:
set protocols pim spt-switchover infinity-and-beyond prefix-list
<prefix-list>delete protocols pim spt-switchover infinity-and-beyond prefix-list
<prefix-list>show protocols pim spt-switchover infinity-and-beyond prefix-list
Аргументы:
<prefix-list>— имя списка префиксов IPv4. Формат: строка.
Режим: «Конфигурирование».
protocols pim ssm prefix-list <prefix-list>¶
Синтаксис:
set protocols pim ssm prefix-list
<prefix-list>delete protocols pim ssm prefix-list
<prefix-list>show protocols pim ssm prefix-list
Аргументы:
<prefix-list>— имя списка префиксов IPv4. Формат: строка. Если список не задан, диапазон SSM — 232.0.0.0/8.
Режим: «Конфигурирование».
Режим «Администрирование»¶
Команды управления службой IGMP прокси (в том числе restart igmp-proxy) описаны на странице IGMP прокси.
ip pim assert¶
Синтаксис:
show ip pim assert
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim assert-internal¶
Синтаксис:
show ip pim assert-internal
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim assert-metric¶
Синтаксис:
show ip pim assert-metric
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim assert-winner-metric¶
Синтаксис:
show ip pim assert-winner-metric
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim bsm-database¶
Синтаксис:
show ip pim bsm-database
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim bsr¶
Синтаксис:
show ip pim bsr
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim bsrp-info¶
Синтаксис:
show ip pim bsrp-info
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim channel¶
Синтаксис:
show ip pim channel
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim group-type¶
protocols pim ssm prefix-list, или диапазон по умолчанию 232.0.0.0/8.Синтаксис:
show ip pim group-type
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim interface¶
Синтаксис:
show ip pim interface
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim join¶
Синтаксис:
show ip pim join
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim local-membership¶
Синтаксис:
show ip pim local-membership
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim neighbor¶
Синтаксис:
show ip pim neighbor
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim nexthop¶
Синтаксис:
show ip pim nexthop
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim rp-info¶
Синтаксис:
show ip pim rp-info
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim rpf¶
Синтаксис:
show ip pim rpf
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim secondary¶
Синтаксис:
show ip pim secondary
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim state¶
Синтаксис:
show ip pim state
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim statistics¶
Синтаксис:
show ip pim statistics
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim upstream¶
Синтаксис:
show ip pim upstream
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim upstream-join-desired¶
Синтаксис:
show ip pim upstream-join-desired
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim upstream-rpf¶
Синтаксис:
show ip pim upstream-rpf
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip pim vxlan-groups¶
Синтаксис:
show ip pim vxlan-groups
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip igmp groups¶
Синтаксис:
show ip igmp groups
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip igmp interface¶
Синтаксис:
show ip igmp interface
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip igmp join¶
igmp join).Синтаксис:
show ip igmp join
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip igmp sources¶
Синтаксис:
show ip igmp sources
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip igmp statistics¶
Синтаксис:
show ip igmp statistics
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip multicast summary¶
Синтаксис:
show ip multicast summary
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip multicast route¶
Синтаксис:
show ip multicast route
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip multicast group¶
Синтаксис:
show ip multicast group
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip multicast group interface <interface>¶
Синтаксис:
show ip multicast group interface
<interface>
Аргументы:
<interface>— имя интерфейса. Формат: строка.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
ip groups¶
Синтаксис:
show ip groups
Режим: «Администрирование».
ip multicast interface¶
Синтаксис:
show ip multicast interface
Режим: «Администрирование».
Уровень привилегий: «Администратор».
reset ip igmp interfaces¶
Синтаксис:
reset ip igmp interfaces
Режим: «Администрирование».
Уровень привилегий: «Администратор».
reset ip multicast route¶
Синтаксис:
reset ip multicast route
Режим: «Администрирование».
Уровень привилегий: «Администратор».
log protocol multicast¶
-- No entries --.Синтаксис:
show log protocol multicast
Режим: «Администрирование».
Уровень привилегий: «Администратор».
monitor log protocol multicast¶
Синтаксис:
monitor log protocol multicast
Режим: «Администрирование».
Уровень привилегий: «Администратор».