Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Esempio di rete

Configurazioni

Abilita mDNS a livello globale nel WLC

Selezionare i servizi mDNS in un elenco dei servizi

Unire gli elenchi dei servizi con un criterio dei servizi

Configurare un profilo Flex mDNS

Configurazione della WLAN con la modalità gateway mDNS

Applicazione dei criteri del servizio mDNS ai criteri WLAN

Configura profilo Flex mDNS nei criteri FlexConnect

Verifica

Comandi Show WLC

Comandi Show AP

Risoluzione dei problemi

Provider di servizi cablati

Provider di servizi wireless

AP mDNS primario

Servizi non consentiti per elenco servizi mDNS

Configurazione personalizzata dei servizi mDNS nella definizione del servizio

Modalità Bridging mDNS FlexConnect

Modalità drop mDNS Flexconnect

Introduzione

Questo documento descrive come configurare il gateway FlexConnect Multicast Domain Name System (mDNS) nel controller LAN wireless 9800.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Nozioni base su Wireless LAN Controller mDNS

- Nozioni base sullo switching locale FlexConnect

Componenti usati

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

- Catalyst serie 9800 Wireless Controller (Catalyst 9800-L), Cisco IOS® XE Cupertino 17.9.5

- ISR (Integrated Services Router), Cisco IOS® XE Gibraltar 17.6.5

- Catalyst serie 3560 Switch, Cisco IOS® 15.2.4E10

- Access point 9117AXI-B, Access Point 9130AXI-B

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.

Premesse

Multicast Domain Name System (mDNS) è un protocollo che offre flessibilità per individuare e condividere servizi tra provider di servizi (SP) e utenti di servizi (client wireless). I provider di servizi sono dispositivi che forniscono servizi quali stampanti, smart tv, servizi di condivisione file e altri che possono essere utilizzati dagli utenti dei servizi.

Il protocollo mDNS è basato su UDP e utilizza la porta 5353, l'indirizzo Mac 01:00:5E:00:00:FB e l'indirizzo IP 224.0.0.251 per IPv4 e FF02::FB per IPv6.

Il WLC funziona in due modalità di mDNS: Bridging e Gateway. La modalità Bridging funziona solo sulla stessa Vlan (livello 2), dove il provider di servizi e l'utente del servizio devono trovarsi sulla stessa subnet. La modalità gateway funziona con il provider di servizi e l'utente del servizio sulla stessa Vlan o su Vlan diverse, con il WLC o l'access point che utilizzano il gateway Bonjour per memorizzare nella cache i servizi del provider di servizi e condividerli con gli utenti del servizio.

Questo documento è basato solo sullo switching locale mDNS FlexConnect, che in questo caso l'access point funge da gateway mDNS per memorizzare nella cache i servizi annunciati dai provider di servizi e condividere questi servizi con gli utenti dei servizi.

Nota: per la configurazione di mDNS di switching centrale, consultare il documento sulla descrizione di mDNS sul controller wireless Catalyst 9800

Esempio di rete

I provider di servizi wireless e cablati pubblicizzano i servizi mDNS in un ambiente di switching locale FlexConnect, insieme a un client wireless (utente del servizio) che utilizza i servizi mDNS.

Configurazioni

Abilita mDNS a livello globale nel WLC

Affinché il punto di accesso funzioni come gateway mDNS, è necessario attivare la funzionalità attivando il gateway mDNS a livello globale.

GUI WLC

Configurazione globale mDNS

CLI WLC

WLC#

WLC#conf t

WLC(config)#mdns-sd gateway

WLC(config-mdns-sd)#end

WLC#

Selezionare i servizi mDNS in un elenco dei servizi

Configurare un elenco dei servizi per consentire i servizi mDNS di preferenza. L'elenco deve essere configurato in due direzioni, IN e OUT, che consentono di filtrare i servizi in entrata e in uscita consentiti dal punto di accesso che funge da gateway mDNS.

GUI WLC

Selezionare i servizi necessari nell'elenco dei servizi

CLI WLC

WLC#

WLC#conf t

WLC(config)#mdns-sd service-list FlexIN IN

WLC(config-mdns-sl-in)#match airplay

WLC(config-mdns-sl-in)#match spotify

WLC(config-mdns-sl-in)#exit

