Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Terminologia

Premesse

Informazioni sui record di pacchetti mDNS

Gateway mDNS basato su flood e basato su Unicast

Tipi di configurazioni gateway mDNS basate su unicast

Installazione del gateway mDNS di Routed Access

Installazione del gateway mDNS multilivello

Test individuazione servizio mDNS

Installa lo strumento di test DNS-SD

Annuncia un servizio con DNS-SD

Richiesta di un servizio con DNS-SD

Configurazione

Esempio di configurazione per reti di accesso routing

Topologia

Configurazione sull'agente SDG

Esempio di configurazione per reti multilivello

Topologia

Configurazione sull'agente SDG

Configurazione nei peer del servizio

Risoluzione dei problemi

Reti di accesso routing

Reti multilivello

Convalida dell'annuncio mDNS sul peer del servizio e sull'agente SDG

Convalida la query mDNS nel peer del servizio e nell'agente SDG

Comandi utilizzati per la risoluzione dei problemi

Informazioni correlate

Introduzione

Questo documento descrive come configurare e risolvere i problemi relativi alla Local Area Bonjour con l'approccio basato su unicast.

Prerequisiti

Requisiti

Nessun requisito specifico previsto per questo documento.

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Catalyst 9200

- Catalyst 9300

- Catalyst 9400

- Catalyst 9500

- Catalyst 9600

- Cisco IOS® XE 17.6.2 e versioni successive

Nota: per i comandi che vengono usati per abilitare queste funzionalità su altre piattaforme Cisco, consultare la guida alla configurazione appropriata.

Nota: per eseguire Local Area Bonjour, è necessario acquistare la licenza Cisco DNA Advantage. Verificare che la piattaforma Cisco Catalyst sia supportata in modalità agente Service Discovery Gateway (SDG) o Service Peer (SP) dalla matrice di supporto, disponibile nella guida alla configurazione della versione specifica di 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.

Terminologia

- Tipo di servizio: gli endpoint annunciano uno o più servizi nella rete. Esempi di tipi di servizio sono: Apple TV, Airplay, IP e così via.

- Istanza del servizio: ogni endpoint è considerato un'istanza nella rete. Ogni istanza ha la propria identificazione (nome) nella rete.

Premesse

A partire dalla versione 17.3.2 di Cisco IOS XE Amsterdam, è stato introdotto un nuovo approccio di mDNS Service Gateway per sostituire la tradizionale implementazione basata su flood. Questo nuovo approccio fornisce un modello Unicast con i seguenti miglioramenti:

- Snooping mDNS per eliminare il flooding di pacchetti mDNS.

- Un database di query (query-db), che tiene traccia degli host per i quali è stata eseguita una query per un servizio specifico.

- Risposta mDNS unicast, l'agente SDG invia risposte mDNS unicast solo agli host contenuti nel database di query per ogni servizio specifico.

Informazioni sui record di pacchetti mDNS

Una query mDNS ha il record successivo:

- PTR: i dati nel record PTR sono il tipo di servizio su cui viene eseguita la query. Prevede di ottenere un nome di nodo che offra il tipo di servizio. Ad esempio: _airplay._tcp.local

Una risposta o un annuncio mDNS ha i record seguenti:

- PTR (puntatore): i dati in ogni record PTR sono il nome del nodo che rappresenta l'istanza del servizio. Ad esempio: myPC._airplay._tcp.local

- SRV (servizio): i dati del record SRV identificano l'host su cui è in esecuzione l'istanza del servizio e la porta su cui è in ascolto. Ad esempio: istanza di servizio myPC._airplay._tcp.local è in esecuzione sull'host LAPTOP-1 sulla porta 3000.

- TXT (testo): una o più coppie chiave-valore (chiave=valore). Le coppie chiave-valore forniscono ulteriori informazioni sul servizio. Questo è facoltativo.

- A (indirizzo IPv4): il record A viene utilizzato per risolvere un nome host in un indirizzo IPv4. Ad esempio: HostLAPTOP-1 ha un indirizzo IP 10.24.81.11.

