Catalyst 2960 スイッチ ソフトウェア コンフィギュ レーション ガイド Cisco IOS リリース12.2(50)SE
Auto Smartports マクロの設定
Auto Smartports マクロの設定
発行日;2012/02/01 | 英語版ドキュメント(2011/07/26 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 14MB) | フィードバック

目次

Auto Smartports マクロの設定

Auto Smartports およびスタティック Smartports マクロの概要

Auto Smartports の設定

Auto Smartports のデフォルト設定

Auto Smartports 設定時の注意事項

Auto Smartports のイネーブル化

Auto Smartports 組み込みマクロの設定

イベント トリガの設定

Auto Smartports ユーザ定義マクロの設定

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

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

スタティック Smartports 設定時の注意事項

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

Auto Smartports およびスタティック Smartports マクロの表示

Auto Smartports マクロの設定

この章では、Catalyst 2960 スイッチ上で Auto Smartports およびスタティック Smartports マクロを設定および適用する方法について説明します。


) この章で使用するコマンドの構文および使用方法の詳細については、このリリースに対応するコマンド リファレンスを参照してください。


「Auto Smartports およびスタティック Smartports マクロの概要」

「Auto Smartports の設定」

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

「Auto Smartports およびスタティック Smartports マクロの表示」

Auto Smartports およびスタティック Smartports マクロの概要

Auto Smartports マクロは、ポート上で検出されたデバイス タイプに基づいて、動的にポートを設定します。スイッチは、ポート上で新しいデバイスを検出すると、適切な Auto Smartports マクロをそのポートに適用します。ポート上にリンク ダウン イベントがある場合、スイッチはこのマクロを削除します。たとえば、ユーザが Cisco IP 電話をポートに接続すると、Auto Smartports は自動的に IP 電話マクロを適用します。IP 電話マクロは、遅延に影響されやすい音声トラフィックを適切に処理するために、Quality of Service(QoS; サービス品質)、セキュリティ機能、専用音声 VLAN をイネーブルにします。

Auto Smartports マクロとは別に、 スタティック Smartports マクロは、ポートに接続されたデバイスに基づいてユーザが手動で適用するポート設定を提供します。ユーザがスタティック Smartports マクロを適用すると、マクロ内の Command-Line Interface(CLI; コマンドライン インターフェイス)コマンドが既存のポート設定に追加されます。ポート上にリンク ダウン イベントがある場合、スイッチはこのスタティック マクロを削除しません。

Auto Smartports は、 イベント トリガ を使用してデバイスをマクロにマッピングします。最も一般的なイベント トリガは、接続デバイスから受信した Cisco Discovery Protocol(CDP; シスコ検出プロトコル)メッセージに基づきます。デバイス(Cisco IP 電話、Cisco ワイヤレス Access Point(AP; アクセス ポイント)、Cisco スイッチ、または Cisco ルータ)が検出されると、CDP イベント トリガが呼び出されます。その他のイベント トリガは、MAC Authentication Bypass(MAB; MAC 認証バイパス)と 802.1x 認証メッセージを使用します。

スイッチ ソフトウェアに組み込まれた Auto Smartports マクロは、CLI コマンドの集合です。ポート上で CISCO_PHONE イベントが検出されると、スイッチは CO_PHONE_AUTO_SMARTPORT マクロ内の CLI コマンドの適用を開始します。Cisco IOS スクリプト機能を使用して、ユーザ定義マクロを作成することもできます。Cisco IOS スクリプトは、コマンドの自動化と変数の置換に使用する BASH 式の言語構文です。

Auto Smartports の設定

「Auto Smartports のデフォルト設定」

「Auto Smartports 設定時の注意事項」

「Auto Smartports のイネーブル化」

「Auto Smartports 組み込みマクロの設定」

「イベント トリガの設定」

「Auto Smartports ユーザ定義マクロの設定」

Auto Smartports のデフォルト設定

Auto Smartports はディセーブルに設定されています。

Cisco IOS シェルはイネーブルに設定されています。

表 11-1 に、スイッチ ソフトウェアに組み込まれている Auto Smartports 組み込みマクロを示します。

 

表 11-1 Auto Smartports 組み込みマクロ

マクロ名
説明

CISCO_PHONE_AUTO_
SMARTPORT