WLC(config)#mdns-sd service-list FlexOUT OUT

WLC(config-mdns-sl-out)#match airplay

WLC(config-mdns-sl-out)#match spotify

WLC(config-mdns-sl-out)#end

WLC#

Unire gli elenchi dei servizi con un criterio dei servizi

Una volta configurati i servizi IN e OUT dell'elenco dei servizi, per unirli viene utilizzato un criterio dei servizi. Una volta uniti, questi criteri del servizio possono essere utilizzati nei criteri WLAN, nel profilo FlexConnect e nei criteri Flex mDNS.

GUI WLC

Unire gli elenchi dei servizi mDNS in un criterio mDNS

CLI WLC

WLC#

WLC#conf t

WLC(config)#mdns-sd service-policy mDNSFlexSSIDPolicy

WLC(config-mdns-ser-pol)#service-list FlexIN IN

WLC(config-mdns-ser-pol)#service-list FlexOUT OUT

WLC(config-mdns-ser-pol)#end

WLC#

Configurare un profilo Flex mDNS

Nel profilo Flex mDNS, le Vlan di switching locale FlexConnect in cui viene utilizzato mDNS devono essere aggiunte al profilo Flex, la Vlan del provider di servizi e dell'utente del servizio deve essere aggiunta al profilo Flex mDNS, insieme alla policy del servizio mDNS che consente di filtrare i servizi via cavo.

GUI WLC

Crea un profilo mDNS FlexConnect

CLI WLC

WLC#

WLC#conf t

WLC(config)#mdns-sd flex-profile mDNSFlexPolicy

WLC(config-mdns-flex-prof)#wired-vlan-range 11,21

WLC(config-mdns-flex-prof)#wired-service-policy mDNSFlexSSIDPolicy

WLC(config-mdns-flex-prof)#end

WLC#

Configurazione della WLAN con la modalità gateway mDNS

Per impostazione predefinita, ogni WLAN ha la modalità mDNS come Bridging. Affinché l'access point sappia quando agire come gateway mDNS per i provider di servizi connessi tramite wireless e per gli utenti dei servizi, la WLAN deve essere configurata con mDNS come modalità gateway.

GUI WLC

Configurare il SSID in modalità gateway mDNS

CLI WLC

WLC#

WLC#conf t

WLC(config)#wlan ServiceUser

WLC(config-wlan)#mdns-sd-interface gateway

WLC(config-wlan)#end

WLC#

Avviso: le modifiche della configurazione nella WLAN provocano il rifiuto dei client wireless connessi dall'SSID. Prestare attenzione a qualsiasi modifica della configurazione delle WLAN durante il tempo di produzione.

Applicazione dei criteri del servizio mDNS ai criteri WLAN

Per i provider di servizi wireless e i provider di utenti wireless, i servizi mDNS vengono filtrati in base ai criteri mDNS configurati in precedenza, una volta applicati ai criteri WLAN delle WLAN.

GUI WLC

Assegna il criterio mDNS

CLI WLC

WLC#

WLC#conf t

WLC(config)#wireless profile policy ServiceUser-Policy

WLC(config-wireless-policy)#mdns-sd service-policy mDNSFlexSSIDPolicy

WLC(config-wireless-policy)#end

WLC#

Avviso: le modifiche alla configurazione in WLAN-Policy provocano il rifiuto dei client wireless connessi dalla WLAN. Prestare attenzione a qualsiasi configurazione nella policy WLAN durante il tempo di produzione.

Nota: per la configurazione generale di FlexConnect, consultare il documento sulla descrizione di FlexConnect sul controller wireless Catalyst 9800

Configura profilo Flex mDNS nei criteri FlexConnect

Nei criteri FlexConnect, dove vengono applicate configurazioni come Vlan, ACL e altro, è necessario selezionare mDNS Flex Profile per applicarlo agli access point che appartengono ai criteri FlexConnect.

GUI WLC

Assegna il profilo flessibile mDNS

CLI WLC

WLC#

WLC#conf t

WLC(config)#wireless profile flex mDNSFlexPolicy

WLC(config-wireless-flex-profile)#mdns-sd profile mDNSFlexPolicy

WLC(config-wireless-flex-profile)#end

WLC#

Verifica