- AAAA (indirizzo IPv6): il record A viene utilizzato per risolvere un nome host in un indirizzo IPv6 (globale e locale al collegamento). Ad esempio: HostLAPTOP-1 ha un indirizzo IPv6 2001:0db8:1234::1.

Gateway mDNS basato su flood e basato su Unicast

La differenza principale consiste nel modo in cui il gateway mDNS (switch Cat9k) instrada l'annuncio mDNS verso i query:

- Con l'approccio basato sull'inondazione, l'annuncio viene inviato all'indirizzo IP di destinazione 224.0.0.251 e al corrispondente indirizzo MAC multicast 0100.5e00.00fb.

- Nell'approccio basato su unicast, l'annuncio viene inviato all'indirizzo IP di destinazione 224.0.0.251, ma l'indirizzo MAC di destinazione è quello del dispositivo che ha richiesto il servizio.

Inoltre, nell'implementazione basata sul multicast, i pacchetti mDNS ricevuti vengono trasmessi ad altre porte che consentono la VLAN su cui sono stati ricevuti.

Nell'approccio basato su unicast, lo snooping mDNS fornisce un meccanismo di prevenzione delle inondazioni che è abilitato per ogni VLAN configurata con mdns-sd gateway in configurazione VLAN. In questo modo, i pacchetti mDNS verranno inviati in modalità unicast:

- Per le query, solo ai dispositivi che eseguono query specifiche per il servizio (in query-db)

- Per gli annunci, solo agli agenti SDG a monte o all'applicazione Cisco WAB (Wide Area Bonjour).

Durante la risoluzione dei problemi di un gateway mDNS, per verificare se lo switch esegue la modalità basata su flood o unicast, è possibile verificare dove è configurato il gateway mdns-sd.

- Se è configurato nella SVI, viene utilizzato un approccio basato sull'inondazione e lo snooping mDNS non è abilitato.

- Se la configurazione è basata sulla VLAN, viene usato l'approccio basato su unicast e lo snooping mDNS è abilitato.

Tipi di configurazioni gateway mDNS basate su unicast

Sono disponibili due tipi di configurazione per fornire un gateway di individuazione servizio senza flood. La scelta da utilizzare dipende principalmente dalla posizione del limite del livello 3:

- Se il limite L3 si trova al livello di accesso, viene utilizzata l'impostazione Routed-access.

- Se il limite L3 si trova sul livello di distribuzione, è preferibile impostare Multilayer.

Installazione del gateway mDNS di Routed Access

- Lo switch di accesso funge da agente SDG.

- L'agente SDG esegue il routing dei servizi tra gli endpoint sulla stessa VLAN e tra VLAN diverse.

Installazione del gateway mDNS multilivello

- Lo switch di distribuzione (limite L3) funge da agente SDG.

- Gli switch di accesso di layer 2 sono noti come Service Peer.

- Il peer del servizio esegue il routing tra gli endpoint sulla stessa VLAN.

- L'agente SDG esegue il routing dei servizi tra endpoint connessi in peer di servizio diversi.

- L'agente SDG esegue il routing del servizio tra endpoint in eventi VLAN diverse se entrambi gli endpoint sono connessi allo stesso peer del servizio.

- L'agente SDG comunica con i peer del servizio tramite una sessione UDP unicast. Non vengono scambiati messaggi pubblicitari/query mDNS. Piuttosto, comunicano usando i pacchetti BCP (Bonjour Control Protocol). Questo protocollo utilizza UDP sulla porta 1091.

- In questo modo, quando un peer del servizio riceve una query o un annuncio mDNS da un endpoint, non la inoltra immediatamente all'agente SDG. Al contrario, attende che un timer specifico esporti le query/gli annunci mDNS all'agente SDG in modo bulk:

- Per le query, il timer predefinito è 15 secondi. Per modificare questa impostazione, usare il comando service-query-timer periodicity <secondi>.

- Per gli annunci, il timer predefinito è 30 secondi. Per modificare questa impostazione, usare il comando service-communication-timer periodicity<secondi>.

- Quando l'agente SDG riceve una query da un peer del servizio (contenuto in un pacchetto BCP), la elabora e, se il servizio richiesto si trova nella cache mDNS, risponde al peer del servizio con un pacchetto BCP che contiene l'annuncio corrispondente.