Cisco IP 電話に IP 電話マクロを適用するには、このマクロを使用します。これにより、ポート上で QoS、ポート セキュリティ、Address Resolution Protocol(ARP; アドレス解決プロトコル)Inspection(動的 ARP 検査)、IP 送信元ガード、DHCP スヌーピング、ストーム制御、スパニング ツリー保護がイネーブルになります。

CISCO_SWITCH_AUTO_
SMARTPORT

Cisco スイッチにスイッチ マクロを適用するには、このマクロを使用します。これにより、ポート上でトランキングがイネーブルになります。

CISCO_ROUTER_AUTO_
SMARTPORT

Cisco ルータにルータ マクロを適用するには、このマクロを使用します。これにより、ポート上で QoS、トランキング、スパニング ツリー保護がイネーブルになります。

CISCO_AP_AUTO_
SMARTPORT

Cisco Access Point(AP; アクセス ポイント)にワイヤレス アクセス ポイント(AP)マクロを適用するには、このマクロを使用します。これにより、ポート上で自動ワイヤレス アクセス ポイントと QoS がイネーブルになります。

CISCO_LWAP_AUTO_
SMARTPORT

Cisco Lightweight ワイヤレス AP にライトウェイト ワイヤレス アクセス ポイント マクロを適用するには、このマクロを使用します。これにより、ポート上で QoS、ポート セキュリティ、動的 ARP 検査、IP 送信元ガード、DHCP スヌーピング、ストーム制御、スパニング ツリー保護がイネーブルになります。

CISCO_DOT1X_DESKTOP_
AUTO_SMARTPORT

IEEE 802.1x で認証されたデバイスにデスクトップ マクロを適用するには、このマクロを使用します。これにより、セキュリティやスパニング ツリー保護などの基本的なデスクトップ設定がイネーブルになります。

CISCO_DOT1X_EASY_AUTO_SMARTPORT

IEEE 802.1x で認証されたデスクトップ デバイスにデスクトップ マクロを適用するには、このマクロを使用します。このマクロは、802.1x、MAB、ゲスト VLAN、認証失敗 VLAN をサポートし、802.1x のタイムアウトを 3 秒に短縮します。

CISCO_DOT1X_MAB_
GUEST_AUTO_SMARTPORT

802.1x、MAB、およびゲスト VLAN で認証されたデバイスにデスクトップ マクロを適用するには、このコマンドを使用します。

CISCO_DOT1X_MAB_
TIMEOUT_AUTO_
SMARTPORT

802.1x、MAB、およびゲスト VLAN で認証され、アグレッシブ タイムアウトが設定されているデバイスにデスクトップ マクロを適用するには、このコマンドを使用します。

CISCO_DOT1X_AUTH_
FAIL_AUTO_SMARTPORT

802.1x、MAB、および認証失敗 VLAN で認証されたデバイスにデスクトップ マクロを適用するには、このコマンドを使用します。

CISCO_DOT1X_CRITICAL_
AUTO_SMARTPORT

802.1x、MAB、およびクリティカル VLAN で認証されたデバイスにデスクトップ マクロを適用するには、このコマンドを使用します。

Auto Smartports 設定時の注意事項

組み込みマクロは削除または変更できません。ただし、同じ名前のユーザ定義マクロを作成することで、組み込みマクロを上書きできます。元の組み込みマクロを復元するには、ユーザ定義マクロを削除します。

Auto Smartports マクロの適用時にシステムの競合を回避するには、802.1x 認証を除くすべてのポート設定を削除します。

マクロと元の設定が矛盾する場合は、一部のマクロ コマンドが適用されていないか、一部のアンチマクロ コマンドが削除されていない可能性があります (アンチマクロとは、適用されたマクロのうち、リンク ダウン時に削除される部分です)。

たとえば、802.1x 認証がイネーブルの場合、スイッチ ポート モードのアクセス設定を削除できません。802.1x 認証を削除してから、スイッチ ポート モードの設定を削除してください。

Auto Smartports マクロを設定する際、ポートは、EtherChannel のメンバーであってはいけません。

組み込みマクロのデフォルト データ VLAN は、VLAN 1 です。デフォルトの音声 VLAN は、VLAN 2 です。スイッチがその他の VLAN を使用している場合は、組み込みマクロのデフォルト値を変更する必要があります。組み込みマクロのデフォルト値をすべて表示するには、 show shell functions 特権 EXEC コマンドを使用します。