Dal WLC e dall'access point, la configurazione può essere controllata con questi comandi.

Comandi Show WLC

Un esempio di configurazione generale di FlexConnect mDNS può essere verificato con questi comandi:

WLC#show run | sec mdns-sd

mdns-sd gateway

mdns-sd service-list FlexIN IN

match airplay

match spotify

match airtunes

match apple-tv

match airserver

match web-server

match homesharing

mdns-sd service-list FlexOUT OUT

match airplay

match spotify

match airtunes

match apple-tv

match airserver

match web-server

match homesharing

mdns-sd service-policy mDNSFlexSSIDPolicy

service-list FlexIN IN

service-list FlexOUT OUT

mdns-sd flex-profile mDNSFlexPolicy

wired-vlan-range 11,21

wired-service-policy mDNSFlexSSIDPolicy

mdns-sd profile mDNSFlexPolicy

La modalità mDNS della WLAN può essere verificata con questo comando:

WLC#show wlan name ServiceUser | in mDNS

mDNS Gateway Status : Gateway

WLC#show wlan name ServiceProvider | in mDNS

mDNS Gateway Status : Gateway

La configurazione mDNS dei criteri WLAN può essere verificata con questo comando:

WLC#show wireless profile policy detailed ServiceUser-Policy | in mDNS

mDNS Service Policy name : mDNSFlexSSIDPolicy

WLC#show wireless profile policy detailed ServiceProvider-Policy | in mDNS

mDNS Service Policy name : mDNSFlexSSIDPolicy

Comandi Show AP

La configurazione relativa a mDNS può essere verificata dal lato dell'access point con questi comandi:

9130mDNSAP#show mdns profile detail

FlexIN_IN _home-sharing._tcp.local ANY

FlexIN_IN _airplay._tcp.local ANY

FlexIN_IN _airserver._tcp.local ANY

FlexIN_IN _raop._tcp.local ANY

FlexIN_IN _spotify-connect._tcp.local ANY

FlexIN_IN _http._tcp.local ANY

FlexOUT_OUT _home-sharing._tcp.local ANY

FlexOUT_OUT _airplay._tcp.local ANY

FlexOUT_OUT _airserver._tcp.local ANY

FlexOUT_OUT _raop._tcp.local ANY

FlexOUT_OUT _spotify-connect._tcp.local ANY

FlexOUT_OUT _http._tcp.local ANY

9130mDNSAP#show mdns status

Global mDNS gateway:Enabled

vap_id ssid mdns_mode

0 ServiceUser Gateway

1 ServiceProvider Gateway

Active query interval:30

vap service_list_in service_list_out location

0 FlexIN_IN FlexOUT_OUT 0

1 FlexIN_IN FlexOUT_OUT 0

Wired vlan configuration: 11 21

mdns stats timer: 1

mdns cache timer: 1

AP Sync VLAN: 10

Wired service list IN: FlexIN_IN

Wired service list OUT: FlexOUT_OUT

9130mDNSAP#show mdns ap-table

AP_ETH_MAC Last_message_time Msg_seq Is_primary_ap

3C:57:31:55:E4:28 1721178339 133 YES

0C:D0:F8:98:1B:F0 1721178339 133 NO

Risoluzione dei problemi

Per la risoluzione dei problemi, questo documento spiega il flusso di lavoro di mDNS in FlexConnect Local Switching. È importante ricordare che il WLC non avrà alcun ruolo nella gestione del mDNS a causa della modalità di distribuzione, che è la commutazione locale FlexConnect.

Il punto di accesso sarà il dispositivo gateway mDNS, imparerà i servizi dai provider e condividerà i servizi con l'utente, mentre il punto di accesso, il provider di servizi e l'utente di servizi saranno posizionati in VLAN diverse.

Sezione Per diagramma reticolare:

- Il provider di servizi è nella VLAN 11

- L'utente del servizio è sulla Vlan 21

- Access Point è nella Vlan 10

Provider di servizi cablati

Una volta rilevata la connettività alla rete, il provider di servizi utilizza un meccanismo denominato probe e invia una query mDNS per verificare se esistono altri dispositivi di rete che offrono o meno gli stessi servizi mDNS. Dopo la sonda, il provider di servizi cablati utilizza un meccanismo di annuncio e invia una risposta di tipo mDNS per annunciare i servizi supportati.