- Poiché lo scambio di pacchetti mDNS tra i peer del servizio e l'agente SDG non è necessario grazie a BCP, il comando mdns-sd trust viene utilizzato nei collegamenti trunk tra switch per fare in modo che le porte perdano sia i pacchetti mDNS in entrata che in uscita.

Test individuazione servizio mDNS

Una delle difficoltà nel testare le configurazioni dei gateway mDNS in laboratorio è scoprire come ottenere:

- un endpoint che annuncia il servizio sotto test (risponditore mDNS).

- un altro endpoint che richiede il servizio specificato (query mDNS).

Questi 2 ruoli possono essere eseguiti utilizzando il comando DNS-SD. Il comando DNS-SD è uno strumento di diagnostica di rete che consente a un dispositivo di verificare l'individuazione del servizio mDNS. La funzione più importante è che può pubblicizzare l'esistenza di un servizio e anche scoprirlo.

Installa lo strumento di test DNS-SD

- macOS supporta lo strumento di test DNS-SD in modo nativo, per utilizzarlo è sufficiente andare sul terminale e digitare dns-sd per ottenere informazioni sul comando.

- D'altra parte, Windows non supporta questo strumento di test nativo, è necessario per installare Apple Bonjour SDK, una volta che questo è installato il dns-sd potrebbe essere disponibile nel prompt dei comandi.

- La sintassi del comando DNS-SD è la stessa per macOS e Windows.

Annuncia un servizio con DNS-SD

Per annunciare un servizio mDNS, utilizzare il comando seguente:

dns-sd -R name _app._protocol local port

Dove:

- name è il nome dell'istanza del servizio (entità che implementa un servizio di un determinato tipo).

- l'app è l'applicazione (tipo di servizio), ad esempio airplay, ipp, http e così via.

- sia TCP che UDP.

- local fa riferimento al dominio locale.

- porta è la porta in cui l'istanza del servizio è in ascolto del servizio.

Esempio: nome del nodo testpc annuncio servizio Airplay sulla porta TCP 3000.

dns-sd -R testpc _airplay._tcp local 3000

Richiesta di un servizio con DNS-SD

Per eseguire una query per un servizio mDNS, utilizzare il comando seguente:

dns-sd -B _app._protocol local

Dove:

- l'app è l'applicazione (tipo di servizio), ad esempio airplay, ipp, http e così via.

- sia TCP che UDP.

- local fa riferimento al dominio locale.

Esempio: query per il servizio Airplay.

dns-sd -B _airplay._tcp local

Configurazione

Esempio di configurazione per reti di accesso routing

Topologia

Configurazione sull'agente SDG

1. Abilitare il gateway mDNS a livello globale.

Nota: a partire da Cisco IOS XE 17.9.1, è possibile configurare la modalità in cui l'agente SDG gestisce le query e le risposte. La modalità predefinita è ricorrente. In questa modalità, dopo la ricezione di una query dagli endpoint, per impostazione predefinita viene inviata una risposta a intervalli regolari di 15 secondi. L'altra modalità è su richiesta; in questa modalità, la risposta viene inviata solo quando si riceve una query dagli endpoint. On-demand è la modalità di gestione delle query dagli endpoint nelle versioni Cisco IOS XE precedenti.

mdns-sd gateway

active-query timer 1  <----- Optionally enable Active querying to discover mDNS responders that might not send advertisements periodically.

query-response mode on-demand    <----- Sets the response mode to on-demand instead of the default recurring mode (only for 17.9.1 and later releases)

2. Creare un filtro ubicazione

Nei criteri personalizzati, è necessario un filtro di posizione per il routing dei servizi tra VLAN. In questo caso specifico, è richiesto il routing del servizio tra le VLAN 2455 e 2481, in modo che tali VLAN vengano aggiunte al filtro di posizione LOCAL-PROXY.

mdns-sd location-filter LOCAL-PROXY

match location-group default vlan 2481

match location-group default vlan 2455

3. Creare un elenco dei servizi in entrata e in uscita che consenta i servizi desiderati.

