内容

はじめに

前提条件

要件

使用するコンポーネント

背景説明

mDNSブリッジ

mDNSゲートウェイ

設定

ネットワーク図

グラフィカルユーザインターフェイスによるmDNSゲートウェイの設定

コマンドラインインターフェイスによるmDNSゲートウェイの設定

アンカーと外部のシナリオ

確認

トラブルシュート

関連情報

はじめに

このドキュメントでは、Catalyst 9800ワイヤレスコントローラでマルチキャストドメインネームサービス(mDNS)ゲートウェイ機能を設定する方法について説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- mDNS Bonjourプロトコル

- Catalyst 9800ワイヤレスコントローラ

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

- C9800-CL-K9バージョン16.12.1s

- WS-C3560CX-12PC-S

- C9117AXI-A

- クロメキャストNC2-6A5-D

- MacbookPro 10.14.5

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

このドキュメントでは、mDNS（またはBonjour）と呼ばれるこの特別なマルチキャストトラフィックがC9800コントローラでどのように処理されるかについても説明します。

mDNSブリッジ

C9800アーキテクチャでは、mDNS（Bonjourプロトコル）ブリッジングは、同じL2ブロードキャストドメインであるBonjour TTL=1プロトコルパケット転送を指します。 データプレーンでは、次の方法で、各WLANの有線ポートおよびワイヤレスインターフェイスで受信されたパケットのmDNSブリッジング機能が有効になります デフォルトで常に有効になっています。これは、mDNSブリッジングを機能させるためにグローバルmDNSも有効にする必要があるため、特定の設定を必要としないデフォルトの動作です。ただし、必要に応じて、WLAN設定でmDNSモードを変更することにより、WLANごとに無効にすることができます。Access Point(AP)Control and Provisioning of Wireless Access Points(CAPWAP)Multicast-Multicastモードがイネーブルの場合、C9800は各mDNSパケットをコントローラに設定されたAPマルチキャストグループにブリッジして、ワイヤレスクライアントが受信できるようにします。そうでない場合は、受信した各mDNSパケットのコピーを作成し、CAPWAPユニキャストトンネルを介して各APに個別ブリッジします。どちらのシナリオでも、C9800はmDNSパケットを、mDNSパケットを発信したクライアントのVLANで有線にブリッジします。

したがって、mDNSハンドシェイクに関与するデバイス（クライアントやChromecastなど）が同じサブネット上にある限り、mDNSは特別な設定なしでC9800で動作できます。理想的には、次のセクションで説明するように、mDNSゲートウェイを使用してmDNSトラフィックをフィルタリングすることをお勧めします。

mDNSゲートウェイ

AireOSワイヤレスコントローラで導入されたmDNSゲートウェイ機能は、16.11.1以降のCatalyst 9800ワイヤレスコントローラでもサポートされています。この機能はデフォルトでは無効になっており、グローバルに有効にした後は、WLANごとに有効/無効にできます。

mDNSゲートウェイ機能は、以前のAireOSワイヤレスコントローラと同じように動作し、C9800は有線およびワイヤレスインターフェイスでBonjourサービス（mDNSアドバタイズメントおよびクエリー）をリッスンし、内部データベース内の各ソース/ホストからアドバタイズされたこれらのBonjourサービス（AirPlay、AirPrint、Googlecastなど）をキャッシュし、不要なサービスををフィルタリングして、ネットワーク内内のマルチキャストフローをを回避できます。このようにして、異なるサブネットにそのようなサービスの送信元とクライアントを持つことができ、ネットワーク内のmDNSトラフィックを制御することもできます。

mDNSゲートウェイとして機能するC9800は、サービスを要求するクライアントに割り当てられたVLANのIPアドレスを使用して、これらのmDNS応答を送信する（キャッシュされたサービスの）クライアントからのmDNSクエリーに応答します。このため、mDNS/Bonjourサービスを必要とするクライアントが存在するC9800コントローラ上のすべてのVLANは、スイッチ仮想インターフェイス(SVI)で有効なIPアドレスが設定されている必要があります。

Bonjour/mDNSゲートウェイ機能の詳細については、『AireOSワイヤレスLANコントローラBonjourフェーズIII導入ガイド』を参照してください。

設定

ネットワーク図

次に、設定例の図を示します。目的は、図に示すように、mDNSゲートウェイを必要とする別のサブネットからのmDNSサービスをワイヤレスクライアントが使用できるようにすることです。

グラフィカルユーザインターフェイスによるmDNSゲートウェイの設定

