Catalyst 4500 シリーズ スイッチ Cisco IOS ソフトウェア コンフィギュレーション ガイド リリース IOS XE 3.3.0SG および IOS 15.1(1)SG
SmartPort マクロの設定
SmartPort マクロの設定
発行日;2012/09/05 | 英語版ドキュメント(2012/04/17 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 14MB) | フィードバック

目次

SmartPort マクロの設定

SmartPort マクロおよびスタティック SmartPort について

SmartPort マクロの設定

マクロに渡されるパラメータ

マクロ パラメータのヘルプ

SmartPort マクロのデフォルト設定

cisco-global

cisco-desktop

cisco-phone

cisco-router

cisco-switch

SmartPort マクロの設定時の注意事項

SmartPort マクロの作成

SmartPort マクロの適用

cisco-global

cisco-desktop

cisco-phone

cisco-switch

cisco-router

SmartPort マクロの表示

スタティック SmartPort マクロの設定

デフォルトのスタティック SmartPort の設定

スタティック SmartPort の設定ガイドライン

スタティック SmartPort マクロの適用

SmartPort マクロの設定

この章では、スイッチに SmartPort およびスタティック SmartPort マクロを設定して適用する方法について説明します。この章で説明する内容は、次のとおりです。

「SmartPort マクロおよびスタティック SmartPort について」

「SmartPort マクロの設定」

「SmartPort マクロの表示」

「スタティック SmartPort マクロの設定」


) この章で使用するスイッチ コマンドの構文および使用方法の詳細については、次の URL で『Cisco Catalyst 4500 Series Switch Command Reference』と関連資料を参照してください。

http://www.cisco.com/en/US/products//hw/switches/ps4324/index.html

『Catalyst 4500 Series Switch Command Reference』に掲載されていないコマンドについては、より詳細な Cisco IOS ライブラリを参照してください。次の URL でCisco IOS コマンド リファレンスと関連資料を参照してください。

http://www.cisco.com/en/US/products/ps6350/index.html


SmartPort マクロおよびスタティック SmartPort について

SmartPort マクロは、一般的な設定を保存したり、共有する作業を簡単に実行するための方法を提供します。SmartPort マクロを使用して、ネットワーク内のスイッチの位置に基づいて機能および設定をイネーブルにしたり、ネットワーク中に多数の設定を導入したりします。

各 SmartPort マクロは、ユーザが定義した Command Line Interface(CLI; コマンドライン インターフェイス)コマンドのセットです。SmartPort マクロ セットには新しい CLI コマンドは含まれません。各 SmartPort マクロは既存の CLI コマンドの集合です。

SmartPort マクロをインターフェイスに適用すると、マクロに含まれる CLI コマンドがインターフェイスに設定されますが、 インターフェイスに SmartPort マクロを適用しても、インターフェイスの既存の設定は失われません。新しいコマンドはインターフェイスに追加されて、実行コンフィギュレーション ファイルに保存されます。

Smartport マクロに加えて、ポートに接続されたデバイスに応じて手動で適用するポート設定を提供する スタティック SmartPort マクロがあります。インターフェイスに静的 SmartPort マクロを適用すると、マクロ内の CLI コマンドが既存のポート設定に追加されます。ポート上でリンクダウン イベントが発生しても、スイッチはスタティック マクロを削除しません。

シスコのデフォルト SmartPort マクロは、スイッチ ソフトウェアに組み込まれています( 表 18-1 を参照)。これらのマクロやコマンドは、 show parser macro ユーザ EXEC コマンドを使用して表示できます。

 

表 18-1 シスコのデフォルト SmartPort マクロ

マクロ名1
説明

cisco-global

ラピッド PVST+、ループガード、リンク ステート障害用のダイナミック ポート エラー回復をイネーブルにするには、このグローバル コンフィギュレーション マクロを使用します。

cisco-desktop

PC のようなデスクトップ デバイスをスイッチ ポートに接続する場合、ネットワーク セキュリティと信頼性を高めるために、このインターフェイス コンフィギュレーション マクロを使用します。

cisco-phone

Cisco IP Phone を装備した PC のようなデスクトップ デバイスをスイッチ ポートに接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。このマクロは、 cisco-desktop マクロの拡張機能で、同じセキュリティ機能と復元力機能を提供します。ただし、遅延に影響されやすい音声トラフィックを適切に処理するために、専用音声 VLAN が追加されています。

cisco-switch

GigaStack モジュールまたは GBIC を使用して、アクセス スイッチとディストリビューション スイッチ、またはアクセス スイッチ同士を接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。

