Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Conventions

Processo de registro

Configurações de execução relevantes

Depurações relevantes

Informações Relacionadas

Introduction

Você pode ter redundância para o ponto de encontro (RP) executando protocolos como RP automático e Bootstrap. No entanto, em caso de fracasso, a sua convergência não é tão rápida. Há um conceito de RP Anycast em que o mesmo endereço IP (endereço-rp) é configurado em dois ou mais roteadores que você deseja servir como RP. Em seguida, anuncie esse IP no IGP. Outros roteadores selecionarão qualquer um desses roteadores com base no melhor caminho para o endereço rp. Em caso de falha, a convergência é a mesma do Interior Gateway Protocol (IGP).

Com esse conceito surge um problema. As informações precisam ser sincronizadas entre os diferentes RPs porque poucos remetentes e receptores podem se unir ao roteador 1 atuando como um RP, e poucos podem se unir ao roteador 2 atuando como um RP. Esses roteadores não teriam informações completas de todas as fontes e o multicast seria quebrado. A solução para esse problema é ter um mecanismo para sincronizar informações com relação às fontes entre todos os roteadores que estão atuando como um RP. Há dois protocolos que podem servir a essa finalidade:

- Multicast Source Discovery Protocol (MSDP)

- PIM

O MSDP está por aí há algum tempo. As mensagens de origem ativa são enviadas a outros roteadores sempre que uma origem se registra em um RP. Há uma melhoria no PIM que é detalhada neste documento. Atualmente, essa melhoria só está disponível para o Nexus.

Prerequisites

Requirements

A Cisco recomenda que você tenha conhecimento destes tópicos:

- RPs Anycast

- PIM (Nexus)

Componentes Utilizados

Este documento não se restringe a versões de software e hardware específicas.

Conventions

Consulte as Convenções de Dicas Técnicas da Cisco para obter mais informações sobre convenções de documentos.

Processo de registro

Este é um exemplo de topologia:

Remetente(172.16.1.1)—(9/3)Nexus-1(9/2)—(9/2)Nexus-2

Configurações de execução relevantes

Configuração relevante do Nexus 1:

ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4

ip pim anycast-rp 10.1.1.1 192.168.1.1

ip pim anycast-rp 10.1.1.1 192.168.2.2

interface loopback1

ip address 192.168.1.1/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface loopback7

ip address 10.1.1.1/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface Ethernet9/2

ip address 10.7.7.1/24

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface Ethernet9/3

ip address 172.16.1.2/24

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

Configuração relevante do Nexus 2:

ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4

ip pim ssm range 232.0.0.0/8

ip pim anycast-rp 10.1.1.1 192.168.1.1

ip pim anycast-rp 10.1.1.1 192.168.2.2

interface loopback1

ip address 192.168.2.2/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface loopback7

ip address 10.1.1.1/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface Ethernet9/2

ip address 10.7.7.2/24

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

Há duas caixas Nexus: Nexus-1 e Nexus-2. Ambos serão usados como RP. O endereço RP deve ser 10.1.1.1. O loopback 7 está em ambas as caixas Nexus que têm esse IP configurado. Esse loopback é anunciado no OSPF (Open Shortest Path First) para que diferentes roteadores na rede acessem o Nexus-1 ou o Nexus-2 para o RP. Isso depende da melhor métrica de caminho.

Em ambos os Nexus, 10.1.1.1 é definido como o RP usando este comando:

ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4

Agora você precisa definir algo chamado conjunto RP. Esse é o conjunto de todos os roteadores que atuariam como RP. Você precisa ter um loopback em cada roteador RP potencial, que é diferente do loopback que está sendo usado como o endereço RP. Neste exemplo, o loopback 1 está em ambos os Nexus que têm o endereço IP 192.168.1.1/32 e 192.168.2.2/32, respectivamente. Esse loopback 1 é usado para definir o conjunto RP. O comando para fazer o mesmo é:

ip pim anycast-rp <rp-address> <ip-address-of-prospetive-RP>

Os comandos para ambos os Nexus para a configuração são:

- ip pim anycast-rp 10.1.1.1 192.168.1.1

- ip pim anycast-rp 10.1.1.1 192.168.2.2

Uma coisa a ser observada aqui é que você precisa definir seu próprio IP, assim como no conjunto RP. Portanto, ambos os comandos precisam ser colocados em ambas as caixas Nexus.

Uma vez definido o conjunto RP, esta é a saída que você vê para o mapeamento RP:

Nexus-1# show ip pim rp