ステップ 1：mDNSゲートウェイをグローバルに有効にするには、Configuration > Services > mDNSの順に選択します。Globalの下で、Enable mDNS Gatewayに切り替え、図に示すようにApplyを選択します。

ステップ 2（オプション）：カスタムサービスポリシーのカスタムmDNSサービスリストを設定します。デフォルトのmDNSサービスリストとサービスポリシーを使用する場合は、ステップ5に進みます。

Configuration > Services > mDNSの順に選択し、Service Policyタブで必要に応じて新しいサービスリストを設定します。C9800には、ほとんどのワイヤレスデバイスで使用される共通サービスが事前定義されています。特別な（利用できない）サービスが不要な場合は、事前に定義された利用可能なサービスを使用してリストを作成できますが、必要に応じて、新しいサービス（サービス定義を使用）を追加することもできます。

両方とも、着信(IN)方向のサービスリストと発信(OUT)方向のサービスリストが必要です（そのため、C9800に着信したときと発信したときに、必要なサービスがフィルタリングされます。したがって、両方のリストに同じサービスが存在することになります）。

1. INサービスのサービスリスト名を定義します。

2. IN方向を選択します。

3. Add Servicesを選択します。

4. 「使用可能なサービス」ドロップダウン・リストが表示されます。目的のサービスとメッセージタイプanyを選択します。

5.必要に応じて、手順を繰り返してサービスを追加します。

6.図に示すように、Apply to Deviceを選択します。

1. OUTサービスのサービスリスト名を定義します。

2. OUT方向を選択します。

3. 使用可能なサービスを割り当て済みサービスリストに移動します。

5.必要に応じて、手順を繰り返してサービスを追加します。

6.図に示すように、Apply to Deviceを選択します。

ヒント：以前のAireOS WLCからの移行タスク時に、AireOSのデフォルトのmDNSリストに基づいて新しいリストを作成できます。

ステップ 3（オプション）：カスタムサービスリスト（ステップ2）を使用する場合、これらのカスタムサービスリストで使用するカスタムmDNSサービスポリシーを定義する必要があります。Configuration > Services > mDNS > Service Policyの順に移動します。 Service Policyを選択し、次の手順を実行します。

1. サービスポリシー名を定義します。

2.カスタムサービスリストINをサービスリスト入力に追加します。

3.顧客サービス・リストOUTをサービス・リスト出力に追加します。

4. [場所]で、site-tag、Location Specific Services (LSS)、または希望する利用可能なオプションを選択します。この例では、図に示すようにsite-tagが使用されています。

ステップ 4： （任意）。mDNSサービスポリシーをポリシープロファイルに渡す。

Configuration > Tags & Profiles > Policy > Policy Profile Name > Advanced の順に移動し、mDNS Service Policyドロップダウンリストから選択し、以前に作成したカスタムmDNSサービスポリシー（この例ではmdns-policy1）を選択して、UpdateとApply to Device を選択します（次の図を参照）。

ステップ 5：Configuration > Tags & Profiles > WLANs > WLAN > Advancedの順に移動し、mDNS modeドロップダウンリストでGatewayを選択し、UpdateとApply to Deviceを選択します。デフォルトモードはブリッジングです（図に示すように、ドロップを使用してWLAN上のmDNSサービスを無効またはドロップできます）。

カスタムサービスポリシーを使用しない場合、WLANはポリシープロファイルに割り当てられたdefault-mdns-service-policyを使用します。このポリシープロファイルはmDNS default-service-listを使用します。次のコマンドを使用して、デフォルトサービスのリストを確認できます。

C9800#show running-config mdns-sd default-service-list

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

mDNS Default Service List

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

Service Name                                                   PTR Name

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

airtunes                      :                        _raop._tcp.local

airplay                       :                     _airplay._tcp.local

homesharing                   :                _home-sharing._tcp.local

google-chromecast             :                  _googlecast._tcp.local

printer-ipp                   :                         _ipp._tcp.local

printer-ipps                  :                        _ipps._tcp.local

printer-lpd                   :                     _printer._tcp.local

printer-socket                :              _pdl-datastream._tcp.local

itune-wireless-devicesharing2 :               _apple-mobdev2._tcp.local

コマンドラインインターフェイスによるmDNSゲートウェイの設定

ステップ 1：次のコマンドを使用して、mDNSをグローバルに有効にします。

C9800#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

C9800(config)#mdns-sd gateway

