In questo documento vengono descritti gli strumenti e le tecniche per la risoluzione dei problemi relativi alle reti multicast.
Questo documento richiede familiarità con IP multicast, Internet Group Management Protocol (IGMP), Protocol Independent Multicast (PIM) e Reverse Path Forwarding (RPF).
Il documento può essere consultato per tutte le versioni software o hardware.
Nota: La disponibilità dei comandi, la sintassi e l'output mostrati in questo documento variano a seconda della piattaforma e della versione software Cisco. Negli esempi vengono usati i risultati dei comandi Cisco IOS® e Cisco IOS XE®.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Quando si esegue la risoluzione dei problemi relativi alle reti multicast, è opportuno considerare il protocollo di segnalazione utilizzato nella rete e nel flusso dei pacchetti. Il protocollo di segnalazione viene utilizzato per configurare e interrompere sessioni multicast, ad esempio PIM dense mode, PIM sparse mode e DVMRP. Il flusso di pacchetti invia, replica e riceve i pacchetti multicast tra l'origine e il destinatario, in base alla tabella di inoltro creata dal processo di segnalazione.
In questa tabella vengono organizzati i controlli di segnalazione e flusso dei pacchetti per l'origine, la rete e i destinatari:
| Origine |
Rete |
Ricevitori |
|
| Trasmissione dei segnali |
N/D |
||
| Flusso dei pacchetti |
Nelle sezioni seguenti vengono descritti in dettaglio gli strumenti di risoluzione dei problemi che è possibile utilizzare per verificare e risolvere i problemi più comuni.
Completare questa procedura per determinare se i pacchetti sono stati inviati dall'origine e se sono stati inseriti i campi del pacchetto corretti:
1. Controllare i contatori di interfaccia sull'host. Controllare innanzitutto i contatori di interfaccia (se si utilizza un sistema UNIX, eseguire il comando netstat) sull'host di origine per verificare se invia i pacchetti. In caso contrario, verificare la presenza di errori di configurazione o di bug nello stack host e nell'applicazione.
2. Eseguire il comando show ip igmp groups <nome-interfaccia> per verificare che il router abbia ricevuto un report di appartenenza IGMP su quell'interfaccia.
3. Controllare il valore TTL dei pacchetti nell'applicazione multicast. Per attraversare un hop indirizzato deve essere necessario superare almeno due passaggi. Se l'applicazione invia pacchetti con un valore TTL di 1, il primo router upstream scarta i pacchetti quando scade il valore TTL. Per verificarlo, eseguire il comando show ip traffic e cercare un aumento del valore del contatore "bad hop count". Qualsiasi pacchetto il cui valore TTL è 1 o inferiore alla soglia TTL impostata dall'interfaccia con il comando ip multicast ttl-threshold viene scartato e il contatore "bad hop-count" viene aumentato di un'unità. Eseguire il comando show ip igmp interface <nome-interfaccia> per visualizzare il valore di soglia TTL dell'interfaccia.
4. Eseguire i comandi show ip route count e show ip route active per verificare se il primo router o switch a monte rileva pacchetti multicast provenienti dall'origine. L'output del comando mostra le statistiche del flusso del traffico per ciascuna coppia (S,G). Se non si osserva alcun traffico, continuare a controllare l'applicazione di origine, lo stack host, l'acquisizione dei pacchetti e l'interfaccia del router del primo hop.
5. Eseguire il comando debug ip mpacket sul router upstream più vicino, con un filtro multicast o ACL (Access-List) supportato e la parola chiave detail per ulteriori informazioni sul pacchetto e la granularità.
Nota: Eseguire questo comando con cautela in caso di traffico multicast intenso sulla rete. Eseguire il comando debug ip mpacket sul router solo se necessario. Eseguire l'argomento detail per visualizzare le intestazioni dei pacchetti nell'output di debug e gli elenchi degli accessi per controllare il traffico proveniente da origini specifiche. Tenere presente che questo comando può influire negativamente sulle prestazioni di altri tipi di traffico.
Si tratta dell'elemento più complesso e importante per la risoluzione dei problemi di qualsiasi rete. Dipende dal protocollo di segnalazione di rete utilizzato, ad esempio PIM modalità sparse, PIM modalità dense e DVMRP. Cisco consiglia l'approccio in più fasi descritto in questa sezione.
Completare la procedura seguente per risolvere i problemi relativi alla modalità sparse PIM:
1. Verificare che il routing multicast IP sia abilitato su tutti i router multicast.
2. Eseguire il comando show ip pim neighbors per verificare il timer e la modalità di scadenza per stabilire correttamente i vicini PIM e cercare eventuali problemi di connettività e del timer che possano impedire la definizione dei vicini PIM. Se necessario, eseguire i comandi di interfaccia ip pim versione {1} | 2} e ip pim {dense-mode | modalità sparsa | modalità sparse-dense} per configurare la versione e la modalità PIM richieste.
3. Eseguire il comando show ip pim rp mapping per verificare che il mapping del gruppo RP sia corretto e per controllare il timer di scadenza se è configurato l'RP automatica. Eseguire il comando debug ip pim auto-rp per identificare eventuali errori di Auto-RP. Se non si visualizzano mapping da gruppo a RP PIM, controllare la configurazione automatica di RP o configurare i mapping statici da gruppo a RP con il comando ip pim rp-address <indirizzo-rp> [<elenco-accessi>] [override]. Configurare un RP candidato con ip pim send-rp-cancel <interface> scope <ttl> group-list <access-list> e configurare l'agente di mapping con ip pim send-rp-discovery <interface> scope <ttl>. Questi comandi sono validi solo per Auto-RP: configurare send-rp-notice su un RP candidato e send-rp-discovery su un agente di mapping.
4. Eseguire il comando show ip rpf <indirizzo-origine> per verificare l'interfaccia RPF, la porta adiacente e la route dell'indirizzo di origine. PIM scarta i pacchetti multicast che arrivano su un'interfaccia non RPF. L'elaborazione aggiuntiva di asserzioni o eliminazioni dipende dalla modalità PIM e dal tipo di interfaccia. Il comando debug ip pim aiuta a identificare le possibili cause di un errore in una rete PIM. Confrontare l'output osservato con l'output tipico di questo documento. Eseguire questo output per identificare le tre fasi discrete in modalità sparse PIM: unione, registrazione e cambio SPT. Il comando show ip mroute consente di controllare le voci null negli elenchi dell'interfaccia in uscita e le voci eliminate nella tabella mroute.
Utilizzare questi comandi per controllare il flusso dei pacchetti multicast nella rete:
Eseguire il comando mtrace per verificare la traccia multicast hop-by-hop
Completare questi passaggi per controllare la segnalazione del ricevitore:
1. Eseguire il comando show ip igmp groups sul primo router upstream collegato al ricevitore per verificare che il router sia stato membro del gruppo appreso sull'interfaccia verso il ricevitore.
2. Eseguire il comando ping per verificare la raggiungibilità dell'host e del primo router upstream.
3. Eseguire il comando show ip igmp interface per controllare la versione IGMP dell'interfaccia.
4. Eseguire il comando debug ip igmp per risolvere ulteriormente i problemi di segnalazione del ricevitore.
Completare questa procedura per controllare il flusso del pacchetto del destinatario:
1. Eseguire il comando netstat su un sistema UNIX per controllare le statistiche dell'interfaccia del ricevitore.
2. Verificare che lo stack TCP/IP sia stato installato e configurato correttamente.
3. Verificare che l'applicazione client di ricezione multicast sia stata installata e configurata correttamente.
4. Usare un'acquisizione di pacchetto sull'interfaccia del destinatario per identificare i pacchetti multicast duplicati su un segmento ad accesso multiplo.
I comandi riportati in questa sezione possono essere utili anche per la risoluzione dei problemi, in particolare quando si esegue il test del flusso dei pacchetti di rete e si individuano i punti di errore nella rete multicast.
Questo comando visualizza il percorso multicast in formato grafico ASCII. Traccia il percorso tra due punti qualsiasi della rete, mostra le perdite e i duplicati, i TTL e i ritardi in ogni nodo della rete.
Questa opzione è utile quando è necessario individuare punti di congestione nella rete o concentrarsi su un router con conteggi di drop/duplicati elevati. Un valore di drop negativo indica che l'interfaccia a valle segnala più pacchetti rispetto all'interfaccia a monte, il che può indicare pacchetti duplicati o differenze di controcampionamento.
Router#mstat lwei-home-ss2 172.16.58.88 224.0.255.255 Type escape sequence to abort Mtrace from 172.16.143.27 to 172.16.58.88 via group 224.0.255.255 >From source (lwei-home-ss2.cisco.com) to destination (lwei-ss20.cisco.com) Waiting to accumulate statistics...... Results after 10 seconds: Source Response Dest Packet Statistics For Only For Traffic 172.16.143.27 172.16.62.144 All Multicast Traffic From 172.16.143.27
| __/ rtt 48 ms Lost/Sent = Pct Rate To 224.0.255.255 v / hop 48 ms --------------------- -------------------- 172.16.143.25 lwei-cisco-isdn.cisco.com | ^ ttl 1 v | hop 31 ms 0/12 = 0% 1 pps 0/1 = --% 0 pps 172.16.121.84 172.16.121.45 eng-frmt12-pri.cisco.com | ^ ttl 2 v | hop -17 ms -735/12 = --% 1 pps 0/1 = --% 0 pps 172.16.121.4 172.16.5.27 eng-cc-4.cisco.com | ^ ttl 3 v | hop -21 ms -678/23 = --% 2 pps 0/1 = --% 0 pps 172.16.5.21 172.16.62.130 eng-ios-2.cisco.com | ^ ttl 4 v | hop 5 ms 605/639 = 95% 63 pps 1/1 = --% 0 pps 172.16.62.144 172.16.58.65 eng-ios-f-5.cisco.com | \__ ttl 5 v \ hop 0 ms 4 0 pps 0 0 pps 172.16.58.88 172.16.62.144 Receiver Query Source
Con questo comando vengono visualizzate le informazioni sui router adiacenti multicast, le funzionalità e la versione del codice del router, le informazioni sull'interfaccia multicast, le soglie TTL, le metriche, il protocollo e lo stato. Ciò è utile quando è necessario verificare i router adiacenti multicast, verificare che esista un'adiacenza bidirezionale e verificare che i tunnel siano attivi in entrambe le direzioni.
Router#mrinfo 192.168.7.37 (b.cisco.com) [version cisco 11.1] [flags: PMSA]: 192.168.7.37 -> 192.168.7.34 (s.cisco.com) [1/0/pim] 192.168.7.37 -> 192.168.7.47 (d.cisco.com) [1/0/pim] 192.168.7.37 -> 192.168.7.44 (d2.cisco.com) [1/0/pim] 192.168.9.26 -> 192.168.9.29 (su.bbnplanet.net) [1/32/pim]
I flag nell'output indicano:
P = compatibile con prune
M = compatibile con Mtrace
S = compatibile con SNMP
A = compatibile con Auto-RP
Con questo comando viene visualizzato il percorso multicast tra l'origine e il destinatario e viene tracciato il percorso tra i punti della rete, che mostra le soglie TTL e il ritardo su ciascun nodo.
Quando si esegue la risoluzione dei problemi, eseguire il comando mtrace per individuare il punto in cui il flusso di traffico multicast si arresta, verificare il percorso del traffico multicast e identificare i percorsi non ottimali.
Router#mtrace 192.168.215.41 192.168.215.67 239.254.254.254 Type escape sequence to abort. Mtrace from 192.168.215.41 to 192.168.215.67 via group 239.254.254.254 From source (?) to destination (?) Querying full reverse path... 0 192.168.215.67 -1 192.168.215.67 PIM thresh^ 0 0 ms -2 192.168.215.74 PIM thresh^ 0 2 ms -3 192.168.215.57 PIM thresh^ 0 894 ms -4 192.168.215.41 PIM thresh^ 0 893 ms -5 192.168.215.12 PIM thresh^ 0 894 ms -6 192.168.215.98 PIM thresh^ 0 893 ms
Quando si esegue la risoluzione dei problemi, il comando ping è un modo semplice per generare traffico multicast nel lab e testare l'albero multicast, in quanto i membri del gruppo raggiungibili che elaborano le richieste echo ICMP multicast possono rispondere.
R3#ping 239.255.0.1 Type escape sequence to abort. Sending 1, 100-byte ICMP Echos to 239.255.0.1, timeout is 2 seconds: Reply to request 0 from 172.16.12.2, 16 ms Reply to request 0 from 172.16.7.2, 20 ms
I comandi in questa sezione consentono di raccogliere informazioni utili per la risoluzione di un problema relativo al multicast. Per ulteriori informazioni, consultare la guida alla configurazione del multicast IP in Cisco IOS XE 17.x.
Suggerimento: Se le risposte del comando show sono lente, il router può eseguire ricerche di indirizzi nel dominio IP nell'output del comando. È possibile disabilitare la ricerca del dominio IP eseguendo il comando no ip domain lookup in modalità di configurazione globale. In questo modo si interrompe la ricerca del dominio IP e si aumenta la velocità di output del comando show.
Questo comando mostra i gruppi multicast connessi direttamente al router e quelli appresi tramite il protocollo IGMP (Internet Group Management Protocol). È possibile utilizzare questo comando per verificare che un ricevitore o un'interfaccia del router unita localmente si sia unita al gruppo target sull'interfaccia del router. La colonna Last Reporter mostra un solo host IGMP, che indica che ha inviato un join IGMP o un report IGMP non richiesto in risposta a una query IGMP dal router PIM per quel particolare gruppo. È possibile visualizzare un Last Reporter per ogni gruppo e voce di interfaccia.
R1#show ip igmp groups IGMP Connected Group Membership Group Address Interface Uptime Expires Last Reporter 239.255.0.1 Ethernet1 00:10:54 00:01:10 192.168.9.1 224.0.1.40 Ethernet0 01:36:27 00:02:45 192.168.10.2 224.0.1.40 Ethernet1 01:48:15 never 192.168.9.3
Eseguire questo comando per visualizzare le informazioni relative al multicast su un'interfaccia e per verificare che IGMP sia abilitato, che la versione in esecuzione sia corretta, che i timer, il valore di soglia TTL (Time To Live) e il router query IGMP siano impostati correttamente. Non è necessario configurare IGMP su un'interfaccia. Per impostazione predefinita, è attivata quando si configura ip pim {dense-mode|sparse-mode|sparse-dense-mode}.
R1#show ip igmp interface
Ethernet1 is up, line protocol is up
Internet address is 192.168.9.3/24
IGMP is enabled on interface
Current IGMP version is 2
CGMP is disabled on interface
IGMP query interval is 60 seconds
IGMP querier timeout is 120 seconds
IGMP max query response time is 10 seconds
Last member query response interval is 1000 ms
Inbound IGMP access group is not set
IGMP activity: 22 joins, 18 leaves
Multicast routing is enabled on interface
Multicast TTL threshold is 0
Multicast designated router (DR) is 192.168.9.5
IGMP querying router is 192.168.9.3 (this system)
Multicast groups joined (number of users):
224.0.1.40(1)
Eseguire questo comando per elencare i router adiacenti PIM (Protocol Independent Multicast) rilevati dal software Cisco IOS.
R1#show ip pim neighbor PIM Neighbor Table Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode 10.10.10.1 Ethernet0/0 02:19:41/00:01:38 v2 1 / DR B S
I dettagli relativi a ciascun campo sono illustrati di seguito:
Indirizzo adiacente: specifica un indirizzo IP adiacente PIM.
Interfaccia: un'interfaccia in cui è stato individuato un router adiacente PIM.
Tempo di attività: il tempo di attività totale di un router adiacente.
Scade: il tempo prima del timeout di un vicino e fino al successivo saluto PIM.
Ver: versione di PIM sull'interfaccia del router adiacente.
DR Prio: i valori possibili sono 0-4294967294 o N.
Questa è una nuova colonna che tiene traccia della priorità di un'interfaccia PIM per la scelta del ripristino di emergenza. La funzione per configurare un DR in base alla priorità più alta rispetto all'indirizzo IP più alto è stata introdotta nei software Cisco IOS® versioni 12.1(2)T e 12.2 e nelle immagini Cisco IOS® con Bidir-PIM. È possibile eseguire il comando ip pim dr-priority <0-4294967294> interface per impostare la priorità del ripristino di emergenza. La priorità di ripristino di emergenza predefinita è impostata su 1.
Per garantire l'interoperabilità, se un router adiacente PIM esegue una versione precedente di Cisco IOS® che non supporta la funzione di priorità DR, la colonna "DR Prior" visualizza N. Se un router della rete ad accesso multiplo non annuncia l'opzione DR Priority, la scelta di DR utilizza l'indirizzo IP primario più alto tra tutti i router PIM della rete.
Modalità: informazioni sulle funzionalità di DR e altre funzionalità PIM.
In questa colonna vengono elencati il DR oltre alle funzionalità supportate dal sistema adiacente PIM:
DR: il PIM adiacente è un router designato
B - Compatibilità con PIM bidirezionale (Bidir-PIM)
S - Possibilità di aggiornamento dello stato (applicabile solo in modalità densa)
Quando si esegue la risoluzione dei problemi, utilizzare questo comando per verificare che tutti i router adiacenti siano attivi e che utilizzino la modalità, la versione e il timer di scadenza appropriati. È inoltre possibile controllare la configurazione del router o utilizzare il comando show ip pim interface per verificare la modalità (modalità PIM sparsa o densa). Utilizzare il comando debug ip pim per osservare lo scambio di messaggi tramite query pim.
Eseguire questo comando per visualizzare informazioni sulle interfacce configurate per PIM. Inoltre, è possibile eseguire questo comando per verificare che sull'interfaccia sia configurata la modalità PIM corretta (densa o sparsa), che il numero di router adiacenti sia corretto e che il router designato (DR) sia corretto (condizione critica per la modalità sparsa PIM). I segmenti ad accesso multiplo (ad esempio Ethernet, Token Ring e FDDI) selezionano un DR in base alla massima priorità di DR annunciata, con l'indirizzo IP primario più alto utilizzato come tie-breaker. Se un router non annuncia la priorità DR, la scelta utilizza l'indirizzo IP primario più alto. I collegamenti point-to-point non visualizzano le informazioni di DR.
R1#show ip pim interface
Address Interface Version/Mode Nbr Query DR
Count Intvl
192.168.10.1 Ethernet0 v2/Sparse-Dense 1 30 192.168.10.2
192.168.9.3 Ethernet1 v2/Sparse-Dense 1 30 192.168.9.5
Eseguire questo comando per visualizzare un riepilogo del contenuto della tabella di routing multicast IP. È inoltre possibile utilizzare questa funzionalità per verificare i gruppi multicast attivi e i mittenti multicast attivi quando si esaminano i timer e i flag.
R1#show ip mroute summary
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
M - MSDP created entry, X - Proxy Join Timer Running
A - Advertised via MSDP
Outgoing interface flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(*, 239.255.0.1), 01:57:07/00:02:59, RP 192.168.7.2, flags: SJCF
(192.168.33.32, 239.255.0.1), 01:56:23/00:02:59, flags: CJT
(192.168.9.1, 239.255.0.1), 01:57:07/00:03:27, flags: CFT
(*, 224.0.1.40), 1d00h/00:00:00, RP 192.168.7.2, flags: SJPCL
Eseguire questo comando per visualizzare il contenuto completo della tabella di routing multicast IP. Quando si esegue la risoluzione dei problemi, eseguire questo comando per verificare:
Voci di stato (S,G) e (*,G) dai flag.
L'interfaccia in ingresso è corretta. In caso contrario, controllare la tabella di routing unicast.
Le interfacce in uscita sono corrette. In caso di eliminazione non corretta, controllare lo stato nel router a valle.
R1#show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
M - MSDP created entry, X - Proxy Join Timer Running
A - Advertised via MSDP
Outgoing interface flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode
(*, 239.255.0.1), 01:55:27/00:02:59, RP 192.168.7.2, flags: SJCF
Incoming interface: Ethernet0, RPF nbr 192.168.10.2
Outgoing interface list:
Ethernet1, Forward/Sparse, 01:55:27/00:02:52
(192.168.33.32 , 239.255.0.1), 01:54:43/00:02:59, flags: CJT
Incoming interface: Ethernet0, RPF nbr 192.168.10.2
Outgoing interface list:
Ethernet1, Forward/Sparse, 01:54:43/00:02:52
(192.168.9.1, 239.255.0.1), 01:55:30/00:03:26, flags: CFT
Incoming interface: Ethernet1, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0, Forward/Sparse, 01:55:30/00:03:12
(*, 224.0.1.40), 1d00h/00:00:00, RP 192.168.7.2, flags: SJPCL
Incoming interface: Ethernet0, RPF nbr 192.168.10.2
Outgoing interface list: Null
Eseguire questo comando per visualizzare le origini e i gruppi di traffico attivi oltre la soglia. Quando si esegue la risoluzione dei problemi, utilizzarla per verificare coppie di gruppi di origine attive, la velocità del traffico per ogni voce (S,G) che supera la soglia configurata e se il traffico multicast del gruppo di destinazione viene ricevuto. Se il traffico non viene ricevuto, cercare il traffico attivo che inizia dalla sorgente verso il destinatario.
R1#show ip mroute active Active IP Multicast Sources - sending >= 4 kbps Group: 239.255.0.1, (?) Source: 192.168.33.32 (?) Rate: 10 pps/115 kbps(1sec), 235 kbps(last 23 secs), 87 kbps(life avg)
Eseguire questo comando per visualizzare il modo in cui il routing multicast IP esegue il reverse path Forwarding (RPF). Quando si esegue la risoluzione dei problemi, utilizzarla per verificare che le informazioni RPF siano corrette. In caso contrario, verificare l'indirizzo di origine nella tabella di routing unicast. Eseguire inoltre i comandi ping e trace sull'indirizzo di origine per verificare il funzionamento del routing unicast. È possibile utilizzare route DVMRP (Distance Vector Multicast Routing Protocol) o route statiche per correggere eventuali incoerenze unicast-multicast.
R1#show ip rpf 192.168.33.32 RPF information for ? (192.168.33.32) RPF interface: Ethernet0 RPF neighbor: ? (192.168.10.2) RPF route/mask: 192.168.33.0/16 RPF type: unicast (eigrp 1) RPF recursion count: 0 Doing distance-preferred lookups across tables
Nelle versioni Cisco IOS® che supportano la cache a commutazione rapida multicast, questo comando visualizza le voci della cache e aiuta a isolare i problemi di commutazione rapida. Sulle piattaforme Cisco IOS XE® più recenti, eseguire il comando show ip mfib per visualizzare le informazioni sull'inoltro multicast.
R1#show ip mcache IP Multicast Fast-Switching Cache (192.168.33.32/32, 239.255.0.1), Ethernet0, Last used: 00:00:00 Ethernet1 MAC Header: 01005E7F000100000C13DBA90800 (192.168.9.1/32, 239.255.0.1), Ethernet1, Last used: 00:00:00 Ethernet0 MAC Header: 01005E7F000100000C13DBA80800
Eseguire questo comando per verificare che il traffico multicast sia stato ricevuto e per controllare le relative velocità di flusso e cadute. Se non viene ricevuto traffico, lavorare dalla sorgente al destinatario fino a individuare il punto in cui il traffico si arresta. È inoltre possibile eseguire questo comando per verificare che il traffico venga inoltrato. In caso contrario, eseguire il comando show ip mroute per cercare "Null Outgoing interface list" e individuare gli errori RPF.
R1#show ip mroute count
IP Multicast Statistics
routes using 2406 bytes of memory
2 groups, 1.00 average sources per group
Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second
Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc)
Group: 239.255.0.1, Source count: 2, Group pkt count: 11709
RP-tree: Forwarding: 3/0/431/0, Other: 3/0/0
Source: 192.168.33.32/32, Forwarding: 11225/6/1401/62, Other: 11225/0/0
Source: 192.168.9.1/32, Forwarding: 481/0/85/0, Other: 490/0/9
Group: 224.0.1.40, Source count: 0, Group pkt count:
Eseguire questo comando per controllare la tabella di routing unicast e correggere gli errori RPF nella tabella di routing mroute.
R2#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is not set
D 192.168.9.0/24 [90/307200] via 192.168.10.1, 00:59:45, Ethernet0
C 192.168.10.0/24 is directly connected, Ethernet0
D 192.168.4.0/24 [90/11040000] via 192.168.7.1, 23:21:00, Serial0
D 192.168.5.0/24 [90/11023872] via 192.168.7.1, 23:21:02, Serial0
C 192.168.7.0/24 is directly connected, Serial0
D 192.168.33.0/16 [90/2195456] via 192.168.7.1, 1d23h, Serial0
D 192.168.1.0/24 [90/11552000] via 192.168.7.1, 22:41:27, Serial0
Eseguire questo comando per controllare l'assegnazione RP in base all'intervallo di gruppi multicast e per verificare che l'origine dell'apprendimento RP (statico o automatico) e della mappatura sia corretta. Se viene rilevato un errore, controllare la configurazione del router locale o la configurazione di RP automatica.
R1#show ip pim rp mapping
PIM Group-to-RP Mappings
Group(s) 224.0.1.40/32
RP 192.168.7.2 (?), v1
Info source: local, via Auto-RP
Uptime: 2d00h, expires: never
Group(s): 224.0.0.0/4, Static
RP: 192.168.7.2 (?)
In questa sezione viene illustrato l'aspetto di determinati output del comando debug in una rete funzionante. Quando si esegue la risoluzione dei problemi, è possibile distinguere tra l'output del comando debug corretto e il punto di contatto con il problema nella rete. Per informazioni più dettagliate su questi comandi di debug, consultare la guida di riferimento dei comandi di debug di Cisco IOS.
Eseguire il comando debug ip igmp per visualizzare i pacchetti IGMP ricevuti e trasmessi e gli eventi correlati all'host IGMP. La forma no di questo comando disabilita l'output di debug.
Questo output consente di determinare se i processi IGMP funzionano. In generale, se il protocollo IGMP non funziona, il router non viene a conoscenza dell'appartenenza al gruppo di ricevitori sull'interfaccia connessa. In modalità PIM dense, l'allagamento iniziale può inviare il traffico sul segmento fino a quando l'eliminazione non lo rimuove. Nella modalità sparse del PIM, il router non aggiunge l'interfaccia con il ricevitore all'elenco delle interfacce in uscita senza appartenere al ricevitore o senza un altro requisito di inoltro locale.
R1#debug ip igmp 12:32:51.065: IGMP: Send v2 Query on Ethernet1 to 224.0.0.1 12:32:51.069: IGMP: Set report delay time to 9.4 seconds for 224.0.1.40 on Ethernet1 12:32:56.909: IGMP: Received v1 Report from 192.168.9.1 (Ethernet1) for 239.255.0.1 12:32:56.917: IGMP: Starting old host present timer for 239.255.0.1 on Ethernet1 12:33:01.065: IGMP: Send v2 Report for 224.0.1.40 on Ethernet1 12:33:01.069: IGMP: Received v2 Report from 192.168.9.4 (Ethernet1) for 224.0.1.40 12:33:51.065: IGMP: Send v2 Query on Ethernet1 to 224.0.0.1
L'output precedente mostra che il router invia un'interrogazione IGMP versione 2 all'interfaccia Ethernet 1 all'indirizzo multicast 24.0.0.1 (tutti i sistemi multicast su questa subnet). L'interfaccia Ethernet 1 è un membro del gruppo 24.0.1.40 (per verificare questa condizione, è possibile eseguire il comando show ip igmp interface), che imposta un ritardo del report di 9,4 secondi (determinato casualmente). Poiché non riceve alcun report da un altro sistema per il gruppo multicast 24.0.1.40 per i prossimi 9.4 secondi, invia un report versione 2 della sua appartenenza, che viene ricevuto dal router stesso su Ethernet 1. Riceve anche il report IGMP versione 1 dall'host 192.168.9.1, che è direttamente connesso all'interfaccia Ethernet 1 per il gruppo 239.255.0.1.
Questo output di debug è utile quando si verifica che l'interfaccia del router invii delle query e si determina l'intervallo di query (nel caso precedente, 60 secondi). È inoltre possibile utilizzare il comando per determinare la versione di IGMP utilizzata dai client.
Eseguire il comando debug ip mpacket per visualizzare tutti i pacchetti multicast IP ricevuti e trasmessi. La forma no di questo comando disabilita l'output di debug.
R1#debug ip mpacket 239.255.0.1 detail 13:09:55.973: IP: MAC sa=0000.0c70.d41e (Ethernet0), IP last-hop=192.168.10.2 13:09:55.977: IP: IP tos=0x0, len=892, id=0xD3C1, ttl=12, prot=17 13:09:55.981: IP: s=192.168.33.32 (Ethernet0) d=239.255.0.1 (Ethernet1) len 906, mforward
Questo comando decodifica il pacchetto multicast e visualizza se il pacchetto viene inoltrato (mforward) o scartato. Questo comando è utile quando si eseguono il debug dei problemi di flusso dei pacchetti nella rete per verificare il valore TTL e il motivo per cui un pacchetto è stato scartato.
Attenzione: Prestare attenzione quando si attiva l'output del debug a livello di pacchetto, in particolare quando il pacchetto multicast dei servizi router viene caricato.
Questo comando è utile per la manutenzione delle tabelle di routing. Utilizzarlo per verificare che il router (S,G) sia installato nella tabella di routing multicast IP o, in caso contrario, per quale motivo. Le informazioni chiave in questo output sono l'interfaccia RPF. In caso di errore del controllo RPF, l'installazione del mroute (S,G) nella tabella di mrouting non riesce.
R1#debug ip mrouting 239.255.0.1 13:17:27.821: MRT: Create (*, 239.255.0.1), RPF Null, PC 0x34F16CE 13:17:27.825: MRT: Create (192.168.33.32/32, 239.255.0.1), RPF Ethernet0/192.168.10.2, PC 0x34F181A 13:17:30.481: MRT: Create (192.168.9.1/32, 239.255.0.1), RPF Ethernet1/0.0.0.0, PC 0x34F18
Eseguire il comando debug ip pim per visualizzare i pacchetti PIM ricevuti e trasmessi e gli eventi correlati a PIM. La forma no di questo comando disabilita l'output di debug. In questa sezione viene illustrato un esempio per comprendere l'output del comando debug della modalità sparse PIM e mostrare un output di debug tipico.
Questo è l'output del comando debug ip pim su R1:
R1#debug ip pim PIM: Send v2 Hello on Ethernet0 PIM: Send v2 Hello on Ethernet1 PIM: Received v2 Hello on Ethernet0 from 192.168.10.2 PIM: Send v2 Hello on Ethernet0 PIM: Send v2 Hello on Ethernet1 PIM: Building Join/Prune message for 239.255.0.1 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0) PIM: Received RP-Reachable on Ethernet0 from 192.168.7.2 for group 239.255.0.1 PIM: Update RP expiration timer (270 sec) for 239.255.0.1
A questo punto, esaminare l'output del comando debug tra R1 e R2 quando un ricevitore multicast per il gruppo 239.255.0.1 si unisce a R1. In primo luogo, esaminare l'output su R1:
1 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry 2 PIM: Send v2 Join on Ethernet0 to 192.168.10.2 for (192.168.7.2/32, 239.255.0.1), WC-bit, RPT-bit, S-bit 3 PIM: Building batch join message for 239.255.0.1 4 PIM: Building Join/Prune message for 239.255.0.1 5 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit 6 PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0) 7 PIM: Received RP-Reachable on Ethernet0 from 192.168.7.2 : for group 239.255.0.1 8 PIM: Update RP expiration timer (270 sec) for 239.255.0.1 9 PIM: Building Join/Prune message for 239.255.0.1 10 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit 11 PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0)
Osservare ora l'output in R2:
12 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us 13 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2 14 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry, RPT-bit set, WC-bit set, S-bit set 15 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state 16 PIM: Building Join/Prune message for 239.255.0.1 17 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us 18 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set 19 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state 20 PIM: Building Join/Prune message for 239.255.0.1 21 PIM: Send RP-reachability for 239.255.0.1 on Ethernet0 22 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us 23 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set 24 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state 25 PIM: Building Join/Prune message for 239.255.0.1
Nella riga 1 precedente, il ricevitore multicast per il gruppo 239.255.0.1 si unisce a R1. In questo modo viene installata una voce (*, 239.255.0.1) nella tabella di route. Quindi, nella riga 2, il ricevitore multicast invia un join IGMP a R2 (RP) per unirsi alla struttura condivisa.
Quando PIM Join/Prune arriva su R2, R2 installa una route (*, 239.255.0.1), come mostrato nelle righe da 12 a 15 dell'output R2.
Una volta installato (*, 239.255.0.1) nella tabella di routing, R2 aggiunge l'interfaccia dalla quale ha ricevuto il messaggio Join/Prune all'elenco di interfacce in uscita (OIL) nello stato forward. Invia quindi un messaggio di RP-reachability sull'interfaccia che ha ricevuto il messaggio Join/Prune. Questa operazione è indicata alle righe da 15 a 21 della produzione R2. R1 riceve il messaggio RP-reachable per il gruppo 239.255.0.1 e aggiorna il proprio timer di scadenza per RP. Per impostazione predefinita, questo scambio si ripete una volta al minuto e aggiorna lo stato di inoltro multicast, come mostrato nelle righe 7 e 8 dell'output R1.
Nelle righe successive, viene visualizzato l'output del comando debug tra R2 (RP) e R3. L'origine (collegata direttamente a R3) ha iniziato a inviare i pacchetti al gruppo 239.255.0.1.
Osservate innanzitutto l'output in R3:
1 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry 2 PIM: Building Join/Prune message for 239.255.0.1 3 PIM: For RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit 4 PIM: Send periodic Join/Prune to RP via 192.168.7.2 (Serial4/0) 5 PIM: Received RP-Reachable on Serial4/0 from 192.168.7.2 6 PIM: Update RP expiration timer (270 sec) for 239.255.0.1 7 PIM: Send Register to 192.168.7.2 for 192.168.33.32, group 239.255.0.1 8 PIM: Send Register to 192.168.7.2 for 192.168.33.32, group 239.255.0.1 9 PIM: Received Join/Prune on Serial4/0 from 192.168.7.2 10 PIM: Join-list: (192.168.33.32/32, 239.255.0.1), S-bit set 11 PIM: Add Serial4/0/192.168.7.2 to (192.168.33.32/32, 239.255.0.1), Forward state 12 PIM: Received Register-Stop on Serial4/0 from 192.168.7.2 13 PIM: Clear register flag to 192.168.7.2 for (192.168.33.32/32, 239.255.0.1) 14 PIM: Received Register-Stop on Serial4/0 from 192.168.7.2 15 PIM: Clear register flag to 192.168.7.2 for (192.168.33.32/32, 239.255.0.1)
Questo è l'output di R2, l'RP:
16 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 17 PIM: Send RP-reachability for 239.255.0.1 on Serial0 18 PIM: Received Register on Serial0 from 192.168.7.1 for 192.168.33.32, group 239.255.0.1 19 PIM: Forward decapsulated data packet for 239.255.0.1 on Ethernet0 20 PIM: Forward decapsulated data packet for 239.255.0.1 on Serial0 21 PIM: Send Join on Serial0 to 192.168.7.1 for (192.168.33.32/32, 239.255.0.1), S-bit 22 PIM: Send Join on Serial0 to 192.168.7.1 for (192.168.33.32/32, 239.255.0.1), S-bit 23 PIM: Send Register-Stop to 192.168.7.1 for 192.168.33.32, group 239.255.0.1 24 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 25 PIM: Prune-list: (192.168.33.32/32, 239.255.0.1) 26 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us 27 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set 28 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state 29 PIM: Add Ethernet0/192.168.10.1 to (192.168.33.32/32, 239.255.0.1) 30 PIM: Join-list: (192.168.33.32/32, 239.255.0.1), S-bit set 31 PIM: Add Ethernet0/192.168.10.1 to (192.168.33.32/32, 239.255.0.1), Forward state 32 PIM: Building Join/Prune message for 239.255.0.1 33 PIM: For 192.168.7.1, Join-list: 192.168.33.32/32 34 PIM: For 192.168.10.1, Join-list: 192.168.9.1/32 35 PIM: Send v2 periodic Join/Prune to 192.168.10.1 (Ethernet0) 36 PIM: Send periodic Join/Prune to 192.168.7.1 (Serial0) 37 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 38 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RP-bit set, WC-bit set, S-bit set 39 PIM: Add Serial0/192.168.7.1 to (*, 239.255.0.1), Forward state 40 PIM: Add Serial0/192.168.7.1 to (192.168.33.32/32, 239.255.0.1) 41 PIM: Add Serial0/192.168.7.1 to (192.168.9.1/32, 239.255.0.1) 42 PIM: Join-list: (192.168.9.1/32, 239.255.0.1), S-bit set 43 PIM: Add Serial0/192.168.7.1 to (192.168.9.1/32, 239.255.0.1), Forward state 44 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RP-bit set, WC-bit set, S-bit set 45 PIM: Add Serial0/192.168.7.1 to (*, 239.255.0.1), Forward state
| Revisione | Data di pubblicazione | Commenti |
|---|---|---|
3.0 |
23-Sep-2026
|
Controllo ortografico e grammaticale aggiornato, inserimento di righe orizzontali per separare le sezioni ai fini della leggibilità, avvisi CCW fissi. |
2.0 |
28-Nov-2023
|
Certificazione |
1.0 |
10-Dec-2001
|
Versione iniziale |