802.1x 認証または MAB には、他社製デバイスを検出するために、Cisco attribute-value(av; アトリビュート/値)ペア auto-smart-port=event trigger をサポートするように RADIUS サーバを設定します。

CDP、MAB、または 802.1x 認証をサポートしない、ネットワーク プリンタなどの固定デバイスでは、ポートの Auto Smartports をディセーブルにすることを推奨します。

ポート上で認証がイネーブルに設定されていると、 macro auto global processing グローバル コンフィギュレーション コマンドに cdp-fallback キーワードが含まれていない限り、スイッチは CDP を無視します。

マクロおよび対応するアンチマクロ内では、CLI コマンドの順序が異なる場合があります。

Auto Smartports のイネーブル化

すべてのポートで Auto Smartports マクロが自動的に適用されるようにスイッチを設定するには、 macro auto global processing グローバル コンフィギュレーション コマンドを使用します。特定のポートで Auto Smartports マクロをディセーブルにするには、インターフェイス モードで no auto global processing を使用します。

特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

macro auto global processing [cdp-fallback]

スイッチの Auto Smartports をグローバルにイネーブルにします。

(任意)ポートで 802.1x がイネーブルに設定されており、RADIUS サーバがイベント トリガを送信しない場合にスイッチが CDP 機能の情報を使用できるようにするには、 cdp-fallback キーワードを使用します。

ステップ 3

end

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

ステップ 4

show running-config

Auto Smartports がイネーブルであることを確認します。

ステップ 5

copy running-config startup-config

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

デフォルトの設定に戻すには、 no macro auto global processing グローバル コンフィギュレーション コマンドを使用します。

show shell functions および show shell triggers 特権 EXEC コマンドを使用すると、イベント トリガ、組み込みマクロ、および組み込みマクロのデフォルト値を表示できます。

次に、スイッチ上で Auto Smartports をイネーブルにし、特定のインターフェイスの機能をディセーブルにする例を示します。

Switch(config)# macro auto global processing
Switch(config)# interface interface_id
Switch(config-if)# no macro auto processing
 

Auto Smartports 組み込みマクロの設定

スイッチは、イベント トリガから組み込みマクロへのマッピングを自動的に行います。組み込みマクロのデフォルト値は、お使いのスイッチ固有の値に置き換えることができます。

特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

macro auto execute event trigger builtin built-in macro name [parameter=value] [parameter=value]

イベント トリガから組み込みマクロへのマッピングを定義します。

イベント トリガ を指定します。

CISCO_PHONE_EVENT

CISCO_SWITCH_EVENT

CISCO_ROUTER_EVENT

CISCO_WIRELESS_AP_EVENT

CISCO_WIRELESS_LIGHTWEIGHT_AP_EVENT

WORD :ユーザ定義のイベント トリガを適用します。

builtin built-in macro name を指定します。

CISCO_PHONE_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) および $VOICE_VLAN=(2) を指定します。

CISCO_SWITCH_AUTO_SMARTPORT
(任意)パラメータ値 $NATIVE_VLAN=(1) を指定します。

CISCO_ROUTER_AUTO_SMARTPORT
(任意)パラメータ値 $NATIVE_VLAN=(1) を指定します。

CISCO_AP_AUTO_SMARTPORT
(任意)パラメータ値 $NATIVE_VLAN=(1) を指定します。

CISCO_LWAP_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_DESKTOP_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_EASY_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_MAB_TIMEOUT_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_AUTH_FAIL_AUTO_SMARTPORT
(任意)パラメータ値 $ACCESS_VLAN=(1) を指定します。

CISCO_DOT1X_CRITICAL_AUTO_SMARTPORT
(任意)パラメータ値 $CRITICAL_VLAN=(1) を指定します。

(任意) parameter=value $ で始まるデフォルト値を置き換えます。スペースで区切られた名前/値ペア [<name1>=<value1> <name2>=<value2>...] の形式で新しい値を入力します。デフォルト値はカッコ内に表示されます。

ステップ 3

end

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

ステップ 4

show running-config

設定を確認します。

ステップ 5

copy running-config startup-config

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