Successivamente, un'acquisizione di pacchetti presa dalla porta switchport del gateway mDNS che mostra al provider di servizi l'annuncio dei servizi supportati. Il pacchetto ha come origine l'indirizzo MAC e l'indirizzo IP del provider di servizi nella Vlan 11 e come destinazione l'indirizzo MAC e l'indirizzo IP di mDNS, compresa la porta mDNS 5353 su UDP, contiene anche le risposte che sono i servizi supportati dal provider di servizi.

La sezione delle risposte nell'immagine seguente mostra i servizi di nostro interesse che sono airplay e spotify, successivamente l'AP memorizza questi servizi e li salva nel database.

Servizi provider di servizi mDNS

Dalla CLI dell'access point, il provider di servizi cablati annuncia che per visualizzare le informazioni mDNS dell'access point stesso è necessario abilitare questi debug:

- Eventi MDS AP#debug

- Pacchetti MDS AP#debug

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0403] chatter: MDNSGW-EVENT: flex mdns gw: Recieved wired mdns packet on vlan 11

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0403] chatter: MDNSGW-EVENT: push: adding ptr record to cache: srv_name: _spotify-connect._tcp.local

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0404] chatter: MDNSGW-EVENT: mdns_ptr_db:updated TXT record TTL for ed9583d2b239afa30d7b0e7106c3710ddcfe5769._spotify-connect._tcp.local to 4500

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0404] chatter: MDNSGW-EVENT: mdns_ptr_db:added/updated PTR record for _spotify-connect._tcp.local

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0404] chatter: MDNSGW-EVENT: push: added ptr record to cache: srv_name: _spotify-connect._tcp.local

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0404] chatter: MDNSGW-EVENT: push: adding ptr record to cache: srv_name: _airplay._tcp.local

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0404] chatter: MDNSGW-EVENT: mdns_ptr_db:updated TXT record TTL for Samsung CU7000 55 TV._airplay._tcp.local to 4500

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0405] chatter: MDNSGW-EVENT: mdns_ptr_db:added/updated PTR record for _airplay._tcp.local

Jul 17 23:51:32 kernel: [*07/17/2024 23:51:32.0405] chatter: MDNSGW-EVENT: push: added ptr record to cache: srv_name: _airplay._tcp.local

Una volta appresi i servizi, l'access point li salva nel database.

I servizi salvati nel database AP possono essere controllati con questo comando:

- Cache AP#show mdns

Ai fini di questo documento, l'output successivo mostra le informazioni rilevanti per dimostrare che il punto di accesso al gateway mDNS ha nella sua cache i servizi. Tuttavia, l'output è più lungo.

Quindi, evidenziare i servizi, l'indirizzo MAC del provider di servizi e la VLAN da cui è stato appreso.

AP#show mdns cache

--------------------------------------------------- Service Provider Records--------------------------------------------------------------

service_name                                                                            service_providers

_airplay._tcp.local                                                                   Samsung CU7000 55 TV._airplay._tcp.local

_spotify-connect._tcp.local                                           ed9583d2b239afa30d7b0e7106c3710ddcfe5769._spotify-connect._tcp.local

Total Services: 2

Total Service Providers: 2

------------------------------------------------------------ PTR Records -----------------------------------------------------------------

service_name client_mac ap_mac ap_ether_mac wired is_rlan is_aaa_override vlan wlan_id ttl flags client_type record_type target site_name ap_location ssid type

Samsung CU7000 55 TV._airplay._tcp.local E0:03:6B:45:8E:26 00:00:00:00:00:00 00:00:00:00:00:00 true false false 11 16 3840 132 0 12 _airplay._tcp.local PTR

ed9583d2b239afa30d7b0e7106c3710ddcfe5769._spotify-connect._tcp.local E0:03:6B:45:8E:26 00:00:00:00:00:00 00:00:00:00:00:00 true false false 11 16 3840 132 0 12 _spotify-connect._tcp.local PTR

Dopo che il provider di servizi cablati ha annunciato i servizi e l'access point ha memorizzato i servizi nella cache e li ha salvati nel database, come illustrato nei passaggi precedenti, l'utente del servizio (client wireless) cerca di eseguire il mirroring del contenuto del dispositivo (laptop) sulla smart TV per visualizzarlo in modalità mirror. Per eseguire la visualizzazione speculare, l'utente del servizio utilizza il servizio airplay in questo esempio.