Nota: i servizi consentiti nei criteri di servizio in uscita sono associati al filtro di posizione definito nel passaggio 2. Questa operazione è obbligatoria per il routing dei servizi tra VLAN.

mdns-sd service-list LOCAL-AREA-SERVICES-IN IN

match airplay

match apple-tv

!

mdns-sd service-list LOCAL-AREA-SERVICES-OUT OUT

match airplay location-filter LOCAL-PROXY

match apple-tv location-filter LOCAL-PROXY

4. Creare un criterio per i servizi e associare gli elenchi dei servizi creati nel passo 3.

mdns-sd service-policy LOCAL-AREA-SERVICE-POLICY

service-list LOCAL-AREA-SERVICES-IN IN

service-list LOCAL-AREA-SERVICES-OUT OUT

5. Attivare il gateway mDNS unicast sulle VLAN di interesse.

vlan configuration 2455

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

source-interface Vlan2455                   <---- This is the source IP address that mDNS packets are going to be send from for this VLAN

!

vlan configuration 2481

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

source-interface Vlan2481                   <---- This is the source IP address that mDNS packets are going to be send from for this VLAN

Esempio di configurazione per reti multilivello

Topologia

Configurazione sull'agente SDG

1. Abilitare il gateway mDNS a livello globale.

mdns-sd gateway

source-interface vlan10  <----- This is the IP source that the SDG Agent are going to be use to establish BCP sessions with the Service Peers

2. Creare un filtro ubicazione

Nei criteri personalizzati, è necessario un filtro di posizione per il routing dei servizi tra VLAN. In questo caso specifico, è richiesto il routing del servizio tra le VLAN 2455 e 2481, in modo che tali VLAN vengano aggiunte al filtro di posizione LOCAL-PROXY.

mdns-sd location-filter LOCAL-PROXY

match location-group default vlan 2481

match location-group default vlan 2455

3. Creare un elenco dei servizi in entrata e in uscita che consenta i servizi desiderati.

Nota: i servizi consentiti nei criteri di servizio in uscita sono associati al filtro di posizione definito nel passaggio 2. Questa operazione è obbligatoria per il routing dei servizi tra VLAN.

mdns-sd service-list LOCAL-AREA-SERVICES-IN IN

match airplay

match apple-tv

!

mdns-sd service-list LOCAL-AREA-SERVICES-OUT OUT

match airplay location-filter LOCAL-PROXY

match apple-tv location-filter LOCAL-PROXY

4. Creare un criterio per i servizi e associare gli elenchi dei servizi creati nel passo 3.

mdns-sd service-policy LOCAL-AREA-SERVICE-POLICY

service-list LOCAL-AREA-SERVICES-IN IN

service-list LOCAL-AREA-SERVICES-OUT OUT

5. Attivare il gateway mDNS unicast sulle VLAN di interesse.

vlan configuration 2455

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

!

vlan configuration 2481

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

6. Configurare un gruppo di peer del servizio per abilitare il routing del servizio tra peer del servizio.

È necessario aggiungere tutti gli indirizzi IP di origine dei peer del servizio necessari per eseguire il routing del servizio.

mdns-sd service-peer group

peer-group 1

service-policy LOCAL-AREA-SERVICE-POLICY

service-peer 10.1.1.1 location-group default

service-peer 10.1.1.5 location-group default

7. Configurare il trust mDNS sulle porte trunk inter-switch.

Questa configurazione non è obbligatoria, ma è consigliata in modo che la porta scarti qualsiasi pacchetto mDNS in entrata o in uscita. Infatti su queste porte non si prevede più la visualizzazione dei pacchetti mDNS, bensì dei pacchetti BCP.

int range tw1/0/1, tw1/0/19

mdns-sd trust

Configurazione nei peer del servizio

1. Abilitare il gateway mDNS a livello globale e configurare la modalità Service Peer.

mdns-sd gateway

active-query timer 1

mode service-peer

sdg-agent 10.1.1.3   <------ IP address of the SDG Agent

2. Creare un filtro ubicazione