次に、2 つの組み込み Auto Smartports マクロを使用して、Cisco スイッチと Cisco IP 電話をスイッチに接続する例を示します。この例では、トランク インターフェイスのデフォルトの音声 VLAN、アクセス VLAN、およびネイティブ VLAN を変更します。

Switch# configure terminal
Switch(config)#!!!the next command modifies the access and voice vlans
Switch(config)#!!!for the built in Cisco IP phone auto smartport macro
Switch(config)# macro auto execute CISCO_PHONE_EVENT builtin CISCO_PHONE_AUTO_SMARTPORT ACCESS_VLAN=10 VOICE_VLAN=20
Switch(config)#
Switch(config)#!!!the next command modifies the Native vlan used for inter switch trunks
Switch(config)# macro auto execute CISCO_SWITCH_EVENT builtin CISCO_SWITCH_AUTO_SMARTPORT NATIVE_VLAN=10
Switch(config)#
Switch(config)#!!!the next command enables auto smart ports globally
Switch(config)# macro auto global processing cdp-fallback
Switch(config)#
Switch(config)# exit
 
Switch# !!!here's the running configuration of the interface connected
Switch# !!!to another Cisco Switch after the Macro is applied
Switch#
Switch# show running-config interface Gi1/0/1
Building configuration...
 
Current configuration : 284 bytes
!
interface GigabitEthernet1/0/1
switchport trunk encapsulation dot1q
switchport trunk native vlan 10
switchport mode trunk
srr-queue bandwidth share 10 10 60 20
queue-set 2
priority-queue out
mls qos trust cos
auto qos voip trust
macro description CISCO_SWITCH_EVENT
end
 

イベント トリガの設定

MAB または 802.1x 認証を使用して Auto Smartports マクロをトリガする場合は、RADIUS サーバから送信された Cisco アトリビュート/値ペア( auto-smart-port=event trigger )に対応するイベント トリガを作成する必要があります。

イベント トリガを設定するには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

shell trigger identifier description

イベント トリガの ID と説明を指定します。 ID のワード間にスペースまたはハイフンは使用できません。

ステップ 3

end

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

ステップ 4

show shell triggers

スイッチのイベント トリガを表示します。

ステップ 5

copy running-config startup-config

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

イベント トリガを削除するには、 no shell trigger identifier グローバル コンフィギュレーション コマンドを使用します。

次に、RADIUS_MAB_EVENT というユーザ定義のイベント トリガを組み込みマクロ CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT にマッピングし、デフォルトの VLAN を VLAN 10 に置き換え、設定を確認する例を示します。

a. MAB がイネーブルに設定されているスイッチ ポートにデバイスを接続します。

b. RADIUS サーバで、アトリビュート/値ペアを auto-smart-port =RADIUS_MAB_EVENT に設定します。

c. スイッチ上で、イベント トリガ RADIUS_MAB_EVENT を作成します。

d. スイッチは、RADIUS サーバからの attribute-value pair=RADIUS_MAB_EVENT 応答を認識し、マクロ CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT を適用します。

Switch# configure terminal
Enter configuration commands, one per line.End with CNTL/Z.
Switch(config)# !!!create a user defined trigger and map
Switch(config)# !!!a system defined macro to it
Switch(config)# !!!first create the trigger event
Switch(config)# shell trigger RADIUS_MAB_EVENT MAC_AuthBypass Event
Switch(config)#
Switch(config)#!!!map a system defined macro to the trigger event
Switch(config)# macro auto execute RADIUS_MAB_EVENT builtin ?
CISCO_DOT1X_DESKTOP_AUTO_SMARTPORT
CISCO_DOT1X_EASY_AUTO_SMARTPORT
CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT
CISCO_DOT1X_MAB_TIMEOUT_AUTO_SMARTPORT
CISCO_DOT1X_AUTH_FAIL_AUTO_SMARTPORT
CISCO_DOT1X_CRITICAL_AUTO_SMARTPORT
CISCO_AP_AUTO_SMARTPORT
CISCO_LWAP_AUTO_SMARTPORT
CISCO_PHONE_AUTO_SMARTPORT
CISCO_ROUTER_AUTO_SMARTPORT
CISCO_SWITCH_AUTO_SMARTPORT
LINE <cr>
Switch(config)# macro auto execute RADIUS_MAB_EVENT builtin CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT ACCESS_VLAN=10
Switch(config)# exit
Switch# show shell triggers
User defined triggers
---------------------
Trigger Id: RADIUS_MAB_EVENT
Trigger description: MAC_AuthBypass Event
Trigger environment:
Trigger mapping function: CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT
<output truncated>
 