Poiché l'utente del servizio è connesso tramite wireless, era necessario acquisire il pacchetto Over the Air per visualizzare il flusso mDNS della connessione dal lato utente del servizio.

Dalle riprese Over the Air, si può vedere come l'Utente del servizio che è il client wireless nella Vlan 21, invia una query mDNS con l'indirizzo MAC di destinazione 802.11 di mDNS e dalla sezione Indirizzo IP viene usato l'indirizzo IP di mDNS così come la destinazione, la porta è UDP 5353 e all'interno delle query mDNS viene richiesto airplay. Come origine è stato utilizzato l'indirizzo MAC dell'utente del servizio insieme al relativo indirizzo IP.

Richiesta servizi utente servizio mDNS

Dal debug dell'access point, è possibile vedere come l'access point riceve un pacchetto mDNS wireless. Il comando debug visualizza i servizi richiesti, che sono gli stessi servizi mostrati nel passaggio precedente dell'acquisizione dei pacchetti. I debug mDNS utilizzati sono:

- Eventi MDS AP#debug

- Pacchetti MDS AP#debug

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.1824] chatter: MDNSGW-EVENT: flex mdns gw: Recieved wireless mdns packet

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.1824] chatter: MDNSGW-PAK: query: 0/3 '_companion-link._tcp.local'

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.1824] chatter: MDNSGW-PAK: query: 1/3 '_rdlink._tcp.local'

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.1824] chatter: MDNSGW-PAK: query: 2/3 '_sleep-proxy._udp.local'

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.7442] chatter: MDNSGW-PAK: query: 0/1 '_airplay._tcp.local'

Nota: per acquisire il controllo delle acquisizioni di pacchetti via etere con un access point in modalità sniffer, fare riferimento a questo documento sulla configurazione dell'access point in modalità sniffer sui controller wireless Catalyst 9800. Per usare un MacBook per acquisire le clip del pacchetto Air, fare riferimento a questo documento Collect Packet Capture Over the Air su un MacBook

Dopo aver ricevuto la query mDNS dall'utente del servizio, l'access point genera una risposta mDNS e la invia tramite wireless. La risposta ha come origine anche l'indirizzo MAC del punto di accesso e l'indirizzo IP, la destinazione è l'indirizzo MAC dell'utente del servizio (client wireless), ma l'indirizzo IP mDNS viene utilizzato con i servizi necessari inclusi come risposta, il che significa che questo pacchetto va all'utente del servizio ed è un pacchetto mDNS.

Dal pacchetto, si può anche vedere come l'access point usa il proprio indirizzo IP nella sezione IP per indirizzare il pacchetto all'indirizzo IP mDNS insieme alla porta mDNS UDP 5353, dal momento che l'access point agisce come gateway mDNS.

Risposta dei servizi mDNS dal punto di accesso

Dal debug, è possibile vedere che la risposta mDNS è stata inviata all'utente del servizio. Per conoscere la risposta mDNS per l'utente del servizio specifico, è necessario controllare l'indirizzo MAC dell'utente del servizio e l'indirizzo MAC del punto di accesso nella risposta. L'insieme di questi due elementi è illustrato nella parte evidenziata del debug riportata di seguito, come mostrato nel passaggio precedente della procedura di acquisizione del pacchetto. L'indirizzo MAC dell'utente del servizio è a6c515dcdd57 e l'indirizzo MAC del punto di accesso è 0c75bdb5e9d0.