Nei criteri personalizzati, è necessario un filtro di posizione per il routing dei servizi tra VLAN. In questo caso specifico, è richiesto il routing del servizio tra le VLAN 2455 e 2481, in modo che tali VLAN vengano aggiunte al filtro di posizione LOCAL-PROXY.

mdns-sd location-filter LOCAL-PROXY

match location-group default vlan 2481

match location-group default vlan 2455

3. Creare un elenco dei servizi in entrata e in uscita che consenta i servizi desiderati.

mdns-sd service-list LOCAL-AREA-SERVICES-IN IN

match airplay

match apple-tv

!

mdns-sd service-list LOCAL-AREA-SERVICES-OUT OUT

match airplay location-filter LOCAL-PROXY

match apple-tv location-filter LOCAL-PROXY

4. Creare un criterio per i servizi e associare gli elenchi dei servizi creati nel passo 3.

mdns-sd service-policy LOCAL-AREA-SERVICE-POLICY

service-list LOCAL-AREA-SERVICES-IN IN

service-list LOCAL-AREA-SERVICES-OUT OUT

5. Attivare il gateway mDNS unicast sulle VLAN di interesse.

Per Service Peer 10.1.1.1:

vlan configuration 2455

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

Per Service Peer 10.1.1.5:

vlan configuration 2481

mdns-sd gateway

service-policy LOCAL-AREA-SERVICE-POLICY

6. Configurare il trust mDNS sulle porte trunk inter-switch.

Questa configurazione non è obbligatoria, ma è consigliata in modo che la porta scarti qualsiasi pacchetto mDNS in entrata o in uscita. Infatti su queste porte non si prevede più la visualizzazione dei pacchetti mDNS, bensì dei pacchetti BCP.

Per Service Peer 10.1.1.1:

int range tw1/0/1

mdns-sd trust

Per Service Peer 10.1.1.5:

int range Gig1/0/1

mdns-sd trust

Risoluzione dei problemi

Reti di accesso routing

1. Convalidare che l'agente SDG invii/riceva la query mDNS.

C9500#show mdns-sd statistics vlan <vlan/interface> | i mDNS|send|received

mDNS Statistics

mDNS packets sent                 : 5 <---Validate that this number increments in multiple readings.

mDNS packets rate limited         : 0

mDNS packets received             : 3 <---mDNS queries received and processed by the SDG Agent.

advertisements received          : 0

queries received                 : 3

IPv4 received                  : 3

IPv4 advertisements received : 0

IPv4 queries received        : 3

IPv6 received                  : 0

IPv6 advertisements received : 0

IPv6 queries received        : 0

mDNS packets dropped              : 0

2. Verificare che l'agente SDG disponga dell'annuncio nella cache mDNS.

C9500#show mdns-sd cache

mDNS CACHE

=================================================================================================================================

[<NAME>]                                             [<TYPE>] [<TTL>/Remaining] [Vlan-Id/If-name] [Mac Address] [<RR Record Data>]

CXLabs-W10.local                                        A       4500/3717       31      0050.56b3.d162  10.34.41.104

CXLabs-W10.local                                        A       4500/4224       30      0050.56b3.e409  10.34.37.59

_airplay._tcp.local                                     PTR     4500/4472       31      0050.56b3.d162  test31._airplay._tcp.local

test31._airplay._tcp.local                              SRV     4500/4472       2481      0050.56b3.d162  0       0       3000    CXLabs-W10-3.local

test31._airplay._tcp.local                              TXT     4500/4472       2481      0050.56b3.d162  (1)''

CXLabs-W10-3.local                                      A       4500/4472       31      0050.56b3.d162  10.34.41.104

3. Verificare che i criteri del servizio siano abilitati sulla VLAN associata al servizio mDNS.

C9500#show mdns-sd service-policy association vlan

========== VLAN policy association =============

VLAN            Service-policy

------------------------------------------------

1                 LOCAL-AREA-POLICY

2481              LOCAL-AREA-POLICY

2455              LOCAL-AREA-POLICY

4. Convalida annuncio servizio cache mDNS, interrogatore e risponditore.

C9500#show mdns-sd statistics cache all

mDNS cache statistics :