cisco-router

スイッチと WAN ルータを接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。

1.シスコのデフォルト SmartPort マクロは、スイッチで稼働するソフトウェアのバージョンによって異なります。

Catalyst スイッチ向けには、シスコが推奨するテスト済みのベースライン コンフィギュレーション テンプレートも提供されています。オンライン リファレンス ガイドのテンプレートには、ポート使用に応じて SmartPort マクロを作成する CLI コマンドが含まれています。このコンフィギュレーション テンプレートを使用して SmartPort マクロを作成することにより、シスコ推奨のネットワーク設計および設定を構築し、導入します。

SmartPort マクロの設定

新しい SmartPort マクロを作成するか、既存のマクロをテンプレートとして使用すると、ご使用のアプリケーション専用の新しいマクロを作成できます。作成したマクロは、特定のインターフェイスまたはインターフェイス範囲に適用できます。

ここでは、次の情報について説明します。

「マクロに渡されるパラメータ」

「SmartPort マクロのデフォルト設定」

「SmartPort マクロの設定時の注意事項」

「SmartPort マクロの作成」

「SmartPort マクロの適用」

マクロに渡されるパラメータ

コマンドの一部にはすべてのインターフェイスに対する汎用性のないものがあります。たとえば、レイヤ 2 インターフェイスの VLAN ID およびレイヤ 3 インターフェイスの IP アドレスです。マクロにこのようなコマンドを定義すると、このマクロを別のインターフェイスに適用する前に、パラメータ(VLAN ID または IP アドレスなど)の値を変更する必要があります。あるいは、パラメータの各値を設定するために別々のマクロを作成する必要があります。

マクロのインフラストラクチャは、マクロを適用している間にパラメータを受け入れるよう拡張できます。パラメータはキーワードと値のペアとして、渡されます。

CLI で入力できるキーワード/値ペア数は最大 3 つです。最初のパラメータはキーワードである必要があります。2 番めのパラメータは対応する値です。3 番めのパラメータは 2 番めのキーワード/値ペアのキーワードです。次に、パラメータをコマンドマクロに渡す例を示します。

Switch(config)# macro name parameter-test
Enter macro commands one per line. End with the character '@'.
switchport mode access
switchport access vlan $VLANID
switchport port-security
switchport port-security maximum $MAXHOST
 

上記のマクロがパラメータなしでインターフェイスに適用された場合、無効なコマンドは失敗します。代わりに、適切なキーワード/値ペアのパラメータを使用して、マクロを次のように適用する必要があります。

Switch(config-if)# macro apply parameter-test $VLANID 1 $MAXHOST 5
 

上記のコマンドを実行すると、$VLANID を 1 に、$MAXHOST を 5 に置き換えたあとでマクロが適用されます。マクロ内では任意のストリングをキーワードとして指定できることに注意してください。

マクロ パラメータのヘルプ

マクロをインターフェイスまたはスイッチに適用する場合、マクロのキーワードを覚えておくことは困難です。マクロには、必須キーワードの定義を含めることができます。これらのキーワード値を入力せずにマクロを適用した場合、コマンドは無効と見なされ失敗します。

マクロで定義されたキーワードに関するヘルプを提供するようマクロ インフラストラクチャを拡張できます。マクロを作成するとき、ヘルプ ストリングを(コメントとして)指定し、そのマクロの必須キーワードを一覧表示するように設定できます。

次に、キーワードに関するヘルプ ストリングを指定する例を示します。

Switch(config)# macro name test
switchport access vlan $VLANID
switchport port-security maximum $MAX
#macro keywords $VLANID $MAX
 

ヘルプ ストリングはマクロ内のどこにでも配置できます。次に、ヘルプ ストリングを指定する別の例を示します。

Switch(config)# macro name test
switchport access vlan $VLANID
#macro keywords $VLANID
switchport port-security maximum $MAX
#macro keywords $MAX

SmartPort マクロのデフォルト設定

ここでは、サポートされているマクロのデフォルト設定を示します。これらのマクロは表示および適用だけが可能です。ユーザはこれらを変更できません。

「cisco-global」

「cisco-desktop」

「cisco-phone」

「cisco-router」

「cisco-switch」

cisco-global

次に、cisco-global マクロの例を示します。

# Enable dynamic port error recovery for link state failures.
errdisable recovery cause link-flap
errdisable recovery interval 60
 
# VTP requires Transparent mode for future 802.1x Guest VLAN
# and current Best Practice
vtp domain [smartports]
vtp mode transparent
 