PIM RP Status Information for VRF "default"

BSR disabled

Auto-RP disabled

BSR RP Candidate policy: None

BSR RP policy: None

Auto-RP Announce policy: None

Auto-RP Discovery policy: None

Anycast-RP 10.1.1.1 members:

192.168.1.1*  192.168.2.2

RP: 10.1.1.1*, (0), uptime: 00:00:58, expires: never,

priority: 0, RP-source: (local), group ranges:

224.0.0.0/4

Nexus-2# show ip pim rp

PIM RP Status Information for VRF "default"

BSR disabled

Auto-RP disabled

BSR RP Candidate policy: None

BSR RP policy: None

Auto-RP Announce policy: None

Auto-RP Discovery policy: None

Anycast-RP 10.1.1.1 members:

192.168.1.1  192.168.2.2*

RP: 10.1.1.1*, (0), uptime: 02:46:54, expires: never,

priority: 0, RP-source: (local), group ranges:

224.0.0.0/4

Por exemplo, você recebe uma mensagem de registro em um dos roteadores que faz parte do conjunto RP. Esse roteador adicionará S,G para essa origem em sua tabela. Além disso, o roteador enviará uma mensagem de registro PIM a todos os outros membros do RP definido. O IP de origem dessa mensagem de registro seria o endereço desse roteador que está no conjunto RP, e o destino seria o endereço de cada roteador no conjunto RP.

Neste exemplo, quando a origem 172.16.1.1 envia o pacote multicast destinado a 239.1.1.1 para Nexus-1, o Nexus-1 primeiro registra essa origem como RP e envia uma mensagem de registro para o Nexus-2 para a origem 172.16.1.1 e o grupo 239.1.1.1. Quando o Nexus-2 recebe esse registro, ele adiciona a entrada S,G para 172.16.1.1, 239.1.1.1 na tabela mroute. Agora, o RP Nexus-1 e o Nexus-2 conhecem essa fonte. A mensagem de registro que foi enviada do Nexus-1 para o Nexus-2 tinha o IP de origem 192.168.1.1 e o IP destino 192.168.2.2 como definido no conjunto RP.

Entradas de rota em ambas as caixas Nexus após o processo de registro:

Nexus-1# sh ip mroute 239.1.1.1

IP Multicast Routing Table for VRF "default"

(172.16.1.1/32, 239.1.1.1/32), uptime: 00:00:22, ip pim

Incoming interface: Ethernet9/3, RPF nbr: 172.16.1.1, internal

Outgoing interface list: (count: 0)

Nexus-2# sh ip mroute 239.1.1.1

IP Multicast Routing Table for VRF "default"

(172.16.1.1/32, 239.1.1.1/32), uptime: 00:00:17, pim ip

Incoming interface: Ethernet9/2, RPF nbr: 10.7.7.1, internal

Outgoing interface list: (count: 0)

Despejo de pacote dessa mensagem de registro tirada no Nexus-2:

Ethernet II, Src: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41), Dst: d8:67:d9:02:3b:41

(d8:67:d9:02:3b:41)

Destination: d8:67:d9:02:3b:41 (d8:67:d9:02:3b:41)

Address: d8:67:d9:02:3b:41 (d8:67:d9:02:3b:41)

.... ...0 .... .... .... .... = IG bit: Individual address (unicast)

.... ..0. .... .... .... .... = LG bit: Globally unique address (factory

default)

Source: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41)

Address: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41)

.... ...0 .... .... .... .... = IG bit: Individual address (unicast)

.... ..0. .... .... .... .... = LG bit: Globally unique address (factory

default)

Type: IP (0x0800)

Internet Protocol, Src: 192.168.1.1 (192.168.1.1), Dst: 192.168.2.2 (192.168.2.2)

Version: 4

Header length: 20 bytes

Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)

0000 00.. = Differentiated Services Codepoint: Default (0x00)

.... ..0. = ECN-Capable Transport (ECT): 0

.... ...0 = ECN-CE: 0

Total Length: 128

Identification: 0x1b27 (6951)

Flags: 0x00

0.. = Reserved bit: Not Set

.0. = Don't fragment: Not Set

..0 = More fragments: Not Set

Fragment offset: 0

Time to live: 254

Protocol: PIM (0x67)

Header checksum: 0x9aea [correct]

[Good: True]

[Bad : False]

Source: 192.168.1.1 (192.168.1.1)

Destination: 192.168.2.2 (192.168.2.2)

Protocol Independent Multicast

Version: 2

Type: Register (1)