Jul 18 02:04:45 kernel: [*07/18/2024 02:04:45.7450] chatter: mdns response packet 599 | a6c515dc dd570c75 bdb5e9d0 08004500 02490000 0000fa11 1ddec0a8 0a3fc0a8 153614e9 14e90235 6b330000 80000000 00030000 00000e5f 6d657461 5f726573 706f6e73 65055f6d 646e7308 5f676174 65776179 035f6170 065f6c6f 63616c00 00100001 00000000 0000085f 61697270 6c617904 5f746370 056c6f63 616c0000 0c000100 0010a400 17145361 6d73756e 67204355 37303030 20353520 5456c040 c05f0010 00010000 10a401ab 0561636c 3d301a64 65766963 6569643d 45303a30 333a3642 3a34353a 38453a32 361b6665 61747572 65733d30 78374638 4144302c 30783338 42434634 36126665 783d3049 702f4145 62506977 4e414341 07727366 3d307833 1a66763d 7032302e 542d4b53 55324543 414b5543 2d313430 322e3806 61743d30 78310b66 6c616773 3d307832 30340d6d 6f64656c 3d554355 37303030 12696e74 65677261 746f723d 53616d73 756e6714 6d616e75 66616374 75726572 3d53616d 73756e67 1c736572 69616c4e 756d6265 723d3046 47463343 47573630 32313834 4b0d7072 6f746f76 6572733d 312e3111 73726376 6572733d 3337

Le operazioni precedenti completano con successo il flusso di pacchetti mDNS per lo switching locale FlexConnect, con il provider di servizi connesso tramite cavo nella Vlan 11, l'access point nella Vlan 10 e l'utente del servizio nella Vlan 21.

Provider di servizi wireless

Il provider di servizi wireless funziona esattamente come il meccanismo del provider di servizi cablati, invia un probe e un annuncio per i servizi, quindi memorizza i servizi nella cache e li salva nel database. In questa sezione viene illustrato in che modo il punto di accesso che esegue il gateway mDNS apprende i servizi quando il provider di servizi è connesso tramite wireless.

La differenza tra un provider di servizi via cavo e un provider di servizi wireless è rappresentata dal modo in cui il pacchetto viene trasmesso a partire dalla versione 802.11. Nel pacchetto successivo viene mostrato come il provider di servizi wireless della Vlan 11 invii un pacchetto mDNS con l'origine e il proprio indirizzo MAC e indirizzo IP, mentre la destinazione è l'indirizzo Mac mDNS e gli IP ADD, sulla porta UDP 5353 con i servizi elencati come risposte.

Servizi mDNS per provider di servizi wireless

Dai debug dell'access point è possibile verificare in che modo l'access point ottiene un pacchetto mDNS wireless e aggiungere i servizi appresi al database.

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7785] chatter: MDNSGW-EVENT: flex mdns gw: Recieved wireless mdns packet

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7786] chatter: MDNSGW-EVENT: push: added ptr record to cache: srv_name: _spotify-connect._tcp.local

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7786] chatter: MDNSGW-EVENT: push: adding ptr record to cache: srv_name: _services._dns-sd._udp.local

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7786] chatter: MDNSGW-EVENT: push: adding ptr record to cache: srv_name: _airplay._tcp.local

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7787] chatter: MDNSGW-EVENT: mdns_ptr_db:updated TXT record TTL for Samsung CU7000 55 TV._airplay._tcp.local to 4500

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7787] chatter: MDNSGW-EVENT: mdns_ptr_db:added/updated PTR record for _airplay._tcp.local

Jul 18 02:42:01 kernel: [*07/18/2024 02:42:01.7787] chatter: MDNSGW-EVENT: push: added ptr record to cache: srv_name: _airplay._tcp.local

Una volta che il punto di accesso ha memorizzato nella cache i servizi, il database viene creato e presenta alcune differenze rispetto ai servizi del provider di servizi cablati, poiché il database del provider di servizi wireless nel punto di accesso mostra dettagli quali il nome SSID, il nome del sito (tag del sito) e altri elementi evidenziati, come mostrato di seguito.

AP#show mdns cache

--------------------------------------------------- Service Provider Records--------------------------------------------------------------

service_name                                                                            service_providers

_airplay._tcp.local                                                         Samsung CU7000 55 TV._airplay._tcp.local

_spotify-connect._tcp.local                                     ed9583d2b239afa30d7b0e7106c3710ddcfe5769._spotify-connect._tcp.local

Total Services: 2

Total Service Providers: 2

------------------------------------------------------------ PTR Records -----------------------------------------------------------------

service_name client_mac ap_mac ap_ether_mac wired is_rlan is_aaa_override vlan wlan_id ttl flags client_type record_type target site_name ap_location ssid type

