此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍如何在9800无线局域网控制器中配置FlexConnect组播域名系统(mDNS)网关。
Cisco 建议您了解以下主题:
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
组播域名系统(mDNS)是一种在服务提供商(SP)和服务用户(无线客户端)之间灵活发现和共享服务的协议。 服务提供商是指提供打印机、智能电视、文件共享服务等服务的设备,服务用户可以利用它们。
mDNS协议基于UDP,对IPv4使用端口5353、Mac地址01:00:5E:00:00:FB和IP地址224.0.0.251,对IPv6使用FF02::FB。
mDNS在WLC中有两种工作模式:桥接和网关。桥接模式仅在服务提供商和服务用户必须位于同一子网中的同一VLAN(第2层)中运行。网关模式与相同或不同VLAN中的服务提供商和服务用户协同工作,WLC或AP执行Bonjour网关以缓存服务提供商提供的服务并与服务用户共享。
本文档仅基于mDNS FlexConnect本地交换,在这种情况下,AP将充当mDNS网关以缓存服务提供商通告的服务,并与服务用户共享这些服务。
注意:有关中央交换mDNS配置,请参阅了解Catalyst 9800无线控制器上的mDNS
无线和有线服务提供商在FlexConnect本地交换环境中通告mDNS服务,同时通告使用mDNS服务的无线客户端(服务用户)。
网络图
要使AP作为mDNS网关工作,需要全局启用mDNS网关来启用该功能。
WLC GUI
导航到配置>服务> mDNS >全局> mDNS网关,如图所示。
mDNS全局配置
WLC CLI
WLC#
WLC#conf t
WLC(config)#mdns-sd gateway
WLC(config-mdns-sd)#end
WLC#
配置服务列表以允许首选的mDNS服务。列表必须按两个方向配置,即IN和OUT,用于过滤充当mDNS网关的接入点允许哪些入口和出口服务。
WLC GUI
导航到Configuration > Services > mDNS > Service Policy > Service List,如图所示。
在服务列表中选择所需的服务
WLC CLI
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#
使用所需的服务配置服务列表IN和OUT后,将使用服务策略进行合并。合并此服务策略后,即可在WLAN策略、FlexConnect配置文件和mDNS Flex策略中使用。
WLC GUI
导航到Configuration > Services > mDNS > Service Policy > Service Policy,如图所示。
合并mDNS策略中的mDNS服务列表
WLC CLI
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#
在mDNS Flex Profile中,需要将使用mDNS的FlexConnect本地交换Vlan添加到Flex Profile中,运营商和服务用户的Vlan必须添加到mDNS Flex Profile中,同时添加mDNS服务策略(允许通过有线过滤服务)。
WLC GUI
导航到配置>服务> mDNS > mDNS Flex配置文件,如图所示。
创建mDNS FlexConnect配置文件
WLC CLI
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#
默认情况下,每个WLAN都将mDNS模式用作桥接。为了让AP知道何时充当通过无线连接的服务提供商的mDNS网关以及服务用户的mDNS网关,必须使用mDNS作为网关模式配置WLAN。
WLC GUI
导航到配置>标签和配置文件> WLAN,如图所示。
在mDNS网关模式下配置SSID
WLC CLI
WLC#
WLC#conf t
WLC(config)#wlan ServiceUser
WLC(config-wlan)#mdns-sd-interface gateway
WLC(config-wlan)#end
WLC#
警告:WLAN中的配置更改会导致连接的无线客户端从SSID中丢弃。在生产期间,请小心处理WLAN中的任何配置更改。
对于无线服务提供商和无线用户提供商,一旦将mDNS服务应用到WLAN的WLAN策略,就会使用先前配置的mDNS策略过滤mDNS服务。
WLC GUI
导航到配置>标记和配置文件>策略,如图所示。
分配mDNS策略
WLC CLI
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#
警告:WLAN策略中的配置更改会导致连接的无线客户端从WLAN中丢弃。在生产期间,请小心处理WLAN策略中的任何配置。
注意:有关常规FlexConnect配置,请参阅了解Catalyst 9800无线控制器上的FlexConnect
在应用Vlan、ACL等配置的FlexConnect策略中,需要选择mDNS Flex配置文件以将其应用于属于FlexConnect策略的AP。
WLC GUI
导航到配置>标签和配置文件>Flex,如图所示。
分配mDNS Flex配置文件
WLC CLI
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#
在WLC和AP中,可以使用这些命令检查配置。
可以使用以下命令检查常规FlexConnect mDNS配置的示例:
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
可以使用以下命令检查WLAN mDNS模式:
WLC#show wlan name ServiceUser | in mDNS
mDNS Gateway Status : Gateway
WLC#show wlan name ServiceProvider | in mDNS
mDNS Gateway Status : Gateway
可以使用以下命令检查WLAN策略mDNS配置:
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
可以使用以下命令从AP端检查与mDNS相关的配置:
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
为了进行故障排除,本文档介绍mDNS在FlexConnect本地交换中经历的工作流程。请务必记住,由于部署模式是FlexConnect本地交换,WLC在mDNS的管理方式中没有任何作用。
AP本身是mDNS网关设备。AP从服务提供商获取服务,并与服务用户共享服务。当AP、服务提供商和服务用户位于不同的Vlan中时,会出现这种情况。
根据网络图部分:
服务提供商一旦检测到与网络的连接,就会使用一种称为“探测”的机制。它会发送mDNS查询,以确定是否有任何其他网络设备提供相同的mDNS服务。在探测之后,有线服务提供商使用通告机制,它会发送mDNS类型响应来通告其支持的服务。
接下来,从mDNS网关AP交换机端口获取的数据包捕获显示服务提供商,并通告其支持的服务。数据包源自Vlan 11中服务提供商的MAC地址和IP地址,其目的地为mDNS的MAC地址和IP地址,包括UDP上的mDNS端口5353,它还包含服务提供商支持的服务的答案。
下图中的答案部分显示了我们所感兴趣的服务,即airplay和spotify,后面的AP会缓存这些服务并将其保存在数据库中。
mDNS服务提供商服务
在AP CLI中,也可以看到有线服务提供商通告的信息,要从AP本身查看任何mDNS信息,必须启用以下调试:
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
AP获知服务后,会将其保存在数据库中。
可以使用以下命令检查AP数据库中保存的服务:
对于本文而言,下一个输出显示相关信息以证明mDNS网关AP在其缓存中有服务,但输出更长。
接下来,突出显示服务、服务提供商的MAC地址以及获取服务的VLAN。
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
有线服务提供商宣布服务且AP已缓存服务并保存在其数据库后(如前面的步骤所示),服务用户(无线客户端)将查找将设备(笔记本电脑)的内容镜像到智能电视进行镜像显示。为了完成镜像显示,服务用户在本例中利用播放服务。
由于服务用户通过无线和空中连接,因此需要捕获数据包来查看来自服务用户端的连接mDNS流。
从Over the Air捕获中可以看到,作为Vlan 21中无线客户端的服务用户如何发送带有mDNS的802.11目标MAC地址的mDNS查询,并且从IP地址部分可以看到mDNS的IP地址以及目标,端口是UDP 5353,并且在mDNS查询内请求了airplay。作为源,服务用户的MAC地址与其IP地址一起使用。
mDNS服务用户服务请求
从AP调试中可以看到AP如何接收无线mDNS数据包。调试显示请求的服务,这些服务与上一步捕获的数据包显示的服务相同。使用的mDNS调试包括:
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'
注意:要使用AP在嗅探器模式下接管Air数据包捕获,请参阅本文档在Catalyst 9800无线控制器上配置处于嗅探器模式的接入点。要使用MacBook接管Air数据包捕获,请参阅本文档Collect Packet Captures Over the Air on a MacBook
收到AP后,服务用户的mDNS查询会构建mDNS响应并通过无线发送。响应也来自接入点MAC Add和IP Address,目标为服务用户(无线客户端)MAC地址,但mDNS IP Address与包含作为响应的所需服务一起使用,这意味着此数据包将发往服务用户,它是mDNS数据包。
从数据包中可以看到,由于AP充当mDNS网关,因此AP在IP部分中使用自己的IP地址将数据包与mDNS端口UDP 5353一起发送到mDNS IP地址。
来自AP的mDNS服务响应
从调试中可以看到,mDNS响应已发送到服务用户。要知道mDNS响应,方法是为特定服务用户检查服务用户的MAC地址和响应中接入点的MAC地址。从下面显示的调试的突出显示部分可以看到,从数据包捕获的上一步可以看到,服务用户的MAC地址是a6c515dcdd57,接入点的MAC地址是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
上述步骤为FlexConnect本地交换成功完成mDNS数据包流,其中服务提供商在Vlan 11中有线连接,在Vlan 10中连接AP,在Vlan 21中连接服务用户。
无线服务提供商的工作方式与有线服务提供商的机制完全相同。AP会为服务发送探测和通告,缓存服务并将它们保存在数据库中。本节旨在解释当服务提供商通过无线连接时,执行mDNS网关的AP如何获取服务。
有线和无线服务提供商的区别在于,数据包自802.11发生以来在空中呈现的方式。在下一个数据包中,可以看到Vlan 11中的无线服务提供商如何通过端口UDP 5353(服务列为应答)发送mDNS数据包,其中包含源设备自己的MAC地址和IP地址,目的地是mDNS Mac地址和IP ADD。
无线服务提供商mDNS服务
从AP调试中可以看到AP如何获取无线mDNS数据包并将获知的服务添加到数据库。
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
一旦AP缓存服务,就会构建数据库,并且它显示与有线服务提供商服务相比的一些差异,因为AP中的无线服务提供商数据库显示SSID名称、站点名称(站点TAG)等详细信息以及下面更突出显示的内容。
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
mDNS用户服务查询和AP mDNS网关应答完全相同,如有线服务提供商部分所述,服务用户发送mDNS查询,AP mDNS充当网关,并向服务用户发送包含所需服务详细信息的响应。
每个站点标记只有一个主mDNS AP,它负责两项工作:
主AP从非主AP角度通知更新,请记住所有AP都位于此站点的Vlan 10中:
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#
主mDNS AP向其他AP通知主AP所属的站点TAG和网络中所获知的服务。当mDNS信息数据包到达同一站点标记中的其他AP时,如果获悉新服务,则会在AP中更新mDNS缓存数据库:
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
WLC的主要mDNS AP数据库更新:
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
主AP向WLC通知的服务提供的信息包含了解到的服务。如果AP通过有线或无线获取服务(在本例中为有线服务提供商),则从获取站点TAG和Vlan以及服务提供商名称。对于无线运营商,WLAN ID反映运营商所连接的WLAN。
导航到Monitoring > Services > mDNS,如图所示。
从WLC GUI监控mDNS服务
mDNS服务列表和策略允许其控制网络中允许的mDNS服务。此处,举例说明如何过滤服务列表IN和OUT中不允许的mDNS服务。
要查看正在通告或查询但不允许的服务,请在AP中启用此调试:
这些mDNS服务
不允许使用,因为未在“选择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.
如果需要特殊服务列表,需要在WLC的mDNS配置中将相同服务添加到“服务定义”部分。在WLC中将服务添加为服务,并在“服务列表”的“输入”和“输出”中进行选择后,这些服务将通过mDNS服务策略推送到FlexConnect AP。
为此,您需要了解所需的确切服务,并从服务定义部分为服务和服务字符串添加自定义名称。
在本例中,添加了mDNS网关AP在“每个mDNS服务列表不允许的服务”部分中过滤的两个服务。
导航到配置>服务> mDNS >服务策略>服务定义,如图所示。
mDNS自定义服务定义
由于此mDNS模式在FlexConnect本地交换中从AP角度被视为常规数据流量,因此本文档不涉及mDNS桥接模式。在FlexConnect本地交换中为mDNS启用桥接模式时,AP仅转发从有线或无线收到的mDNS数据包。这些数据包仅在同一个VLAN中转发,这意味着服务提供商和服务用户必须位于同一个VLAN中才能运行mDNS。mDNS桥接在Vlan中不起作用。
如果某些WLAN不需要mDNS,但其他WLAN确实需要该mDNS,则可以按WLAN配置mDNS模式丢弃。启用mDNS丢弃后,mDNS不会通过连接到WLAN的设备。
导航到配置>标签和配置文件> WLAN,如图所示。
mDNS丢弃模式
版本 | 发布日期 | 备注 |
---|---|---|
2.0 |
29-Jan-2025
|
更新的Alt文本、图像字幕、机器翻译和格式设置。 |
1.0 |
29-Jul-2024
|
初始版本 |