# Enable aggressive mode UDLD on all fiber uplinks
udld aggressive
 
# Enable Rapid PVST+ and Loopguard
spanning-tree mode rapid-pvst
spanning-tree loopguard default
spanning-tree extend system-id

cisco-desktop

次に、cisco-desktop マクロの例を示します。

# Basic interface - Enable data VLAN only
# Recommended value for access vlan (AVID) should not be 1
switchport access vlan $AVID
switchport mode access
# Enable port security limiting port to a single
# MAC address -- that of desktop
switchport port-security
# Ensure port-security age is greater than one minute
# and use inactivity timer
# “Port-security maximum 1” is the default and will not
# Show up in the config
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
# Configure port as an edge network port
spanning-tree portfast
spanning-tree bpduguard enable

cisco-phone

次に、cisco-phone マクロの例を示します。

# VoIP enabled interface - Enable data VLAN
# and voice VLAN (VVID)
# Recommended value for access vlan (AVID) should not be 1\
switchport access vlan $AVID
switchport mode access
# Update the Voice VLAN (VVID) value which should be
# different from data VLAN
# Recommended value for voice vlan (VVID) should not be 1
switchport voice vlan $VVID
# Enable port security limiting port to a 2 MAC
# addressess -- One for desktop and two for phone
switchport port-security
switchport port-security maximum 2
# Ensure port-security age is greater than one minute
# and use inactivity timer
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
# Enable auto-qos to extend trust to attached Cisco phone
auto qos voip cisco-phone
# Configure port as an edge network port
spanning-tree portfast
spanning-tree bpduguard enable@

cisco-router

次に、cisco-router マクロの例を示します。

# Access Uplink to Distribution
switchport trunk encapsulation dot1q
# Define unique Native VLAN on trunk ports
# Recommended value for native vlan (NVID) should not be 1
switchport trunk native vlan $NVID
# Update the allowed VLAN range (VRANGE) such that it
# includes data, voice and native VLANs
# switchport trunk allowed vlan $VRANGE
# Hardcode trunk and disable negotiation to
# speed up convergence
# Hardcode speed and duplex to router
switchport mode trunk
switchport nonegotiate
speed 100
duplex full
# Configure qos to trust this interface
auto qos voip trust
qos trust dscp
# Ensure fast access to the network when enabling the interface.
# Ensure that switch devices cannot become active on the interface.
spanning-tree portfast
spanning-tree bpduguard enable

cisco-switch

次に、cisco-switch マクロの例を示します。

# Access Uplink to Distribution
switchport trunk encapsulation dot1q
# Define unique Native VLAN on trunk ports
# Recommended value for native vlan (NVID) should not be 1
switchport trunk native vlan $NVID
# Update the allowed VLAN range (VRANGE) such that it
# includes data, voice and native VLANs
# switchport trunk allowed vlan $VRANGE
# Hardcode trunk and disable negotiation to
# speed up convergence
switchport mode trunk
switchport nonegotiate
# Configure qos to trust this interface
auto qos voip trust
# 802.1w defines the link as pt-pt for rapid convergence
spanning-tree link-type point-to-point

SmartPort マクロの設定時の注意事項

スイッチでマクロを設定するときには、次の注意事項に従ってください。

マクロを適用した際に、構文エラーまたは設定エラーが発生してコマンドが失敗した場合、マクロは残りのコマンドを引き続きインターフェイスに適用します。

cisco-global はグローバル コンフィギュレーション モードで適用する必要があります。他のインターフェイス レベルのマクロよりも先にこのマクロを適用することを推奨します。

インターフェイス上でシステム定義マクロ(cisco-desktop、cisco-phone、cisco-switch、および cisco-router)を適用する場合は、特定のキーワードが必要です。

cisco-phone マクロを使用してポート セキュリティを適用する場合、最大のポート セキュリティは 2 となります(switchport port-security maximum 2)。

キーワード/値のペアは、システム定義マクロごとに最大 3 つまで指定できます。

マクロを作成する際に、 exit end コマンド、または interface interface-id コマンドを使用してコマンド モードを変更しないでください。これらのコマンドを使用すると、 exit end 、または interface interface-id に続くコマンドが異なるコマンド モードで実行されることがあります。

マクロを作成するときは、同じコンフィギュレーション モードの CLI コマンドを使用してください。