Samsung CU7000 55 TV._airplay._tcp.local 68:FC:CA:6E:EB:0C 0C:75:BD:B3:20:A0 0C:75:BD:B5:E9:D0 false false false 11 1 4320 132 0 12 _airplay._tcp.local mDNSFlex-Site-TAG RemoteLocation ServiceProvider PTR

ed9583d2b239afa30d7b0e7106c3710ddcfe5769._spotify-connect._tcp.local 68:FC:CA:6E:EB:0C 0C:75:BD:B3:20:A0 0C:75:BD:B5:E9:D0 false false false 11 1 4320 132 0 12 _spotify-connect._tcp.local mDNSFlex-Site-TAG RemoteLocation ServiceProvider PTR

La query del servizio utente mDNS e la risposta del gateway mDNS AP sono esattamente le stesse già spiegate nella sezione Provider di servizi cablati, l'utente del servizio invia una query mDNS e l'mDNS dell'access point funge da gateway e invia una risposta all'utente del servizio con i dettagli dei servizi necessari.

AP mDNS primario

Esiste un solo punto di accesso mDNS primario per tag di sito ed è responsabile di due processi:

1. Mantenere aggiornato il database mDNS di tutti gli access point, purché appartengano allo stesso tag di sito, in modo che il database mDNS di ogni access point sia lo stesso e non vi siano servizi mDNS mancanti.

2. Informare il WLC in merito ai servizi mDNS appresi nella postazione remota (si tratta solo di informazioni e il WLC non può utilizzare questi servizi solo a scopo gestionale).

L'access point primario informa l'aggiornamento da una prospettiva diversa dall'access point primario. Tenere presente che tutti gli access point sono sulla Vlan 10 in questo sito:

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4852] chatter: MDNSGW-EVENT: flex mdns gw: Recieved wired mdns packet on vlan 10

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4853] chatter: MDNSGW-EVENT: Received _heartbeat record. data: digest=f7adbb063c274f6e4219f3a36abf7f787075b7e1

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4853] chatter: seq=355

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4853] chatter: is_primary_ap=true

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4854] chatter: MDNSGW-EVENT: Calculated digest=f7adbb063c274f6e4219f3a36abf7f787075b7e1

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4854] chatter: MDNSGW-EVENT: Verified meta message

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4854] chatter: MDNSGW-EVENT: [0C:75:BD:B5:E9:D0] Verified message from 3C:57:31:55:E4:28

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4854] chatter: MDNSGW-EVENT: New pkt from 3C:57:31:55:E4:28. Hash added to list

Jul 18 03:26:25 kernel: [*07/18/2024 03:26:25.4854] chatter: MDNSGW-EVENT: mdns_gw_ap_mgr :: MdnsGwApMgr: [3C:57:31:55:E4:28] Received _meta_heartbeat with message: seq=355, is_primary=true

9130mDNSAP#show mdns ap-table

AP_ETH_MAC Last_message_time Msg_seq Is_primary_ap

3C:57:31:55:E4:28 1721273666 363 YES

9130mDNSAP#

L'access point mDNS primario informa gli altri access point sui servizi appresi nel tag del sito e nella rete a cui appartiene l'access point primario, una volta che il pacchetto informativo mDNS raggiunge gli altri access point nello stesso tag del sito, il database della cache mDNS viene aggiornato negli access point se vengono appresi nuovi servizi:

Jul 18 03:41:26 kernel: [*07/18/2024 03:41:26.1021] chatter: MDNSGW-EVENT: forward_packet: sending packet on vlan 10

Jul 18 03:41:26 kernel: [*07/18/2024 03:41:26.1023] chatter: send meta packet 177 | 01005e00 00fb3c57 3155e428 08004500 00a30000 0000fa11 1469c0a8 0a3de000 00fb14e9 14e9008f 450e0000 80000000 00010000 00000a5f 68656172 74626561 74055f6d 646e7308 5f676174 65776179 035f6170 065f6c6f 63616c00 00100001 00000000 004b2f64 69676573 743d6233 36336564 65343334 39643531 64613039 66613765 61313739 35346633 64666235 39383763 35340773 65713d33 37301269 735f7072 696d6172 795f6170 3d747275 65

Aggiornamento del database AP mDNS primario sul WLC:

Jul 18 03:35:26 kernel: [*07/18/2024 03:35:26.3127] chatter: MDNSGW-EVENT: mdns_gw_visibility :: MdnsGwVisibility: MDNS Stats Timer triggered