Checksum: 0xdeff [correct]

PIM parameters

Flags: 0x00000000

0... .... .... .... .... .... .... .... = Not border

.0.. .... .... .... .... .... .... .... = Not Null-Register

Internet Protocol, Src: 172.16.1.1 (172.16.1.1), Dst: 239.1.1.1 (239.1.1.1)

Version: 4

Header length: 20 bytes

Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)

0000 00.. = Differentiated Services Codepoint: Default (0x00)

.... ..0. = ECN-Capable Transport (ECT): 0

.... ...0 = ECN-CE: 0

Total Length: 100

Identification: 0x0000 (0)

Flags: 0x00

0.. = Reserved bit: Not Set

.0. = Don't fragment: Not Set

..0 = More fragments: Not Set

Fragment offset: 0

Time to live: 254

Protocol: ICMP (0x01)

Header checksum: 0xa294 [correct]

[Good: True]

[Bad : False]

Source: 172.16.1.1 (172.16.1.1)

Destination: 239.1.1.1 (239.1.1.1)

Internet Control Message Protocol

Type: 8 (Echo (ping) request)

Code: 0 ()

Checksum: 0x9484 [correct]

Identifier: 0x0000

Sequence number: 0 (0x0000)

Data (72 bytes)

0000  00 00 00 00 00 71 e9 54 ab cd ab cd ab cd ab cd   .....q.T........

0010  ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd   ................

0020  ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd   ................

0030  ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd   ................

0040  ab cd ab cd ab cd ab cd                           ........

Data: 000000000071E954ABCDABCDABCDABCDABCDABCDABCDABCD...

[Length: 72]

Você pode usar esse filtro para capturar pacotes PIM na inband do Nexus:

ethanalyzer local interface inband capture-filter "ip proto 103" limit-captured-frames 0 write logflash: pim.pcap

Isso iniciará a captura de pacotes PIM indefinidamente até que cntrl+c seja pressionado. Os pacotes são exibidos na tela e também devem ser gravados no arquivo pim.pcap no logflash. Você também pode incluir o endereço IP para capturar pacotes de um vizinho PIM específico ("ip proto 103 and host <ip_address>").

Depurações relevantes

Estas são as duas depurações que são úteis para verificar o processo de registro no Nexus:

- debug ip pim data-register send

- debug ip pim data-register receive

Nexus-1

2012 Sep 20 12:25:52.537472 pim: [6405] (default-base) Received Register from 172.16.1.2 for (172.16.1.1/32, 239.1.1.1/32)

2012 Sep 20 12:25:52.537656 pim: [6405] (default-base) Create route for (172.16.1.1/32, 239.1.1.1/32)

2012 Sep 20 12:25:52.537716 pim: [6405] (default-base) Add route (172.16.1.1/32, 239.1.1.1/32) to MRIB, multi-route TRUE

2012 Sep 20 12:25:52.537745 pim: [6405] (default-base) RP 10.1.1.1 is an Anycast-RP

2012 Sep 20 12:25:52.537771 pim: [6405] (default-base) Forward Register to Anycast-RP member 192.168.2.2

2012 Sep 20 12:25:52.537825 pim: [6405] (default-base) Send Register-Stop to 172.16.1.2 for (172.16.1.1/32, 239.1.1.1/32)

2012 Sep 20 12:25:52.538591 pim: [6405] (default-base) Received Register-Stop from 10.1.1.1 for (172.16.1.1/32, 239.1.1.1/32)

Nexus-2

2012 Sep 20 12:26:36.367862 pim: [7189] (default-base) Received Register from 192.168.1.1 for (172.16.1.1/32, 239.1.1.1/32)

2012 Sep 20 12:26:36.368093 pim: [7189] (default-base) Create route for (172.16.1.1/32, 239.1.1.1/32)

2012 Sep 20 12:26:36.368175 pim: [7189] (default-base) Add route (172.16.1.1/32, 239.1.1.1/32) to MRIB, multi-route FALSE

2012 Sep 20 12:26:36.368223 pim: [7189] (default-base) RP 10.1.1.1 is an Anycast-RP

2012 Sep 20 12:26:36.368240 pim: [7189] (default-base) Register received from Anycast-RP member 192.168.1.1

Este RFC fornece mais informações sobre o processo de registro do PIM: http://tools.ietf.org/rfc/rfc4610.txt

Consulte também Configurando PIM e PIM6 para obter mais informações.

Informações Relacionadas

- Suporte Técnico e Documentação - Cisco Systems