一意の値の割り当てを必要とするマクロを作成する場合、 parameter value キーワードを使用して、そのインターフェイスに固有の値を指定します。キーワードの照合では、大文字と小文字が区別されます。キーワードで一致が見られると、すべて対応する値に置き換えられます。キーワードが完全に一致すると、それが長い文字列の一部であったとしても一致と見なされて、対応する値に置き換えられます。

マクロ名では、大文字と小文字が区別されます。たとえば、コマンド macro name Sample-Macro macro name sample-macro は、別のマクロになります。

一部のマクロには、パラメータ値が必要なキーワードが含まれます。 macro global apply macro-name ? グローバル コンフィギュレーション コマンドまたは macro apply macro-name ? インターフェイス コンフィギュレーション コマンドを使用すると、マクロで必要な値を一覧表示できます。キーワード値を入力せずにマクロを適用した場合、コマンドは無効となり、マクロは適用されません。

スイッチまたはスイッチ インターフェイスにマクロをグローバルに適用しても、インターフェイスの既存の設定はすべて維持されます。これは、差分設定に適用する場合に役立ちます。

コマンドを追加または削除してマクロ定義を変更する場合、元のマクロを適用したインターフェイスに変更は反映されません。新規または変更済みのコマンドを適用するには、インターフェイスにアップデート済みマクロを再適用する必要があります。

マクロを適用およびデバッグして、構文エラーまたは設定エラーを検出するには、 macro global trace macro-name グローバル コンフィギュレーション コマンド、または macro trace macro-name インターフェイス コンフィギュレーション コマンドを使用します。構文エラーまたは設定エラーが原因でコマンドが失敗した場合でも、マクロは引き続き残りのコマンドを適用します。

特定のインターフェイス タイプ固有の CLI コマンドもあります。設定を受け入れないインターフェイスにマクロを適用すると、マクロは構文チェックまたは設定チェックに失敗し、スイッチはエラー メッセージを返します。

インターフェイス範囲へのマクロの適用は、単一インターフェイスへのマクロの適用と同じです。インターフェイスの範囲を使用する場合、マクロはその範囲内の各インターフェイスに順番に適用されます。1 つのインターフェイスでマクロ コマンドの実行に失敗しても、マクロは残りのインターフェイス上に適用されます。

マクロをスイッチまたはスイッチ インターフェイスに適用すると、マクロ名が自動的にスイッチまたはインターフェイスのマクロの説明に追加されます。 show parser macro description ユーザ EXEC コマンドを使用して、適用されたコマンドとマクロ名を表示できます。

ユーザ設定可能なマクロには、最大 3000 文字のコマンドとコメントを保持できるバッファがあります。各改行文字は、2 文字を使用します。空の行は、空としてカウントされます。

シスコのデフォルト SmartPort マクロは、スイッチ ソフトウェアに組み込まれています( 表 18-1 を参照)。これらのマクロやコマンドは、 show parser macro ユーザ EXEC コマンドを使用して表示できます。

インターフェイスにシスコ デフォルト Smartport マクロを適用する場合は、次の注意事項に従ってください。

show parser macro ユーザ EXEC コマンドを使用して、スイッチ上のすべてのマクロを表示します。特定のマクロの内容を表示するには、 show parser macro macro-name ユーザ EXEC コマンドを使用します。

$ で始まるキーワードには、一意のパラメータ値が必要です。 parameter value キーワードを使用して、必要な値をシスコ デフォルト マクロに追加します。

シスコ デフォルト マクロは $ という文字を使用しているので、必須キーワードを識別するのに役立ちます。マクロを作成する場合、 $ という文字を使用したキーワードの定義には制限がありません。

SmartPort マクロの作成

SmartPort マクロを作成するには、次の作業を行います。

 

コマンド
目的

ステップ 1

Switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Switch(config)# macro name macro-name

マクロ定義を作成し、マクロ名を入力します。マクロ定義には、最大 3000 文字を使用できます。

1 行ごとに 1 つのマクロ コマンドを入力します。マクロを終了するには、 @ 文字を使用します。マクロ内にコメント テキストを入力するには、行の最初に # 文字を使用します。

マクロ名では、大文字と小文字が区別されます。たとえば、コマンド macro name Sample-Macro macro name sample-macro は、別のマクロになります。

exit または end コマンドを使用しないこと、またはマクロで interface interface-id を使用して、コマンド モードを変更しないことを推奨します。 exit または end 、または interface interface-id に続くコマンドが別のコマンド モードで実行されることがあるためです。最良の結果を出すには、マクロ内のすべてのコマンドが同じコンフィギュレーション モードである必要があります。

グローバル コンフィギュレーション コマンドでは、マクロ定義だけが削除されます。マクロがすでに適用されているインターフェイスの設定には、影響はありません。