Number of service types : 1

Number of records of type PTR : 1

Number of records of type SRV : 1

Number of records of type A : 3

Number of records of type AAAA : 0

Number of records of type TXT : 1

Top service types by instances :

Service type : (count of service instances)

_mirrorp2s._tcp.local : 1    <------Verify the service is display.

Top advertisers of record :

MAC Address : (count of records)

0050.56b3.d162 : 5

0050.56b3.e409 : 1           <-------Verify that interested MACs are mDNS Querier/Responder displays.

5. Se la voce non viene visualizzata nella cache, vengono ricevuti solo i pacchetti mDNS e non è presente uno scambio dell'agente SDG con il risponditore mDNS, rivedere i criteri del servizio e assicurarsi che il servizio sia incluso nell'elenco.

C9500#show mdns-sd service-list

Name                             Type                       Service       Msg-Type                        Source                         Location-filter

========================================================================================================================================================

LOCAL-AREA-SERVICES-IN             IN                           all            any                             -                                       - <-- Service list permit all services Inbound Direction

default-mdns-in-service-list       IN                apple-airprint            any                             -                                       -

IN            apple-remote-login            any                             -                                       -

IN            apple-screen-share            any                             -                                       -

IN                      apple-tv            any                             -                                       -

IN       apple-windows-fileshare            any                             -                                       -

IN             google-chromecast            any                             -                                       -

IN            google-expeditions            any                             -                                       -

IN                   homesharing            any                             -                                       -

IN         multifunction-printer            any                             -                                       -

IN                  printer-ipps            any                             -                                       -

LOCAL-AREA-SERVICES-OUT           OUT                           all            any                           ALL                             LOCAL-PROXY<-- Service list permit all services Outbound Direction

default-mdns-out-service-list     OUT                apple-airprint            any                           ALL            default-mdns-location-filter

OUT            apple-remote-login            any                           ALL            default-mdns-location-filter

OUT            apple-screen-share            any                           ALL            default-mdns-location-filter

OUT                      apple-tv            any                           ALL            default-mdns-location-filter

OUT       apple-windows-fileshare            any                           ALL            default-mdns-location-filter

OUT             google-chromecast            any                           ALL            default-mdns-location-filter

OUT            google-expeditions            any                           ALL            default-mdns-location-filter

OUT                   homesharing            any                           ALL            default-mdns-location-filter

OUT         multifunction-printer            any                           ALL            default-mdns-location-filter

6. Accetta i debug per rivedere il processo mDNS.

debug mdns all

Reti multilivello

Convalida dell'annuncio mDNS sul peer del servizio e sull'agente SDG

1. Verificare che esista una sessione BCP tra il peer del servizio e l'agente SDG (scambio Keep-Alive).

Su Service Peer:

C9500#show mdns-sd sp-sdg statistics | i Keep|Message

Messages sent:

Keep-Alive                 : 69439    <---- Validate that this number increments in multiple readings

Messages received:

Keep-Alive Response        : 69420    <---- Validate that this number increments in multiple readings

C9300-2# show udp | i Proto|10991

Proto        Remote      Port      Local       Port  In Out  Stat TTY OutputIF

17       --listen--          --any--         10991   0   0 2001221   0

17(v6)   --listen--          --any--         10991   0   0 2020221   0

Su agente SDG:

C9500# show mdns-sd sp-sdg statistics | i Keep|Message

Messages received:

Keep-Alive                 : 138901   <---- Validate that this number increments in multiple readings

Messages sent:

Keep-Alive Response        : 138901   <---- Validate that this number increments in multiple readings

C9500#show mdns-sd sdg service-peer summary

=========================================================================================================

Service-Peer/Port                                 Cache-Sync                 Uptime          Record Count

Sent       Time

=========================================================================================================

10.1.1.5/10991                                 124     Sep  5 15:24:03 2023  62 Hrs 15 Mins   0

10.1.1.1/10991                                 360     Sep  5 15:32:03 2023  180 Hrs 7  Mins   0

2. Verificare che il peer del servizio disponga dell'annuncio nella cache mDNS.