次に、 show shell triggers 特権 EXEC コマンドを使用して、スイッチ ソフトウェアのイベント トリガを表示する例を示します。

Switch# show shell triggers
 
User defined triggers
---------------------
Built-in triggers
-----------------
Trigger Id: CISCO_PHONE_EVENT
Trigger description: Event for ip-phone macro
Trigger environment: ACCESS_VLAN=1 VOICE_VLAN=2
Trigger mapping function: CISCO_PHONE_AUTO_SMARTPORT
 
Trigger Id: CISCO_ROUTER_EVENT
Trigger description: Event for router macro
Trigger environment: NATIVE_VLAN=1
Trigger mapping function: CISCO_ROUTER_AUTO_SMARTPORT
 
Trigger Id: CISCO_SWITCH_EVENT
Trigger description: Event for switch macro
Trigger environment: NATIVE_VLAN=1
Trigger mapping function: CISCO_SWITCH_AUTO_SMARTPORT
 
Trigger Id: CISCO_WIRELESS_AP_EVENT
Trigger description: Event for Wireless Access Point macro
Trigger environment: NATIVE_VLAN=1
Trigger mapping function: CISCO_AP_AUTO_SMARTPORT
 
Trigger Id: CISCO_WIRELESS_LIGHTWEIGHT_AP_EVENT
Trigger description: Event for Wireless Lightweight Access Point macro
Trigger environment: NATIVE_VLAN=1
Trigger mapping function: CISCO_LWAP_AUTO_SMARTPORT
 

次に、 show shell functions 特権 EXEC コマンドを使用して、スイッチ ソフトウェアの組み込みマクロを表示する例を示します。

Switch# show shell functions
#User defined functions:
 
#Built-in functions:
function CISCO_AP_AUTO_SMARTPORT () {
if [[ $LINKUP -eq YES ]]; then
conf t
interface $INTERFACE
macro description $TRIGGER
switchport trunk encapsulation dot1q
switchport trunk native vlan $NATIVE_VLAN
switchport trunk allowed vlan ALL
switchport mode trunk
switchport nonegotiate
auto qos voip trust
mls qos trust cos
exit
end
fi
if [[ $LINKUP -eq NO ]]; then
conf t
interface $INTERFACE
no macro description
no switchport nonegotiate
no switchport trunk native vlan $NATIVE_VLAN
no switchport trunk allowed vlan ALL
no auto qos voip trust
no mls qos trust cos
if [[ $AUTH_ENABLED -eq NO ]]; then
no switchport mode
no switchport trunk encapsulation
fi
exit
end
fi
}
 
function CISCO_SWITCH_AUTO_SMARTPORT () {
if [[ $LINKUP -eq YES ]]; then
conf t
interface $INTERFACE
macro description $TRIGGER
auto qos voip trust
switchport trunk encapsulation dot1q
switchport trunk native vlan $NATIVE_VLAN
switchport trunk allowed vlan ALL
switchport mode trunk
exit
end
else
conf t
interface $INTERFACE
no macro description
no auto qos voip trust
no switchport mode trunk
no switchport trunk encapsulation dot1q
no switchport trunk native vlan $NATIVE_VLAN
no switchport trunk allowed vlan ALL
exit
end
fi
}
 
<output truncated>
 

Auto Smartports ユーザ定義マクロの設定

Cisco IOS シェルには、ユーザ定義の Auto Smartports マクロを定義できる基本的なスクリプト機能があります。これらのマクロには、複数の行と任意の CLI コマンドを含めることができます。変数の代入、条件、関数、およびトリガをマクロ内で定義することもできます。

ユーザ定義のイベント トリガをユーザ定義マクロにマッピングするには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

macro auto execute event trigger [parameter=value] { function contents }

イベント トリガにマッピングするユーザ定義マクロを指定します。

{ function contents } トリガに関連付けるユーザ定義マクロを指定します。マクロの内容をカッコ内に入力します。左のカッコから IOS シェル コマンドを開始し、右のカッコでそのコマンド グループを終了します。