ステップ 3

Switch(config)# end

特権 EXEC モードに戻ります。

ステップ 4

Switch# show parser macro name macro-name

マクロが作成されたことを確認します。

SmartPort マクロの適用

SmartPort マクロを適用するには、次の作業を行います。

 

コマンド
目的

ステップ 1

Switch# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Switch(config)# macro global { apply | trace } macro-name [ parameter { value }] [ parameter { value }] [ parameter { value }]

マクロで定義された各コマンドをスイッチに適用するには、 macro global apply macro-name を入力します。マクロを適用およびデバッグして、構文エラーまたは設定エラーを検出するには、 macro global trace macro-name を指定します。

(任意)スイッチに固有の一意のパラメータ値を指定します。最高 3 つのキーワードと値の組み合わせを入力できます。パラメータ キーワードの照合では、大文字と小文字が区別されます。キーワードで一致が見られると、すべて対応する値に置き換えられます。

一部のマクロには、パラメータ値が必要なキーワードが含まれます。 macro global apply macro-name ? コマンドを使用すると、マクロで必要な値を一覧表示できます。キーワード値を入力せずにマクロを適用した場合、コマンドは無効となり、マクロは適用されません。

ステップ 3

Switch(config)# macro global description text

(任意)スイッチに適用されるマクロの説明を入力します。

ステップ 4

Switch(config-if)# interface interface-id

(任意)インターフェイス コンフィギュレーション モードを開始して、マクロを適用するインターフェイスを指定します。

ステップ 5

Switch(config-if)# default interface interface-id

(任意)指定したインターフェイスからすべての設定を消去します。

ステップ 6

Switch(config-if)# macro { apply | trace } macro-name [ parameter { value }] [ parameter { value }] [ parameter { value }]

マクロで定義された各コマンドをインターフェイスに適用するには、 macro apply macro-name を入力します。マクロを適用およびデバッグして、構文エラーまたは設定エラーを検出するには、 macro trace macro-name を指定します。

(任意)インターフェイスに固有の一意のパラメータ値を指定します。最高 3 つのキーワードと値の組み合わせを入力できます。パラメータ キーワードの照合では、大文字と小文字が区別されます。キーワードで一致が見られると、すべて対応する値に置き換えられます。

一部のマクロには、パラメータ値が必要なキーワードが含まれます。 macro apply macro-name ? コマンドを使用すると、マクロで必要な値を一覧表示できます。キーワード値を入力せずにマクロを適用した場合、コマンドは無効となり、マクロは適用されません。

次に、このコマンドを適用する例を示します。

Switch(config-if)# macro apply cisco-phone ?
WORD Keyword to replace with a value e.g. $AVID, $VVID
<cr>

ステップ 7

Switch(config-if)# macro description text

(任意)インターフェイスに適用されるマクロの説明を入力します。

ステップ 8

Switch(config-if)# end

特権 EXEC モードに戻ります。

ステップ 9

Switch# show parser macro description [ interface interface-id ]

マクロがインターフェイスに適用されたことを確認します。

ステップ 10

Switch# copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

スイッチ上のグローバル マクロ適用済みの設定を削除するには、マクロ内にある各コマンドの no バージョンだけを入力します。 default interface interface-id インターフェイス コンフィギュレーション コマンドを使用すれば、インターフェイスで適用されたマクロの設定を削除できます。

macro name グローバル コンフィギュレーション コマンドの no 形式を使用すると、マクロ定義だけを削除します。マクロがすでに適用されているインターフェイスの設定には、影響はありません。 default interface interface-id インターフェイス コンフィギュレーション コマンドを使用すれば、インターフェイスで適用されたマクロの設定を削除できます。または、元のマクロの対応するすべてのコマンドの no 形式を含む既存のマクロに対して、 アンチマクロ を作成し、インターフェイスにそのアンチマクロを適用できます。

ここでは、サポートされている各マクロを適用して、内容を表示する例を示します。

「cisco-global」

「cisco-desktop」

「cisco-phone」

「cisco-switch」

「cisco-router」

cisco-global

次に、cisco-global というシステム定義マクロを使用する例を示します。

Switch(config)# macro global apply cisco-global
Changing VTP domain name from gsg-switch to [smartports]
Setting device to VTP TRANSPARENT mode.
Switch(config)# end
Switch# show parser macro name cisco-global
Macro name : cisco-global
Macro type : default global
# Enable dynamic port error recovery for link state failures.
errdisable recovery cause link-flap
errdisable recovery interval 60
 
