内容

概要

前提条件

要件

使用するコンポーネント

表記法

音声 VLAN の概要

設定

ネットワーク図

設定

信頼できる CoS 値に基づいた場合

シスコ以外の IP Phone を使用する場合

IP ヘッダーの信頼できる DSCP 値に基づいた場合

確認

関連情報

概要

このドキュメントでは、Cisco Catalyst 2960/2950 シリーズ スイッチ上の音声 VLAN の設定例を示します。具体的には、Cisco Catalyst 2950 スイッチ上の音声 VLAN 機能の設定方法について説明します。

前提条件

要件

この設定を行う前に、以下の要件を満たしていることを確認してください。

- Cisco Catalyst 2960/2950 シリーズ スイッチの設定に関する基本的な知識がある。

- 音声 VLAN に関する基本的な知識がある。

使用するコンポーネント

このドキュメントの情報は、Cisco Catalyst 2950 スイッチに基づくものです。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。

表記法

ドキュメント表記の詳細については、『シスコ テクニカル ティップスの表記法』を参照してください。

音声 VLAN の概要

音声 VLAN 機能を使用すると、スイッチ ポートでレイヤ 3 IP プレシデンスおよびレイヤ 2 サービス クラス（CoS）値を使用して、IP Phone から音声トラフィックを伝送できます。スイッチでは、IEEE 802.1p CoS に基づく Quality of Service（QoS）をサポートしています。QoS は、分類およびスケジューリングを使用して、スイッチからネットワーク トラフィックを送信します。IEEE 802.1p プライオリティに基づいてトラフィックを転送するように Cisco IP Phone を設定できます。また、IP Phone によって割り当てられたトラフィック プライオリティを信頼または上書きするようにスイッチを設定できます。

IP Phone と接続するスイッチ ポートを、1 つの VLAN は音声トラフィック用に、もう 1 つの VLAN は IP Phone のアクセス ポートに接続しているデバイスからのデータ トラフィック用に使用するように設定できます。スイッチ上のアクセス ポートを設定して、Cisco Discovery Protocol（CDP）パケットを送信することができます。CDP には、接続する IP Phone に対して、次のいずれかの方法でスイッチに音声トラフィックを送信するように指定します。

- レイヤ 2 CoS プライオリティ値のタグ付き音声 VLAN による送信

- レイヤ 2 CoS プライオリティ値のタグ付きアクセス VLAN による送信

- タグなし（レイヤ 2 CoS プライオリティ値なし）のアクセス VLAN による送信

スイッチは IP Phone のアクセス ポートに接続されているデバイスから送信されるデータ トラフィックを処理できます。CDP パケットを送信するスイッチ ポートを設定できます。この CDP は、電話機上のアクセス ポート用にモード（信頼できるモードまたは信頼できないモード）を設定するように、接続した IP Phone に指示します。

信頼できるモードでは、IP Phone のアクセス ポートは PC からのトラフィックを変更せずに通過させます。信頼できないモードでは、IP Phone のアクセス ポートは設定されたレイヤ 2 CoS 値を含む IEEE 802.1Q フレーム内のすべてのトラフィックを受信します。デフォルトのレイヤ 2 CoS 値は 0 です。信頼できないモードがデフォルト設定です。

設定

ここでは、このドキュメントで説明する音声 VLAN 機能の設定に必要な情報を提供します。

スイッチでは、音声 VLAN 機能はデフォルトでディセーブルに設定されています。ポートで音声 VLAN をイネーブルにすると、すべてのタグなしトラフィックは、デフォルトの CoS プライオリティに従って送信されます。音声 VLAN をイネーブルにする前に、mls qos グローバル コンフィギュレーション コマンドを入力してスイッチ上で QoS をイネーブルに設定し、さらに mls qos trust cos インターフェイス コンフィギュレーション コマンドを入力してポートの信頼状態を trust に設定します。

デフォルトでは、スイッチ ポートはハードウェア内でタグ付きフレームをすべてドロップします。スイッチ ポートでタグ付きフレームを受け入れるには、次のコマンドのいずれかをポートに設定する必要があります。

- switchport voice vlan dot1p

- switchport voice vlan V_VLAN_ID

- switchport mode trunk

switchport voice vlan dot1pコマンドを使用して、IEEE 802.1pプライオリティタギングを使用して、ネイティブ（アクセス）VLAN経由で高いプライオリティを持つすべての音声トラフィックを転送するようにスイッチポートに指示します。

switchport voice vlan V_VLAN_IDコマンドを使用して、指定した音声VLANを設定します。これにより、IP Phoneはレイヤ2 CoS値を持つIEEE 802.1Qフレームで音声トラフィックを送信できます。Cisco IP Phone はタグなしの音声トラフィックを送信することも、独自の設定を使用してスイッチのアクセス VLAN に音声トラフィックを送信することもできます。

