Конфигурация MSDP
Протокол Multicast Source Discovery Protocol (MSDP) используется для обмена информацией о multicast-источниках между доменами PIM-SM, поддерживающими BGP. С помощью MSDP маршрутизаторы в домене PIM-SM могут полагаться на свой RP для доступа к источнику в другом домене PIM-SM.
Обзор
Маршрутизаторы MSDP в домене PIM-SM устанавливают MSDP-пиринговые отношения с MSDP-пирами в другом домене через TCP-соединение. Установление MSDP-пиринга — это первый шаг к обмену информацией о multicast-источниках между доменами с использованием сообщений MSDP SA (Source-Active).
Когда RP в домене PIM-SM впервые узнает о новом отправителе (через сообщения PIM register), он создает сообщение SA и отправляет его своим MSDP-пирам.
Все RP, которые намерены отправлять или получать сообщения SA, должны установить MSDP-пиринг с другими RP, либо напрямую, либо через промежуточного MSDP-пира.
Сообщение SA содержит следующие поля:
- IP-адрес источника данных
- Групповой адрес, на который отправляет источник данных
- IP-адрес RP
Каждое сообщение SA, полученное от MSDP-пира, проходит проверку RPF. Проверка peer-RPF сравнивает адрес RP, указанный в сообщении SA, с MSDP-пиром, от которого было получено сообщение:
- Если MSDP-пир получает SA от non-RPF пира в направлении исходного RP, он отбрасывает сообщение.
- В противном случае он пересылает сообщение всем своим MSDP-пирам (кроме того, от которого было получено сообщение SA).
Когда RP получает новое сообщение SA от пира в другом домене, он проверяет, есть ли получатели, заинтересованные в трафике. RP проверяет наличие записи (*, G) с ненулевым списком выходящих интерфейсов. Если список выходящих интерфейсов ненулевой, RP отправляет (S,G) join в направлении источника.
Кэширование состояния SA
Если участник присоединяется к группе вскоре после получения сообщения SA локальным RP, этому участнику нужно будет ждать следующего сообщения SA, чтобы узнать об источнике. Кэширование SA выполняется на MSDP-пирах для уменьшения задержки присоединения для новых получателей. Кэш SA заполняется, как только MSDP-пир получает сообщение SA от своего пира.
MSDP Mesh Group
MSDP Mesh группы используются внутри домена PIM-SM для упрощения проверки RPF и пересылки SA внутри домена.
Любые сообщения SA, полученные от пира в mesh группе, не пересылаются другим пирам в той же mesh группе. Это уменьшает flooding сообщений SA и упрощает flooding peer-RPF.
MSDP Default Peer
MSDP default peer используется, когда MSDP-пиры не являются BGP-пирами. Сообщения SA, поступающие от default peer, не проходят проверку RPF и всегда принимаются.
Настройка PIM-SM
Для топологии MSDP, представленной на рисунке 6-39, необходимо включить PIM-SM на всех маршрутизаторах в обоих доменах PIM и сделать SW-1 точкой rendezvous (RP) в Domain-1, а SW-2 — RP в Domain-2. Для шагов по настройке PIM-SM и RP см. главу 3, PIM Sparse Mode Configuration.
Настройка MSDP
В топологии на рисунке 6-39 сессия MSDP устанавливается между SW-1 и SW-2 в обоих доменах. Пример конфигурации на SW-1 показывает, как включить MSDP-пиринг между SW-1 и SW-2.
Топология
Р исунок 6-39: Топология MSDP
IP-адреса:
SW-1 eth1: 11.1.1.11
SW-1 eth2: 10.1.1.11 SW-2 eth1: 11.1.1.12
SW-2 eth2: 12.1.1.12 SW-4 eth1: 12.1.1.14 SW-4 eth2: 20.1.1.14 SW-3 eth1: 13.1.1.13
SW-3 eth2: 10.1.1.13
Источник: 20.1.1.10
Multicast группа: 224.1.1.1
SW-1
#configure terminal | Перейти в режим конфигурации. |
(config)#ip msdp peer 11.1.1.12 --или-- (config)#ip msdp peer 11.1.1.12 connect source eth1 | Настроить MSDP-пир. Используйте опцию connect-source, чтобы указать основной IP-адрес интерфейса, который будет использоваться в качестве исходного IP-адреса TCP-соединения MSDP. |
(config)#ip msdp password myPass peer 11.1.1.12 | Настроить пароль MSDP для пира. Вы должны указать ту же команду на SW-2. Пароль должен совпадать на обоих маршрутизаторах. |
(config)#ip msdp default-peer 11.1.1.12 | Настроить MSDP default peer. |
(config)#ip msdp mesh-group mesh1 11.1.1.12 | Настроить MSDP mesh группу. |
(config)#ip msdp originator-id eth2 | Настроить идентификатор MSDP originator. |
(config)#exit | Выйти из режима конфигурации. |
Проверка
SW-1
#show running-config
!
!
Last configuration change at 06:54:59 EDT Tue May 28 2022 by prsp
!
no service password-encryption
!
hostname SW1
!
logging monitor 7
!
ip vrf management
!
ip domain-lookup
feature telnet
ssh login-attempts 0
ssh server port 39681568
no feature ssh
snmp-server enable
snmp
snmp-server view all .1 included
feature ntp
ntp enable
username prsp role network-admin password encrypted $1$wOL9u7T.$YENa7qmmtL3zWMXKBWSKw/
feature rsyslog
ip msdp peer 11.1.1.12
ip msdp default-peer 11.1.1.12
ip msdp mesh-group mesh1 11.1.1.12
ip msdp password myPass peer 11.1.1.12
ip msdp originator-id eth2
!
ip multicast-routing
!
ip pim bsr-candidate eth2
ip pim rp-candidate eth2
!
interface lo
ip address 127.0.0.1/8
ipv6 address ::1/128
mtu 65536
!
interface eth0
ip address 192.168.52.3/24
!
interface eth1
ip address 11.1.1.11/24
ip pim bsr-border
ip pim sparse-mode
!
interface eth2
ip address 10.1.1.11/24
ip pim sparse-mode
!
interface eth3
shutdown
!
router ospf 100
network 10.1.1.0/24 area 0.0.0.0
cspf disable-better-protection
!
router bgp 1
neighbor 11.1.1.12 remote-as 2
!
line con 0
login line vty 0 39
login
!
end
Эта команда показывает информацию о MSDP-пире на SW-1:
#show ip msdp peer
MSDP Peer 11.1.1.12
Connection status
State: Up (Established)
Keepalive sent: 1
Keepalive received: 1
Number of connect retries: 0
В топологии MSDP на рисунке 6-39, когда источник отправляет multicast-трафик для группы 224.1.1.1, SW-4 (DR) отправляет пакет register в сторону SW-2, который является RP в домене. SW-2 получает пакет register и отправляет сообщение MSDP SA своему MSDP-пиру (SW-1). SW-1 получает сообщение SA и создает запись в кэше SA, содержащую информацию об источнике, группе и RP.
Эта команда на SW-1 показывает информацию SA с адресом источника, адресом группы и адресом RP:
#show ip msdp sa-cache
MSDP Source-Active Cache - 1 entries
(20.1.1.11, 224.1.1.1), RP 12.1.1.12, 00:00:14/00:03:16 #
SW-3 получает IGMP join для группы 224.1.1.1 и присоединяется к пути shared tree в сторону RP (SW-1).
Когда SW-1 получает сообщение SA от SW-2, так как у него есть получатель, он отправляет (S,G) join в сторону источника. Теперь трафик от источника поступает на SW-1 через путь shortest path tree, сформированный между SW-1 и источником. SW-1 распределяет трафик вниз по потоку к получателю.
Эта команда показывает состояние PIM на SW-1 после получения сообщения SA и присоединения к источнику:
#show ip pim mroute
IP Multicast Routing Table
(*,*,RP) Entries: 0
(*,G) Entries: 1
(S,G) Entries: 1
(S,G,rpt) Entries: 1
FCR Entries: 0
(*, 224.1.1.1)
RP: 10.1.1.11
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: JOINED
Local ................................
Joined ..j.............................
Asserted ................................ FCR:
(20.1.1.10, 224.1.1.1)
RPF nbr: 0.0.0.0
RPF idx: None
SPT bit: 0
Upstream State: JOINED
Local ................................
Joined ................................
Asserted ................................
Outgoing ..o.............................
(20.1.1.10, 224.1.1.1, rpt)
RP: 10.1.1.11
RPF nbr: 0.0.0.0
RPF idx: None
Upstream State: NOT PRUNED
--More-- Local ................................
Pruned ................................
Outgoing ..o.............................
#sh ip msdp sa-cache
MSDP Source-Active Cache - 1 entries
(20.1.1.11, 224.1.1.1), RP 12.1.1.12, 00:00:14/00:03:16 #
SW-2
#show running-config
!
!
Last configuration change at 13:58:59 EDT Mon May 27 2022 by prsp
!
no service password-encryption
!
hostname SW2
!
logging monitor 7
!
ip vrf management
!
ip domain-lookup
feature telnet
no feature ssh
snmp-server enable
snmp
snmp-server view all .1 included
feature ntp
ntp enable
username prsp role network-admin password encrypted $1$wOL9u7T.$YENa7qmmtL3zWMXKBWSKw/
feature rsyslog
ip msdp peer 11.1.1.11
ip msdp default-peer 11.1.1.11
ip msdp mesh-group mesh1 11.1.1.11
ip msdp password myPass peer 11.1.1.11
ip msdp originator-id eth2
!
ip multicast-routing
!
ip pim bsr-candidate eth2
ip pim rp-candidate eth2
!
interface lo
ip address 127.0.0.1/8
ipv6 address ::1/128
mtu 65536
!
interface eth0
ip address 192.168.52.2/24
!
interface eth1
ip address 11.1.1.12/24
ip pim bsr-border
ip pim sparse-mode
!
interface eth2
ip address 12.1.1.12/24
ip pim sparse-mode
!
interface eth3
shutdown
!
router ospf 200
network 12.1.1.0/24 area 0.0.0.0
cspf disable-better-protection
!
router bgp 2
neighbor 11.1.1.11 remote-as 1
!
line con 0
login line vty 0 39
login
!
end
This command shows the MSDP peer information at SW-2.
#show ip msdp peer
MSDP Peer 11.1.1.11
Connection status
State: Up (Established)
Keepalive sent: 15
Keepalive received: 17
#
SW-3
#show running-config
!
!
Last configuration change at 14:07:38 EDT Mon May 27 2022 by prsp
!
no service password-encryption
!
hostname SW3
!
logging monitor 7
!
ip vrf management
!
ip domain-lookup
feature telnet ssh
login-attempts 0
ssh server port 40574496
no feature ssh
snmp-server enable
snmp
snmp-server view all .1 included
feature ntp
ntp enable
username prsp role network-admin password encrypted $1$wOL9u7T.$YENa7qmmtL3zWMXKBWSKw/
feature rsyslog
!
ip multicast-routing
!
ip pim rp-address 10.1.1.11
!
interface lo
ip address 127.0.0.1/8
ipv6 address ::1/128
mtu 65536
!
interface eth0
ip address 192.168.52.6/24
!
interface eth1
ip address 13.1.1.13/24
ip pim sparse-mode
!
interface eth2
ip address 10.1.1.13/24
ip pim sparse-mode
!
interface eth3
shutdown
!
interface eth4
shutdown
!
router ospf 100
network 10.1.1.0/24 area 0.0.0.0
cspf disable-better-protection
!
line con 0
login line vty 0 39
login
!
end
#sh ip igmp bgr
IGMP Connected Group Membership
Group Address Interface Uptime Expires State Last Reporter
224.1.1.1 eth1 16:58:51 00:03:39 Active 13.1.1.11
#
SW-4
#show running-config
!
!
Last configuration change at 13:57:34 EDT Mon May 27 2022 by prsp
!
no service password-encryption
!
hostname SW4
!
logging monitor 7
!
ip vrf management
!
ip domain-lookup
feature telnet
ssh login-attempts 0
ssh server port 20761744
no feature ssh
snmp-server enable
snmp
snmp-server view all .1 included
feature ntp
ntp enable
username prsp role network-admin password encrypted $1$ypBh3Wo/$4Fq/DbkFF/UWeA7YnTYMm1
feature rsyslog
!
ip multicast-routing
!
interface lo
ip address 127.0.0.1/8
ipv6 address ::1/128
mtu 65536
!
interface eth0
ip address 192.168.52.5/24
!
interface eth1
ip address 20.1.1.14/24
ip pim sparse-mode
!
interface eth2
ip address 12.1.1.14/24
ip pim sparse-mode
!
interface eth3
shutdown
!
router ospf 200
network 12.1.1.0/24 area 0.0.0.0
cspf disable-better-protection
!
line con 0
login line vty 0 39
login
!
end