# VTP requires Transparent mode for future 802.1x Guest VLAN
# and current Best Practice vtp domain [smartports] vtp mode transparent
 
# Enable aggressive mode UDLD on all fiber uplinks udld aggressive
 
# Enable Rapid PVST+ and Loopguard
spanning-tree mode rapid-pvst
spanning-tree loopguard default
spanning-tree extend system-id

cisco-desktop

次に、システム定義マクロ cisco-desktop を使用して、35 の値をファスト イーサネット インターフェイス 2/9 のアクセス VLAN に割り当てる例を示します。


) このマクロでは、ポートのアクセス VLAN を指定する $AVID キーワードが必要です。


Switch(config)# interface fastethernet2/9
Switch(config-if)# macro apply cisco-desktop $AVID 35
Switch(config-if)# end
Switch# show parser macro name cisco-desktop
Macro name : cisco-desktop
Macro type : customizable
 
# Basic interface - Enable data VLAN only
# Recommended value for access vlan (AVID) should not be 1
switchport access vlan $AVID [access_vlan_id]
switchport mode access
# Enable port security limiting port to a single
# MAC address -- that of desktop
switchport port-security
# Ensure port-security age is greater than one minute
# and use inactivity timer
# “Port-security maximum 1” is the default and will not
# Show up in the config
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
# Configure port as an edge network port
spanning-tree portfast
spanning-tree bpduguard enable
Switch# show parser macro description
Interface Macro Description
--------------------------------------------------------------
Fa2/9 cisco-desktop
--------------------------------------------------------------

cisco-phone

次に、システム定義マクロ cisco-phone を使用して、ファスト イーサネット インターフェイス 2/9 上のアクセス VLAN に 35 の値を、音声 VLAN に 56 の値を割り当てる例を示します。


) このマクロでは、ポートのアクセス VLAN を指定する $AVID、および音声 VLAN を指定する $VVID キーワードが必要です。


Switch(config)# interface fastethernet2/9
Switch(config-if)# macro apply cisco-phone
Switch(config-if)# macro description cisco-phone $AVID 35 $VVID 56
Switch(config-if)# end
Switch# show parser macro name cisco-phone
Macro name : cisco-phone
Macro type : customizable
 
# VoIP enabled interface - Enable data VLAN
# and voice VLAN (VVID)
# Recommended value for access vlan (AVID) should not be 1\
switchport access vlan $AVID [access_vlan_id]
switchport mode access
# Update the Voice VLAN (VVID) value which should be
# different from data VLAN
# Recommended value for voice vlan (VVID) should not be 1
switchport voice vlan $VVID [voice_vlan_id]
# Enable port security limiting port to a 2 MAC
# addressess -- One for desktop and one for phone
switchport port-security
switchport port-security maximum 2
# Ensure port-security age is greater than one minute
# and use inactivity timer
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
# Enable auto-qos to extend trust to attached Cisco phone
auto qos voip cisco-phone
# Configure port as an edge network port
spanning-tree portfast
spanning-tree bpduguard enable@
 
Switch# show parser macro description
Interface Macro Description
--------------------------------------------------------------
Fa2/9 cisco-phone
--------------------------------------------------------------

cisco-switch

次に、システム定義マクロ cisco-switch を使用して、38 の値をファスト イーサネット インターフェイス 2/9 上のネイティブ VLAN に割り当てる例を示します。


) このマクロでは、ポートのネイティブ VLAN を指定する $NVID キーワードが必要です。


Switch(config)# interface fastethernet2/9
Switch(config-if)# macro apply cisco-switch
Switch(config-if)# macro description cisco-switch $NVID 38
Switch(config-if)# end
Switch# show parser macro name cisco-switch
Macro name : cisco-switch
Macro type : customizable
 
# Access Uplink to Distribution
switchport trunk encapsulation dot1q
# Define unique Native VLAN on trunk ports
# Recommended value for native vlan (NVID) should not be 1
switchport trunk native vlan $NVID [native_vlan_id]
# Update the allowed VLAN range (VRANGE) such that it
# includes data, voice and native VLANs
# switchport trunk allowed vlan $VRANGE [vlan_range]
# Hardcode trunk and disable negotiation to
# speed up convergence
switchport mode trunk
switchport nonegotiate
# Configure qos to trust this interface
auto qos voip trust
# 802.1w defines the link as pt-pt for rapid convergence
spanning-tree link-type point-to-point
 