IP Phone に接続されているデバイス（PC）まで信頼状態を拡張するには、switchport priority extend trust コマンドを使用します。このコマンドを実行することにより、スイッチは、Cisco IP Phone のアクセス ポートに接続されたデバイスからのデータ パケットの処理方法を IP Phone に指示します。PC によって生成されたパケットは、割り当てられた CoS 値を 802.1q ヘッダーで使用します。電話機は PC から電話ポートに着信するフレームのプライオリティを変更する必要はありません（trust）。

IP Phone が接続されているスイッチ ポートで CDP をイネーブルにする必要があります。デフォルトでは、CDP はスイッチ インターフェイス上でグローバルにイネーブルになっています。CDP は、スイッチ ポートと通信するように Cisco IP Phone を設定するために、スイッチと Cisco IP Phone の間で使用されるメカニズムです。CDP は Cisco Systems 独自の形式です。他社の電話では、この方法を使用してスイッチのポート設定と一致するように IP Phone を設定できない場合があります。

注：このセクションで使用されているコマンドの詳細を調べるには、Command Lookup Tool（登録ユーザ専用）を参照してください。一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことをご了承ください。

ネットワーク図

このドキュメントでは、次のネットワーク セットアップを使用します。

この図は、Cisco Catalyst 2950 スイッチでの音声 VLAN の設定例です。スイッチ ポート FastEthernet 0/6 および 0/8 が Cisco IP Phone に接続され、両方の IP Phone のアクセス ポートが PC に接続されています。

設定

このドキュメントでは、次の構成を使用します。

信頼できる CoS 値に基づいた場合

2950 スイッチでは、音声トラフィックに IEEE 802.1p プライオリティ タギングを使用するように、dot1p を使用した音声 VLAN 用の FastEthernet 0/6 ポートに VLAN 10 が設定されており、Cisco IP Phone のアクセス ポートに接続された PC からのデータ トラフィック用に trust モードが設定されています。ここで、Cisco IP Phone は CoS によってラップトップまたは PC を信頼しており、データ トラフィックはネイティブ VLAN を使用します。この構成は通常、管理ワークステーション、優先順位の高いユーザ、または高 CoS 値のアプリケーションに使用されます。

Cisco の電話がスイッチで CDP で通信すると、信頼境界は常に IP Phone まで拡張されます。つまり、IP Phone のパケットが CoS 5 からデフォルトの CoS に変更されることは決してありません。これが switchport priority extend trust コマンドをラップトップまたは PC に使用する理由です。このコマンドは CDP を介して送信され、優先順位の高いパケットを書き換えないよう IP Phone に通知します。

FastEthernet 0/8 ポートには、音声およびデータ トラフィック用に個別の VLAN が設定されます。この例では、VLAN 10 が音声トラフィックに使用され、VLAN 20 がデータ トラフィックに使用されます。この設定は、ラップトップも PC も信頼しない、一般的な Cisco IP Phone で使用されます。トラフィックは、IEEE 802.1Q フレーム タイプを使用します。

mls qos trust cos コマンドを使用すると、Catalyst スイッチのポートはイーサネット ヘッダーの CoS 値を参照して入力トラフィックを分類し、Cisco IP Phone から発信されたタグ付きパケットの CoS 値を信頼します。デフォルトでは、イーサネット ポートは信頼できないため、音声 VLAN とデータ VLAN からのトラフィックは信頼されません。

ジッターを妨げているポートを終了しようとする場合は、音声パケットの行頭権限を付与するために priority-queue out コマンドを使用します。spanning tree portfast コマンドはスパニング ツリー プロトコルからインターフェイスを削除し、bpduguard コマンドは、IP Phone を抜いた後、何者かが新しいスイッチを接続しようとする場合にネットワークを保護します。仮にスイッチが接続されても、ポートはエラー ディセーブルになります。これらは通常は電話ポートに追加されます。

Cisco Catalyst 2950 スイッチ

Switch#configure terminal

Switch(config)#mls qos

Switch(config)#interface fastethernet 0/6

!--- Set the interface to classify incoming traffic packets by using the packet CoS value.

Switch(config-if)#mls qos trust cos

!--- Configure the phone to use IEEE 802.1p priority tagging for voice traffic.

Switch(config-if)#switchport voice vlan dot1p

Switch(config-if)#switchport voice vlan 10

!--- Trust the CoS value the PC sends in on the data VLAN.

Switch(config-if)#switchport priority extend trust

Switch(config-if)#priority-queue out

Switch(config-if)#spanning-tree portfast

Switch(config-if)#spanning-tree bpduguard enable

Switch(config-if)#exit

Switch(config)#interface gigabitethernet0/8

Switch(config-if)#mls qos trust cos

!--- Configure specified VLANs for voice and data traffic.

Switch(config-if)#switchport voice vlan 10

Switch(config-if)#switchport access vlan 20

Switch(config-if)#priority-queue out

Switch(config-if)#spanning-tree portfast

Switch(config-if)#spanning-tree bpduguard enable

Switch(config-if)#exit

シスコ以外の IP Phone を使用する場合