Se non viene visualizzato nella cache mDNS, acquisire un pacchetto nell'interfaccia connessa al risponditore mDNS e verificare che l'endpoint stia inviando annunci mDNS validi.

C9500#sh mdns cache

mDNS CACHE

=================================================================================================================================

[<NAME>]                                             [<TYPE>] [<TTL>/Remaining] [Vlan-Id/If-name] [Mac Address] [<RR Record Data>]

_airplay._tcp.local                                     PTR     4500/4500       2481    0050.56b3.e9c2  PC-vlan2481._airplay._tcp.local

PC-vlan2481._airplay._tcp.local                         SRV     4500/4500       2481    0050.56b3.e9c2  0       0       3000    CXLabs-WIN10.local

CXLabs-WIN10.local                                      A       4500/4500       2481    0050.56b3.e9c2  10.24.81.11

PC-vlan2481._airplay._tcp.local                         TXT     4500/4500       2481    0050.56b3.e9c2  (1)''

3. Verificare che il contatore dell'annuncio di Service Peer inviato sia in aumento.

Ogni Service Peer invia gli annunci all'agente SDG ogni service-notice-timer. L'impostazione predefinita è 30 secondi.

C9300-2#sh mdns summary

Global mDNS Gateway

==========================================

mDNS Gateway               : Enabled

Rate Limit                 : 60 PPS (default)

AirPrint Helper            : Disabled

Mode                       : Service-Peer

SDG Agent IP               : 10.1.1.3         <----- SDG Agent configured

Source Interface           : Vl10

ANY Query Forward          : Disabled

Next Advertisement to SDG  : 00:00:12         <----- Time left for sending next advertisement to SDG Agent (Default is every 30 seconds)

Next Query to SDG          : 00:00:12

Active Response Timer      : Disabled

Active Query Timer         : Enabled 1 Minutes

mDNS Query Type            : PTR only

Service Enumeration period : Default

SSO                        : Inactive

C9300-2#show mdns-sd service-peer statistics

mDNS Packet statistics:

Packets received from client  : 11560

Queries                     : 281

IPv4                      : 281

IPv6                      : 0

Advertisements              : 11279

IPv4                      : 11279                      <---- Validate that this number increments in multiple readings

IPv6                      : 0

Packets sent to client        : 23939

Advertisements              : 6

IPv4                      : 6

IPv6                      : 0

Queries                     : 23933

IPv4                      : 23933

IPv6                      : 0

Packets sent to SDG           : 110

Queries                     : 92

Advertisements              : 18                        <---- Validate that this number increments in multiple readings

Packets received from SDG     : 0

C9300-2#show mdns-sd sp-sdg statistics

One min, 5 mins, 1 hour

Average Input rate (pps)   :      0,     0,     0

Average Output rate (pps)  :      0,     0,     0

Messages sent:

Query                      : 92

ANY query                  : 0

Advertisements             : 18                              <---- Validate that this number increments in multiple readings

Advertisement Withdraw     : 15

Interface down             : 0

Vlan down                  : 0

Service-peer cache clear   : 2

Resync response            : 365

Srvc Discovery response    : 0

Keep-Alive                 : 71056

Messages received:

Query response             : 0

ANY Query response         : 0

Cache-sync                 : 395

Get service-instance       : 0

Srvc Discovery request     : 0

Keep-Alive Response        : 71037

4. Verificare che l'agente SDG disponga dell'annuncio nella cache mDNS.

C9500#    show mdns cache

mDNS CACHE

=================================================================================================================================

[<NAME>]                                             [<TYPE>] [<TTL>/Remaining] [Vlan-Id/If-name] [Mac Address] [<RR Record Data>]

_airplay._tcp.local                                     PTR     4500/4500       2481    0050.56b3.e9c2  PC-vlan2481._airplay._tcp.local

PC-vlan2481._airplay._tcp.local                         SRV     4500/4500       2481    0050.56b3.e9c2  0       0       3000    CXLabs-WIN10.local

CXLabs-WIN10.local                                      A       4500/4500       2481    0050.56b3.e9c2  10.24.81.11

PC-vlan2481._airplay._tcp.local                         TXT     4500/4500       2481    0050.56b3.e9c2  (1)''