Switch# show parser macro description
Interface Macro Description
--------------------------------------------------------------
Fa2/9 cisco-switch
--------------------------------------------------------------

cisco-router

次に、システム定義マクロ cisco-router を使用して、451 の値をファスト イーサネット インターフェイス 2/9 上のネイティブ VLAN に割り当てる例を示します。


) このマクロでは、ポートのネイティブ VLAN を指定する $NVID キーワードが必要です。


Switch(config)# interface fastethernet2/9
Switch(config-if)# macro apply cisco-router
Switch(config-if)# macro description cisco-router $NVID 45I
Switch(config-if)# end
Switch# show parser macro name cisco-router
Macro name : cisco-router
Macro type : customizable
 
# Access Uplink to Distribution
switchport trunk encapsulation dot1q
# Define unique Native VLAN on trunk ports
# Recommended value for native vlan (NVID) should not be 1
switchport trunk native vlan $NVID [native_vlan_id]
# Update the allowed VLAN range (VRANGE) such that it
# includes data, voice and native VLANs
# switchport trunk allowed vlan $VRANGE [vlan_range]
# Hardcode trunk and disable negotiation to
# speed up convergence
# Hardcode speed and duplex to router
switchport mode trunk
switchport nonegotiate
speed 100
duplex full
# Configure qos to trust this interface
auto qos voip trust
qos trust dscp
# Ensure fast access to the network when enabling the interface.
# Ensure that switch devices cannot become active on the interface.
spanning-tree portfast
spanning-tree bpduguard enable
 
Switch# show parser macro description
Interface Macro Description
--------------------------------------------------------------
Fa2/9 cisco-router
--------------------------------------------------------------

SmartPort マクロの表示

SmartPort マクロを表示するには、 表 18-2 に示す特権 EXEC コマンドの 1 つまたは複数のコマンドを使用します。

 

表 18-2 SmartPort マクロを表示するためのコマンド

コマンド
目的
show parser macro

設定されているすべてのマクロを表示します。

show parser macro name macro-name

特定のマクロを表示します。

show parser macro brief

設定されているマクロ名を表示します。

show parser macro description [ interface interface-id ]

すべてのインターフェイスまたは指定されたインターフェイスのマクロ説明を表示します。

スタティック SmartPort マクロの設定

ここでは、スタティック SmartPort マクロを設定してイネーブルにする方法について説明します。

「SmartPort マクロのデフォルト設定」

「SmartPort マクロの設定時の注意事項」

「スタティック SmartPort マクロの適用」

デフォルトのスタティック SmartPort の設定

スイッチでは、いかなるスタティック SmartPort マクロもイネーブルになっていません。

 

表 18-3 デフォルトのスタティック SmartPort マクロ

マクロ名2
説明

cisco-global

ラピッド PVST+、ループガード、リンク ステート障害用のダイナミック ポート エラー回復をイネーブルにするには、このグローバル コンフィギュレーション マクロを使用します。

cisco-desktop

PC のようなデスクトップ デバイスをスイッチ ポートに接続する場合、ネットワーク セキュリティと信頼性を高めるために、このインターフェイス コンフィギュレーション マクロを使用します。

cisco-phone

Cisco IP Phone を装備した PC のようなデスクトップ デバイスをスイッチ ポートに接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。このマクロは、 cisco-desktop マクロの拡張機能で、同じセキュリティ機能と復元力機能を提供します。ただし、遅延に影響されやすい音声トラフィックを適切に処理するために、専用音声 VLAN が追加されています。

cisco-switch

アクセス スイッチとディストリビューション スイッチを接続する場合、または Small Form-Factor Pluggable を使用して接続したアクセス スイッチの間で、このインターフェイス コンフィギュレーション マクロを使用します。

cisco-router

スイッチと WAN ルータを接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。

2.シスコのデフォルト SmartPort マクロは、スイッチで稼働するソフトウェアのバージョンによって異なります。

スタティック SmartPort の設定ガイドライン

クロがスイッチまたはスイッチ インターフェイスにグローバルに適用されている場合、インターフェイス上の既存のすべての設定が保持されます。これは、差分設定に適用する場合に役立ちます。

構文エラーまたは設定エラーのためにコマンドが失敗した場合、マクロは引き続き残りのコマンドを適用します。マクロを適用およびデバッグして、構文エラーまたは設定エラーを検出するには、 macro global trace macro-name グローバル コンフィギュレーション コマンド、または macro trace macro-name インターフェイス コンフィギュレーション コマンドを使用します。