C9800(config-mdns-sd)#transport both

C9800(config-mdns-sd)#active-query timer 30

C9800(config-mdns-sd)#exit

C9800(config)#

ステップ 2（オプション）：INサービス用のカスタムサービスリストを設定し、必要なさまざまなサービスを使用可能なリストから追加します。

C9800(config)#mdns-sd service-list my-mdns-list IN

C9800(config-mdns-sl-in)#match ?

airplay                        airplay

airserver                      airserver

airtunes                       airtunes

amazon-fire-tv                 amazon-fire-tv

apple-airprint                 apple-airprint

apple-continuity               apple-continuity

apple-file-share               apple-file-share

apple-homekit                  apple-homekit

apple-itunes-library           apple-itunes-library

apple-itunes-music             apple-itunes-music

apple-itunes-photo             apple-itunes-photo

apple-keynote                  apple-keynote

apple-rdp                      apple-rdp

apple-remote-events            apple-remote-events

apple-remote-login             apple-remote-login

apple-screen-share             apple-screen-share

apple-timecapsule              apple-timecapsule

apple-timecapsule-mgmt         apple-timecapsule-mgmt

apple-windows-fileshare        apple-windows-fileshare

fax                            fax

google-chromecast              google-chromecast

homesharing                    homesharing

itune-wireless-devicesharing2  itune-wireless-devicesharing2

multifunction-printer          multifunction-printer

phillips-hue-lights            phillips-hue-lights

printer-ipp                    printer-ipp

printer-ipps                   printer-ipps

printer-lpd                    printer-lpd

printer-socket                 printer-socket

roku                           roku

scanner                        scanner

spotify                        spotify

web-server                     web-server

workstation                    workstation

C9800(config-mdns-sl-in)#match airtunes message-type any

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

OUTサービス用のカスタムサービスリストを設定し、必要なさまざまなサービスを使用可能なリストから追加します。

C9800(config)#mdns-sd service-list my-mdns-list-out OUT

C9800(config-mdns-sl-out)#match ?

airplay airplay

airserver airserver

airtunes airtunes

amazon-fire-tv amazon-fire-tv

apple-airprint apple-airprint

apple-continuity apple-continuity

apple-file-share apple-file-share

apple-homekit apple-homekit

apple-itunes-library apple-itunes-library

apple-itunes-music apple-itunes-music

apple-itunes-photo apple-itunes-photo

apple-keynote apple-keynote

apple-rdp apple-rdp

apple-remote-events apple-remote-events

apple-remote-login apple-remote-login

apple-screen-share apple-screen-share

apple-timecapsule apple-timecapsule

apple-timecapsule-mgmt apple-timecapsule-mgmt

apple-windows-fileshare apple-windows-fileshare

fax fax

google-chromecast google-chromecast

homesharing homesharing

itune-wireless-devicesharing2 itune-wireless-devicesharing2

multifunction-printer multifunction-printer

phillips-hue-lights phillips-hue-lights

printer-ipp printer-ipp

printer-ipps printer-ipps

printer-lpd printer-lpd

printer-socket printer-socket

roku roku

scanner scanner

spotify spotify

web-server web-server

workstation workstation

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

C9800(config-mdns-sl-out)#exit

ステップ 3（オプション）：次のコマンドを使用して、mDNSサービスポリシーを作成します。

C9800(config)#mdns-sd service-policy mdns-policy1

C9800(config-mdns-ser-pol)#location site-tag

C9800(config-mdns-ser-pol)#service-list my-mdns-list IN

C9800(config-mdns-ser-pol)#service-list my-mdns-list-out OUT

C9800(config-mdns-ser-pol)#exit

C9800(config)#

ステップ 4（任意）：次のコマンドを使用して、mDNSサービスポリシーをポリシープロファイルに追加します。

C9800(config)#wireless profile policy my-policy-profile

C9800(config-wireless-policy)#mdns-sd service-policy mdns-policy1

Warning! Ensure mDNS service policy is configured globally.

C9800(config-wireless-policy)#exit

ステップ 5：次のコマンドを使用して、WLANでmDNSゲートウェイを有効にします。

C9800(config)#wlan 9800-mdns

C9800(config-wlan)#shut

C9800(config-wlan)#mdns-sd gateway

Warning! Ensure global mDNS gateway is configured.

C9800(config-wlan)#no shut

C9800(config-wlan)#exit

アンカーと外部のシナリオ