=========================================================================================================================================================================

5. Eseguire i debug per esaminare il processo mDNS.

debug mdns all

Convalida la query mDNS nel peer del servizio e nell'agente SDG

1. Verificare che il peer del servizio disponga della query nel relativo database di query mDNS.

Se non viene rilevato in mDNS query-db, acquisire un pacchetto nell'interfaccia connessa al querier mDNS e verificare che l'endpoint stia inviando query mDNS valide.

C9300-1#show mdns query-db

------------------------------------------------------------------

Client MAC       Vlan ID    Location ID                  User Role

------------------------------------------------------------------

PTR Name: _airplay._tcp.local

0050.56b3.2ec1     2455        Default                       none

2. Verificare che esista una sessione BCP tra il peer del servizio e l'agente SDG (scambio Keep-Alive).

C9300-1#show mdns sp-sdg statistics | i Keep|Message

Messages sent:

Keep-Alive                 : 71232      <---- Validate that this number increments in multiple readings

Messages received:

Keep-Alive Response        : 71218       <---- Validate that this number increments in multiple readings

C9300-1#show udp | i Proto|10991

Proto        Remote      Port      Local       Port  In Out  Stat TTY OutputIF

17       --listen--          --any--         10991   0   0 2001221   0

17(v6)   --listen--          --any--         10991   0   0 2020221   0

3. Verificare che il contatore della query Service Peer inviata sia in aumento. Inoltre, la risposta alla query ricevuta è in aumento.

Il Service Peer invia le query all'agente SDG ogni service-query-timer. L'impostazione predefinita è 15 secondi.

C9300-1#show mdns-sd sp-sdg statistics

One min, 5 mins, 1 hour

Average Input rate (pps)   :      0,     0,     0

Average Output rate (pps)  :      0,     0,     0

Messages sent:

Query                      : 608       <---- Validate that this number increments in multiple readings

ANY query                  : 0

Advertisements             : 2

Advertisement Withdraw     : 0

Interface down             : 0

Vlan down                  : 0

Service-peer cache clear   : 6

Resync response            : 0

Srvc Discovery response    : 0

Keep-Alive                 : 71192

Messages received:

Query response             : 178        <---- Validate that this number increments in multiple readings

ANY Query response         : 0

Cache-sync                 : 395

Get service-instance       : 0

Srvc Discovery request     : 0

Keep-Alive Response        : 71178

4. Verificare che l'agente SDG invii un annuncio in risposta.

C9500#show mdns sp-sdg statistics

One min, 5 mins, 1 hour

Average Input rate (pps)   :      0,     0,     0

Average Output rate (pps)  :      0,     0,     0

Messages received:

Query                      : 704

ANY query                  : 0

Advertisements             : 19

Advertisement Withdraw     : 15

Interface down             : 0

Vlan down                  : 0

Service-peer cache clear   : 8

Resync response            : 366

Srvc Discovery response    : 0

Keep-Alive                 : 142377

Messages sent:

Query response             : 191            <---- Validate that this number increments in multiple readings

ANY Query response         : 0

Cache-sync                 : 791

Get service-instance       : 0

Srvc Discovery request     : 0

Keep-Alive Response        : 142377

5. Eseguire i debug per esaminare il processo mDNS.

debug mdns all

Comandi utilizzati per la risoluzione dei problemi

show running-config mdns-sd

show mdns-sd summary

show mdns-sd service-policy association vlan

show mdns-sd service-policy association role

show mdns-sd statistics all

show mdns-sd statistics debug

show mdns-sd cache all

show mdns-sd query-db

show mdns-sd statistics cache all

show mdns-sd service-peer statistics

show mdns-sd sp-sdg statistics

show mdns-sd sdg service-peer summary

show mdns-sd controller summary

show mdns-sd controller detail

show mdns-sd controller statistics

show mdns-sd controller export-summary

show tech-support mdns-sd

debug mdns-sd all

Informazioni correlate

- Guida alla configurazione di Bonjour per Service Discovery Gateway sugli switch Catalyst 9500

- Supporto tecnico Cisco e download