Cisco 独自の CDP を認識しないで、自動的にトランク ポートを設定するシスコ以外の IP Phone を使用する場合は、トランクを手動で設定する必要があります。この設定例では、VLAN を 10 および 20 に制限し、デフォルトのネイティブ VLAN 1 または VLAN 0 をブロックします。VLAN 10 が音声トラフィックに使用され、VLAN 20 がデータ トラフィックに使用されます。シスコ以外の IP Phone は、マニュアル構築または、起動時にダウンロードする TFTP ファイルによって、タグ付きパケット用の正しい VLAN を学習します。この例では、次の設定を使用します。

Cisco Catalyst 2950 スイッチ

Switch#configure terminal

Switch(config)#interface fastethernet 0/6

!---Trusts tagged packets CoS value; all untagged packets reset DSCP value in IP header to 0.

Switch(config-if)#mls qos trust cos

!--- Turn off DTP (dynamic trunking protocol).

Switch(config-if)#switchport nonegotiate

!--- Forces the port into trunking mode.

Switch(config-if)#switchport mode trunk

Switch(config-if)#switchport trunk native vlan 20

!--- Restricts the VLANs.

Switch(config-if)#switchport trunk allowed vlans 10,20

Switch(config-if)#priority-queue out

Switch(config-if)#spanning-tree portfast trunk

Switch(config-if)#spanning-tree bpduguard enable

Switch(config-if)#exit

IP ヘッダーの信頼できる DSCP 値に基づいた場合

ここでは、CoS 値の代わりに、信頼できる DiffService Code Point（DSCP）値を使用します。CoS は L2 ヘッダーを確認するだけでパケットの重要度を理解する方法を提供するためです。DSCP は、IP パケット内の 6 ビットのフィールドです。IP ヘッダーの DSCP 値を信頼するには、mls qos trust DSCP コマンドを使用します。この場合、IP Phone ではパケットに DSCP を正しく設定し、ラップトップで DSCP を正しく設定します。この例では、次の設定を使用します。

Cisco Catalyst 2950 スイッチ

Switch#configure terminal

Switch(config)#interface fastethernet 0/6

!---Trust the DSCP value in the IP header.

Switch(config-if)#mls qos trust DSCP

!--- IP phone VLAN

Switch(config-if)#switchport voice vlan 10

Switch(config-if)#switchport access vlan 20

!--- Trust the DSCP value the PC sends in on the data VLAN.

Switch(config-if)#switchport priority extend trust

Switch(config-if)#priority-queue out

Switch(config-if)#spanning-tree portfast

Switch(config-if)#spanning-tree bpduguard enable

Switch(config-if)#exit

確認

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

アウトプット インタープリタ ツール（登録ユーザ専用）（OIT）は、特定の show コマンドをサポートします。OIT を使用して、show コマンドの出力の分析を表示します。

- 音声 VLAN 設定を確認するには、show interfaces interface-id switchport コマンドを使用します。

以下に、いくつかの例を示します。

Switch#show interfaces FastEthernet 0/6 switchport

Name: Fa0/6

Switchport: Enabled

Administrative Mode: dynamic desirable

Operational Mode: static access

Administrative Trunking Encapsulation: dot1q

Operational Trunking Encapsulation: native

Negotiation of Trunking: On

Access Mode VLAN: 1 (default)

Trunking Native Mode VLAN: 1 (default)

Voice VLAN: dot1p

Administrative private-vlan host-association: none

Administrative private-vlan mapping: none

Administrative private-vlan trunk native VLAN: none

Administrative private-vlan trunk encapsulation: dot1q

Administrative private-vlan trunk normal VLANs: none

Administrative private-vlan trunk private VLANs: none

Operational private-vlan: none

Trunking VLANs Enabled: ALL

Pruning VLANs Enabled: 2-1001

Capture Mode Disabled

Capture VLANs Allowed: ALL

Protected: false

Unknown unicast blocked: disabled

Unknown multicast blocked: disabled

Appliance trust: trusted

- 特定のインターフェイスの音声 VLAN エントリを確認するには、show running-config interface interface-id コマンドを使用します。

以下に、いくつかの例を示します。

Switch#show running-config interface fastEthernet 0/6

Building configuration...

Current configuration : 139 bytes

!

interface FastEthernet0/6

switchport voice vlan dot1p

switchport voice vlan 10

switchport priority extend trust

mls qos trust cos

priority-queue out

spanning-tree portfast

spanning-tree bpduguard enable

end

Switch#show running-config interface fastEthernet 0/8

Building configuration...

Current configuration : 137 bytes

!

interface FastEthernet0/8

switchport voice vlan 10

switchport access vlan 20

mls qos trust cos

priority-queue out

spanning-tree portfast

spanning-tree bpduguard enable

end

関連情報

- Cisco Catalyst 2950 シリーズ スイッチのサポート ページ

- Cisco Catalyst 2960 シリーズ スイッチのサポート ページ

- スイッチ製品に関するサポート ページ

- LAN スイッチング テクノロジーに関するサポート ページ

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