mDNSゲートウェイ機能をモビリティアンカーWLANに実装する場合、外部WLCとアンカーWLCの両方がC9800で、ワイヤレスクライアントがアンカーコントローラのVLANからIPアドレスを取得するには、次のような動作と必要な設定を行います。

- アンカーコントローラは、mDNSゲートウェイとして機能するコントローラで、アンカーWLANに接続されたすべてのデバイスと対応するVLANからサービスをキャッシュし、キャッシュされたサービスに対してクエリーに応答します。

- C9800アンカーコントローラは、クエリに応答すると応答を送信し、サービスを要求するクライアントに割り当てられたVLANのSVI IPアドレスを使用できます。したがって、mDNSサービスを必要とするすべてのクライアントVLANは、アンカーのSVIにIPアドレスを持つ必要があります。

- mDNSゲートウェイは、外部WLCとアンカーWLCの両方でグローバルに有効にする必要があります。

- 外部コントローラとアンカーコントローラの両方で、同じmDNSサービスポリシーを同じサービス（デフォルトまたはカスタム）で使用できます。これらのサービスは、このアンカーWLANにリンクされているポリシープロファイルに割り当てることができます。これらの設定はすべて、このドキュメントですでに説明した手順と同じです。

- モビリティアンカーWLAN設定の唯一の設定上の違いは、次のとおりです。WLAN > Advanced設定に移動し、mDNS Modeの外部C9800でBridgingであり、アンカーC9800でGatewayである必要があります。

確認

ここでは、設定が正常に機能しているかどうかを確認します。

次のコマンドを使用します。

C9800#show mdns-sd summary

mDNS Gateway: Enabled

Active Query: Enabled

Periodicity (in minutes): 30

Transport Type: Both IPv4 and IPv6

WLCがmDNSサービスを実際にキャッシュしているか、どのサービス（モビリティアンカーWLAN内では、このキャッシュはアンカーコントローラ上で確認できます）をキャッシュしているかを確認します。このコマンドでmDNSキャッシュサービスをリストすると、サービスを提供しているデバイスの送信元MACアドレスやIPアドレスだけでなく、他のmDNSの詳細も確認できます。

C9800#show mdns-sd cache

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

RECORD-NAME                                    TTL      TYPE  ID    CLIENT-MAC       RR-RECORD-DATA

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

_googlecast._tcp.local                         4500     WLAN  2     48d6.d50c.a620   Chromecast-Ultra-687f65f66d478b2c787eac8bc7c9efad.

------------------------------------------------------------- SRV Records -------------------------------------------------------------

RECORD-NAME                                    TTL      TYPE  ID    CLIENT-MAC       RR-RECORD-DATA

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

Chromecast-Ultra-687f65f66d478b2c787eac8bc7c9  4500     WLAN  2     48d6.d50c.a620   0 0 8009 687f65f6-6d47-8b2c-787e-ac8bc7c9efad.loca

------------------------------------------------------------ A/AAAA Records -----------------------------------------------------------

RECORD-NAME                                    TTL      TYPE  ID    CLIENT-MAC       RR-RECORD-DATA

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

687f65f6-6d47-8b2c-787e-ac8bc7c9efad.local     4500     WLAN  2     48d6.d50c.a620   172.16.9.11

------------------------------------------------------------- TXT Records -------------------------------------------------------------

RECORD-NAME                                    TTL      TYPE  ID    CLIENT-MAC       RR-RECORD-DATA

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

Chromecast-Ultra-687f65f66d478b2c787eac8bc7c9  4500     WLAN  2     48d6.d50c.a620   [172]'id=687f65f66d478b2c787eac8bc7c9efad''cd=9A10

C9800#

トラブルシュート

ここでは、設定のトラブルシューティングに使用できる情報を示します。

C9800で発生するすべての交換、クエリ、キャッシュ動作、応答、ドロップ、エラーなどについての詳細を確認する必要がある場合は、問題を再現する間にC9800で次のトレースを収集します（サービスを提供するデバイスを接続し、クライアントがサービスを要求した場合、必要なサービスを検出しようとします）。

1. C9800: set platform software trace wncd <0-7> chassis active R0 mdns debugで次のコマンドを実行します。

2. 問題を再現します。

3. 最後に、次のコマンドを実行して、有効になっているトレースを収集します。show platform software trace message wncd <0-7> chassis active R0

関連情報

- ワイヤレス LAN コントローラ（WLC）上の mDNS ゲートウェイのトラブルシューティングと理解

- テクニカル サポートとドキュメント - Cisco Systems