(任意) parameter=value $ で始まるデフォルト値を置き換え、スペースで区切られた名前/値ペア [<name1>=<value1> <name2>=<value2>...] の形式で新しい値を入力します。

ステップ 3

end

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

ステップ 4

show running-config

設定を確認します。

ステップ 5

copy running-config startup-config

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

次に、Cisco Digital Media Player(DMP)というユーザ定義のイベント トリガをユーザ定義マクロにマッピングする例を示します。

a. DMP を 802.1x または MAB がイネーブルに設定されたスイッチ ポートに接続します。

b. RADIUS サーバで、アトリビュート/値ペアを auto-smart-port =CISCO_DMP_EVENT に設定します。

c. スイッチ上で、イベント トリガ CISCO_DMP_EVENT を作成し、下記のユーザ定義マクロ コマンドを入力します。

d. スイッチは、RADIUS サーバからの attribute-value pair=CISCO_DMP_EVENT 応答を認識し、このイベント トリガに関連付けられたマクロを適用します。

Switch(config)# shell trigger CISCO_DMP_EVENT Cisco DMP player
Switch(config)# macro auto execute CISCO_DMP_EVENT {
if [[ $LINKUP -eq YES ]]; then
conf t
interface $INTERFACE
macro description $TRIGGER
switchport access vlan 1
switchport mode access
switchport port-security
switchport port-security maximum 1
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
spanning-tree portfast
spanning-tree bpduguard enable
exit
fi
if [[ $LINKUP -eq NO ]]; then
conf t
interface $INTERFACE
no macro description $TRIGGER
no switchport access vlan 1
if [[ $AUTH_ENABLED -eq NO ]]; then
no switchport mode access
fi
no switchport port-security
no switchport port-security maximum 1
no switchport port-security violation restrict
no switchport port-security aging time 2
no switchport port-security aging type inactivity
no spanning-tree portfast
no spanning-tree bpduguard enable
exit
fi
}
Switch(config)# end
 

 

表 11-2 サポート対象の Cisco IOS シェル キーワード

コマンド
説明

{

コマンド グループを開始します。

}

コマンド グループを終了します。

[[

条件構成体として使用します。

]]

条件構成体として使用します。

else

条件構成体として使用します。

-eq

条件構成体として使用します。

fi

条件構成体として使用します。

if

条件構成体として使用します。

then

条件構成体として使用します。

-z

条件構成体として使用します。

$

$ 文字で始まる変数は、パラメータ値に置き換えられます。

#

コメント テキストを入力する場合は、# 文字を使用します。

 

表 11-3 サポートされない Cisco IOS シェル予約キーワード

コマンド
説明

|

パイプライン

case

条件構成体

esac

条件構成体

for

ループ構成体

function

シェル関数

in

条件構成体

select

条件構成体

time

パイプライン

until

ループ構成体

while

ループ構成体

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

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

「スタティック Smartports のデフォルト設定」

「スタティック Smartports 設定時の注意事項」

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

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

スイッチ上でイネーブルに設定されているスタティック Smartports マクロはありません。

 

表 11-4 デフォルトのスタティック Smartports マクロ

マクロ名1
説明

cisco-global

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

cisco-desktop

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

cisco-phone

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

cisco-switch

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

cisco-router

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

cisco-wireless

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

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

スタティック Smartports 設定時の注意事項

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

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

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

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

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

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

スタティック SmartPorts マクロを適用するには、特権 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#
Switch# configure terminal
Switch(config)# interface gigabitethernet0/4
Switch(config-if)# macro apply cisco-desktop $AVID 25
 

Auto Smartports およびスタティック Smartports マクロの表示

Auto Smartports およびスタティック Smartports マクロを表示するには、 表 11-5 の特権 EXEC コマンドを 1 つまたは複数使用します。

 

表 11-5 Auto Smartports およびスタティック Smartports マクロの表示コマンド

コマンド
目的

show parser macro

すべてのスタティック Smartports マクロを表示します。

show parser macro name macro-name

特定のスタティック Smartports マクロを表示します。

show parser macro brief

スタティック Smartports マクロ名を表示します。

show parser macro description [ interface interface-id ]

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

show shell

Auto Smartports のイベント トリガおよびマクロに関する情報を表示します。