Jul 18 03:35:26 kernel: [*07/18/2024 03:35:26.3128] chatter: MDNSGW-PAK: mdns_gw_visibility :: MdnsGwVisibility: sending mdns stats payload to capwapd

Jul 18 03:35:26 kernel: [*07/18/2024 03:35:26.3130] chatter: MDNSGW-EVENT: mdns_gw_visibility :: MdnsGwVisibility: MDNS Cache Timer triggered

Jul 18 03:35:26 kernel: [*07/18/2024 03:35:26.3131] chatter: MDNSGW-EVENT: mdns_gw_visibility :: MdnsGwVisibility: sending mdns cache IAPP payload. Total payloads sent - 2

I servizi comunicati dall'access point primario al WLC forniscono informazioni contenenti i servizi appresi, se i servizi vengono appresi tramite reti cablate o wireless dagli access point (in questo esempio un provider di servizi cablati), il tag del sito e la Vlan da cui sono stati appresi e il nome del provider di servizi. Per il provider di servizi wireless, l'ID WLAN riflette la WLAN a cui il provider di servizi è connesso.

Monitoraggio dei servizi mDNS dalla GUI WLC

Servizi non consentiti per elenco servizi mDNS

I criteri e l'elenco dei servizi mDNS consentono di controllare i servizi mDNS consentiti nella rete. Di seguito è riportato un esempio di come vengono filtrati i servizi mDNS non consentiti nell'elenco dei servizi IN e OUT.

Per visualizzare i servizi annunciati o interrogati, ma non consentiti, abilitare il debug nell'access point:

- Errori MDS AP#debug

Questi servizi mDNS

- _airplay-bds._tcp.local

- _riattivazione._tcp.local

Non sono consentite, poiché non sono configurate e selezionate nell'elenco dei servizi configurato in Seleziona servizi mDNS.

Jul 18 03:46:41 kernel: [*07/18/2024 03:46:41.6986] chatter: MDNSGW-ERROR: Handle query: service_string:_airplay-bds._tcp.local not allowed by policy. Skipping it.

Jul 18 03:46:53 kernel: [*07/18/2024 03:46:53.7270] chatter: MDNSGW-ERROR: Handle query: service_string:6A:FC:CA:6E:EB:0C@0.0.0.0._wake._tcp.local not allowed by policy. Skipping it.

Configurazione personalizzata dei servizi mDNS nella definizione del servizio

Se è necessario un elenco di servizi speciale, lo stesso deve essere aggiunto alla sezione Definizione del servizio nella configurazione mDNS nel WLC.

Una volta aggiunti come servizio nel WLC e selezionati nell'elenco dei servizi IN e OUT, i servizi vengono inviati agli access point FlexConnect tramite i criteri del servizio mDNS.

A tale scopo, è necessario conoscere il servizio esatto necessario e nella sezione Definizione servizio aggiungere un nome personalizzato per il servizio e la relativa stringa.

In questo esempio sono stati aggiunti i due servizi filtrati dagli access point gateway mDNS nella sezione Servizi non consentiti per elenco servizi mDNS.

Definizione servizio personalizzata mDNS

Modalità Bridging mDNS FlexConnect

Questo documento non copre la modalità di bridging mDNS in quanto questa modalità mDNS viene considerata come traffico di dati regolare dalla prospettiva AP nella commutazione locale FlexConnect. Quando la modalità bridging è abilitata per i mDNS nella commutazione locale FlexConnect, l'access point inoltra semplicemente i pacchetti mDNS ricevuti tramite cavo o wireless. Questi pacchetti vengono inoltrati solo nella stessa Vlan, ossia il provider di servizi e l'utente del servizio devono trovarsi nella stessa VLAN perché il servizio mDNS possa funzionare. Il bridging mDNS non funziona tra le Vlan.

Modalità drop mDNS Flexconnect

Se mDNS non è desiderato in alcune WLAN, ma è effettivamente necessario in altre WLAN, è possibile configurare la perdita di modalità mDNS per ciascuna WLAN. Una volta abilitata la rimozione di mDNS, mDNS non passa attraverso i dispositivi connessi alla WLAN.

modalità drop mDNS