特定のインターフェイス タイプ固有の CLI コマンドもあります。設定を受け入れないインターフェイスにマクロを適用すると、マクロが構文または設定のチェックに失敗し、スイッチはエラー メッセージを返します。

インターフェイス範囲へのマクロの適用は、単一インターフェイスへのマクロの適用と同じです。インターフェイスの範囲を使用する場合、マクロはその範囲内の各インターフェイスに順番に適用されます。1 つのインターフェイスでマクロ コマンドの実行に失敗しても、マクロは残りのインターフェイス上に適用されます。

スイッチまたはスイッチ インターフェイスにマクロを適用すると、マクロ名が自動的にスイッチまたはインターフェイスに追加されます。 show running-config ユーザ EXEC コマンドを使用して、適用されたコマンドおよびマクロ名を表示できます。

スタティック SmartPort マクロの適用

スタティック SmartPort マクロを適用するには、初めは特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

show parser macro

スイッチ ソフトウェアに組み込まれている、シスコのデフォルトのスタティック Smartport マクロを表示します。

ステップ 2

show parser macro name macro-name

適用する特定のマクロを表示します。

ステップ 3

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 4

macro global { apply | trace } macro-name [ parameter { value }] [ parameter { value }] [ parameter { value }]

マクロで定義された各コマンドをスイッチに適用するには、 macro global apply macro-name を入力します。 macro global trace macro-name を指定して、構文または設定エラーを判別するためにマクロを適用およびデバッグします。

parameter value キーワードを使用して、必要な値をマクロに追加します。 $ で始まるキーワードには、一意のパラメータ値が必要です。

macro global apply macro-name ? コマンドを使用すると、マクロに必要な値を一覧表示できます。キーワード値を入力せずにマクロを適用した場合、コマンドは無効となり、マクロは適用されません。

(任意)スイッチに固有の一意のパラメータ値を指定します。最高 3 つのキーワードと値の組み合わせを入力できます。パラメータ キーワードの照合では、大文字と小文字が区別されます。キーワードで一致が見られると、すべて対応する値に置き換えられます。

ステップ 5

interface interface-id

(任意)インターフェイス コンフィギュレーション モードを開始して、マクロを適用するインターフェイスを指定します。

ステップ 6

default interface interface-id

(任意)指定したインターフェイスからすべての設定を消去します。

ステップ 7

macro { apply | trace } macro-name [ parameter { value }] [ parameter { value }] [ parameter { value }]

マクロで定義された各コマンドをポートに適用するには、 macro global apply macro-name を入力します。 macro global trace macro-name を指定して、構文または設定エラーを判別するためにマクロを適用およびデバッグします。

parameter value キーワードを使用して、必要な値をマクロに追加します。 $ で始まるキーワードには、一意のパラメータ値が必要です。

macro global apply macro-name ? コマンドを使用すると、マクロに必要な値を一覧表示できます。キーワード値を入力せずにマクロを適用した場合、コマンドは無効となり、マクロは適用されません。

(任意)スイッチに固有の一意のパラメータ値を指定します。最高 3 つのキーワードと値の組み合わせを入力できます。パラメータ キーワードの照合では、大文字と小文字が区別されます。キーワードで一致が見られると、すべて対応する値に置き換えられます。

ステップ 8

end

特権 EXEC モードに戻ります。

ステップ 9

show running-config interface interface-id

マクロがインターフェイスに適用されたことを確認します。

ステップ 10

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

マクロに含まれる各コマンドの no バージョンを入力したときにだけ、スイッチで適用されたグローバル マクロ設定を削除できます。 default interface interface-id インターフェイス コンフィギュレーション コマンドを入力すれば、ポートで適用されたマクロの設定を削除できます。

次に、 cisco-desktop マクロを表示してそのマクロを適用し、インターフェイスのアクセス VLAN ID を 25 に設定する方法を示します。

Switch# show parser macro cisco-desktop
--------------------------------------------------------------
Macro name : cisco-desktop
Macro type : default
 
# Basic interface - Enable data VLAN only
# Recommended value for access vlan (AVID) should not be 1
switchport access vlan $AVID
switchport mode access
 
# Enable port security limiting port to a single
# MAC address -- that of desktop
switchport port-security
switchport port-security maximum 1
 
# Ensure port-security age is greater than one minute
# and use inactivity timer
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
 
# Configure port as an edge network port
spanning-tree portfast
spanning-tree bpduguard enable
--------------------------------------------------------------
Switch# configure terminal
Switch(config)# interface gigabitethernet1/0/4
Switch(config-if)# macro apply cisco-desktop $AVID 25