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)#!!!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)#!!!the next command enables auto smart ports globally
Switch(config)# macro auto global processing cdp-fallback
Switch# !!!here's the running configuration of the interface connected
Switch# !!!to another Cisco Switch after the Macro is applied
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
srr-queue bandwidth share 10 10 60 20
macro description CISCO_SWITCH_EVENT
イベント トリガの設定
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)#!!!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_LWAP_AUTO_SMARTPORT
CISCO_PHONE_AUTO_SMARTPORT
CISCO_ROUTER_AUTO_SMARTPORT
CISCO_SWITCH_AUTO_SMARTPORT
Switch(config)# macro auto execute RADIUS_MAB_EVENT builtin CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT ACCESS_VLAN=10
Switch# show shell triggers
Trigger Id: RADIUS_MAB_EVENT
Trigger description: MAC_AuthBypass Event
Trigger mapping function: CISCO_DOT1X_MAB_GUEST_AUTO_SMARTPORT
次に、 show shell triggers 特権 EXEC コマンドを使用して、スイッチ ソフトウェアのイベント トリガを表示する例を示します。
Switch# show shell 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
function CISCO_AP_AUTO_SMARTPORT () {
if [[ $LINKUP -eq YES ]]; then
macro description $TRIGGER
switchport trunk encapsulation dot1q
switchport trunk native vlan $NATIVE_VLAN
switchport trunk allowed vlan ALL
if [[ $LINKUP -eq NO ]]; then
no switchport nonegotiate
no switchport trunk native vlan $NATIVE_VLAN
no switchport trunk allowed vlan ALL
if [[ $AUTH_ENABLED -eq NO ]]; then
no switchport trunk encapsulation
function CISCO_SWITCH_AUTO_SMARTPORT () {
if [[ $LINKUP -eq YES ]]; then
macro description $TRIGGER
switchport trunk encapsulation dot1q
switchport trunk native vlan $NATIVE_VLAN
switchport trunk allowed vlan ALL
no switchport trunk encapsulation dot1q
no switchport trunk native vlan $NATIVE_VLAN
no switchport trunk allowed vlan ALL
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
macro description $TRIGGER
switchport port-security maximum 1
switchport port-security violation restrict
switchport port-security aging time 2
switchport port-security aging type inactivity
spanning-tree bpduguard enable
if [[ $LINKUP -eq NO ]]; then
no macro description $TRIGGER
no switchport access vlan 1
if [[ $AUTH_ENABLED -eq NO ]]; then
no switchport mode access
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
表 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 マクロ
|
|
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 |
スイッチとワイヤレス アクセス ポイントを接続する場合、このインターフェイス コンフィギュレーション マクロを使用します。 |
スタティック 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
# Basic interface - Enable data VLAN only
# Recommended value for access vlan (AVID) should not be 1
switchport access vlan $AVID
# Enable port security limiting port to a single
# MAC address -- that of desktop
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 bpduguard enable
--------------------------------------------------------------
Switch# configure terminal
Switch(config)# interface gigabitethernet0/4
Switch(config-if)# macro apply cisco-desktop $AVID 25