Auto Smartports and Static Smartports Macros CLI Commands
macro
To apply a macro to an interface or to apply and debug a macro on an interface, use the macro interface configuration command.
macro { apply | trace } macro-name [ parameter { value }] [ parameter { value }]
[ parameter { value }]
Syntax Description
Command Default
Command Modes
Usage Guidelines
You can use the macro apply macro-name interface configuration command to apply and show the macros running on an interface.
You can use the macro trace macro-name interface configuration command to apply and then debug the macro to find any syntax or configuration errors.
If a command fails because of a syntax error or a configuration error when you apply a macro, the macro continues to apply the remaining commands to the interface.
When creating a macro that requires the assignment of unique values, use the parameter value keywords to designate values specific to the interface.
Keyword matching is case sensitive. All matching occurrences of the keyword are replaced with the corresponding value. Any full match of a keyword, even if it is part of a larger string, is considered a match and is replaced by the corresponding value.
Some macros might contain keywords that require a parameter value. You can use the macro apply macro-name ? command to display a list of any required values in the macro. If you apply a macro without entering the keyword values, the commands are invalid and are not applied.
There are Cisco-default Smartports macros embedded in the switch software. You can display these macros and the commands that they contain by using the show parser macro user EXEC command.
Follow these guidelines when you apply a Cisco-default Smartports macro on an interface:
- Display all macros on the switch by using the show parser macro user EXEC command. Display the contents of a specific macro by using the show parser macro name macro-name user EXEC command.
- Keywords that begin with $ mean that a unique parameter value is required. Append the Cisco-default macro with the required values by using the parameter value keywords.
The Cisco-default macros use the $ character to identify required keywords. You can use the $ character to define keywords when you create a macro.
When you apply a macro to an interface, the macro name is automatically added to the interface. You can display the applied commands and macro names by using the show running-config interface interface-id user EXEC command.
A macro applied to an interface range behaves the same way as a macro applied to a single interface. When you use an interface range, the macro is applied sequentially to each interface within the range. If a macro command fails on one interface, it is still applied to the remaining interfaces.
You can delete a macro-applied configuration on an interface by entering the default interface interface-id interface configuration command.
Examples
After you use the macro name global configuration command, you can apply it to an interface. This example shows how to apply a user-created macro called duplex to an interface:
To debug a macro, use the macro trace interface configuration command to find any syntax or configuration errors in the macro as it is applied to an interface.
This example shows how to display the Cisco-default cisco-desktop macro and how to apply the macro and set the access VLAN ID to 25 on an interface:
Related Commands
macro auto device
To replace macro default parameter values with values that are specific to your switch, use the macro auto device global configuration command. Use the no form of this command to remove the parameter values.
macro auto device { access-point | ip-camera | lightweight-ap | media-player | phone | router | switch } [ parameter = value ]
no macro auto device {access-point | ip-camera | lightweight-ap | media-player | phone | router | switch} [parameter=value]
Syntax Description
Command Default
Command Modes
Usage Guidelines
Use the macro auto device global configuration command to replace macro default parameter values with values that are specific to your switch. Use the no form of this command to remove the parameter values.
Use the show macro device privileged EXEC command to display the contents of the macros. Use the parameter = value keywords to replace default parameter values within a specific macro.
You can also use the macro auto execute global configuration command to specify default parameter values. This command also requires that you specify an event trigger and a built-in or user-defined macro. If you enable both the macro auto device and the macro auto execute commands, the parameters specified in the command last executed is applied to the switch. Only one command is active on the switch.
To verify that a macro is applied to an interface, use the show macro auto interface user EXEC command.
Examples
This example shows how to display the IP phone macro parameter values, enable the IP phone macro, and change the default voice VLAN to 20:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
macro auto execute
To replace built-in macro default values and to configure mapping from an event trigger to a built-in or user-defined macro, use the macro auto execute global configuration command.
macro auto execute event trigger {[ builtin built-in macro name ] | [ remote url ]} [ parameter = value ] [ {function contents} ]
no macro auto execute event trigger {[ builtin built-in macro name ] | [ remote url ]} [ parameter = value ] [ {function contents} ]
Syntax Description
Command Default
Command Modes
Usage Guidelines
Use the macro auto execute global configuration command to replace the built-in macro default values with values that are specific to your switch.
The switch automatically maps from event triggers to built-in macros. The built-in macros are system-defined macros in the software image. You can also create user-defined macros by using the Cisco IOS shell scripting capability.
You can create new event triggers by using the shell trigger global configuration commands. Use the show shell triggers privileged EXEC command to display the contents of the user-defined triggers and macros.
You can use the macro auto mac-address-group global configuration command to create event triggers for devices that do not support Cisco Discovery Protocol (CDP) or Link Layer Discovery Protocol (LLDP).
You can use the remote macro feature to store macros in a central location for designated network switches to use. You can then maintain and update the macro files for use by multiple switches. Use remote url to configure the remote server location and macro path information. There are no specific file extension requirements for saved macro files.
Auto Smartports macros and antimacros (the antimacro is the portion of the applied macro that removes it at link down) have these guidelines and limitations:
- You can delete or change the built-in macros. However, you can override a built-in macro by creating a user-defined macro with the same name. To restore the original built-in macro, delete the user-defined macro.
- If you enable both the macro auto device and the macro auto execute global configuration commands, the parameters specified in the command last executed are applied to the switch. Only one command is active on the switch.
- To avoid system conflicts when macros are applied, remove all port configurations except for 802.1x authentication.
- Do not configure port security when enabling Auto Smartports on the switch.
- If the macro conflicts with the original configuration, either the macro does not apply some of the original configuration commands, or the antimacro does not remove them. (The antimacro is the portion of the applied macro that removes the macro at a link-down event.)
For example, if 802.1x authentication is enabled, you cannot remove the switchport-mode access configuration. Remove the 802.1x authentication before removing the switchport mode configuration.
- A port cannot be a member of an EtherChannel when you apply Auto Smartports macros.
- The built-in-macro default data VLAN is VLAN 1. The default voice VLAN is VLAN 2. If your switch uses different access, native, or voice VLANs, use the macro auto device or the macro auto execute global configuration commands to configure the values.
- For 802.1x authentication or MAC authentication bypass (MAB), to detect non-Cisco devices, configure the RADIUS server to support the Cisco attribute-value pair auto-smart-port= event trigger.
- The switch supports Auto Smartport macros only on directly connected devices. Multiple device connections, such as hubs, are not supported.
- If authentication is enabled on a port, the switch ignores a MAC address trigger if authentication fails.
- The order of CLI commands within the macro and the corresponding antimacro can be different.
Examples
This example shows how to use two built-in macros for connecting Cisco switches and Cisco IP phones to the switch. This example modifies the default voice VLAN, access VLAN, and native VLAN for the trunk interface:
This example shows how to map a user-defined event trigger called media player to a user-defined macro.
1.
Connect the media player to an 802.1x- or MAB-enabled switch port.
2.
On the RADIUS server, set the attribute-value pair to auto-smart-port =DMP_EVENT.
3.
On the switch, create the event trigger DMP_EVENT, and enter the user-defined macro commands.
4.
The switch recognizes the attribute-value pair=DMP_EVENT response from the RADIUS server and applies the macro associated with this event trigger.
|
|
|
|---|---|
Variables that begin with the $ character are replaced with a parameter value. |
|
|
|
|
|---|---|
Related Commands
|
|
|
|---|---|
macro auto global processing
To enable Auto Smartports macros on the switch, use the macro auto global processing global configuration command. Use the no form of this command to disable the macros.
no macro auto global processing
Syntax Description
Command Default
Command Modes
Usage Guidelines
Use the macro auto global processing global configuration command to globally enable macros on the switch. To disable macros on a specific port, use the no macro auto processing command in interface mode.
When using 802.1x or MAB authentication, you need to configure the RADIUS server to support the Cisco attribute-value pair auto-smart-port= event trigger. If authentication fails, the macro is not applied. If the 802.1x or MAB authentication fails on the interface, the switch does not use the fallback CDP event trigger.
When CDP-identified devices advertise multiple capabilities, the switch chooses a capability first by switch and then by router.
To verify that a macro is applied to an interface, use the show macro auto interface privileged EXEC command.
Examples
This example shows how enable Auto Smartports on the switch and to disable the feature on a specific interface:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
macro auto mac-address-group
To create an event trigger for devices that do not support Cisco Discovery Protocol (CDP) or Link Layer Discover Protocol (LLDP), use the macro auto mac-address-group global configuration command. Use the no form of this command to delete the group.
macro auto mac-address-group name [ mac-address list list ] | [ oui [ list list | range start-value size number ]]
no macro auto mac-address-group name [ mac-address list list ] | [ oui [ list list | range start-value size number ]]
Syntax Description
(Optional) Specifies an operationally unique identifier (OUI) list or range. |
|
(Optional) Configures a list of MAC addresses separated by a space. |
Command Default
Command Modes
Usage Guidelines
Use the macro auto mac-address-group global configuration command to create an event trigger for devices that do not support CDP or LLDP. Use the MAC address group as a trigger to map to a built-in or user-defined macro by using the macro auto execute global configuration command. At link-up the switch detects the device type and applies the specified macro.
The switch supports up to ten MAC address groups. Each group can have up to 32 OUI and 32 MAC configured addresses.
Examples
This example shows how to create a MAC-address-group event trigger called address_trigger and how to verify your entries:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
macro auto processing
To enable Auto Smartports macros on an interface, use the macro auto processing interface configuration command. Use the no form of this command to disable the macros.
Syntax Description
Command Default
Command Modes
Usage Guidelines
Use the macro auto processing interface configuration command to enable macros on a specific interface. To disable macros on a specific interface, use the no macro auto processing interface configuration command.
A port cannot be a member of an EtherChannel when you apply Auto Smartports macros. If you use EtherChannels, disable Auto Smartports on the EtherChannel interface by using the no macro auto processing interface configuration command. The EtherChannel interface applies the configuration to the member interfaces.
To verify that a macro is applied to an interface, use the show macro auto interface privileged EXEC command.
Examples
This example shows how to enable Auto Smartports on the switch and to disable the feature on a specific interface:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
macro auto sticky
To configure macros to remain active after a link-down event, referred to as macro persistence, use the macro auto sticky global configuration command. Use the no form of this command to disable the macro persistence.
Syntax Description
Command Default
Command Modes
Usage Guidelines
Use the macro auto sticky global configuration command so that macros remain active after a link-down event.
Examples
This example shows how to enable macro persistence on an interface:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
macro description
To enter a description about which macros are applied to an interface, use the macro description interface configuration command. Use the no form of this command to remove the description. This command is mandatory for Auto Smartports to work.
Syntax Description
Enters a description about the macros that are applied to the specified interface. |
Command Default
Command Modes
Usage Guidelines
Use the description keyword to associate comment text or the macro name with an interface. When multiple macros are applied on a single interface, the description text is from the last applied macro.
You can verify your settings by entering the show parser macro description privileged EXEC command.
Examples
This example shows how to add a description to an interface:
Related Commands
macro global
To apply a macro to a switch or to apply and debug a macro on a switch, use the macro global global configuration command.
macro global { apply | trace } macro-name [ parameter { value }] [ parameter { value }]
[ parameter { value }]
Syntax Description
Command Default
Command Modes
Usage Guidelines
Note
You can delete a global macro-applied configuration on a switch only by entering the no version of each command in the macro.
Use the macro global apply macro-name global configuration command to apply the macro to an interface.
Use the macro global trace macro-name global configuration command to apply and then debug the macro to find any syntax or configuration errors.
If a command fails when you apply a macro because of a syntax error or a configuration error, the macro continues to apply the remaining commands to the switch.
When creating a macro that requires the assignment of unique values, use the parameter value keywords to designate values specific to the switch.
Keyword matching is case sensitive. All matching occurrences of the keyword are replaced with the corresponding value. Any full match of a keyword, even if it is part of a larger string, is considered a match and is replaced by the corresponding value.
Some macros might contain keywords that require a parameter value. You can use the macro global apply macro-name ? command to display a list of any required values in the macro. If you apply a macro without entering the keyword values, the commands are invalid and are not applied.
There are Cisco-default Smartports macros embedded in the switch software. You can display these macros and the commands they contain by using the show parser macro user EXEC command.
Follow these guidelines when you apply a Cisco-default Smartports macro on a switch:
- Display all macros on the switch by using the show parser macro user EXEC command. Display the contents of a specific macro by using the show parser macro name macro-name user EXEC command.
- Keywords that begin with $ mean that a unique parameter value is required. Append the Cisco-default macro with the required values by using the parameter value keywords.
The Cisco-default macros use the $ character to help identify required keywords. There is no restriction on using the $ character to define keywords when you create a macro.
When you apply a macro to a switch, the macro name is automatically added to the switch. You can display the applied commands and macro names by using the show running-config user EXEC command.
Examples
After you have created a new macro by using the macro auto execute global configuration command, you can apply it to a switch. This example shows how see the snmp macro, how to apply the macro, set the hostname to test-server, and set the IP precedence value to 7:
To debug a macro, use the macro global trace global configuration command to find any syntax or configuration errors in the macro when you apply it to a switch. In this example, the ADDRESS parameter value was not entered, the snmp-server host command failed, and the remainder of the macro is applied to the switch:
Related Commands
macro global description
To enter a description about the macros that are applied to a switch, use the macro global description global configuration command. Use the no form of this command to remove the description.
no macro global description text
Syntax Description
Enters a description about the macros that are applied to the switch. |
Command Default
Command Modes
Usage Guidelines
Use the description keyword to associate comment text or the macro name with a switch. When multiple macros are applied on a switch, the description text is from the last applied macro.
You can verify your settings by entering the show parser macro description privileged EXEC command.
Examples
This example shows how to add a description to a switch:
Related Commands
shell trigger
To create an event trigger, use the shell trigger global configuration command. Use the no form of this command to delete the trigger.
shell trigger identifier description
no shell trigger identifier description
Syntax Description
Specifies the event trigger identifier. The identifier should have no spaces or hyphens between words. |
|
Command Default
Command Modes
Usage Guidelines
Use this command to create user-defined event triggers for use with the macro auto device and the macro auto execute global configuration commands.
To support dynamic device discovery when using IEEE 802.1x authentication, you need to configure the RADIUS authentication server to support the Cisco attribute-value pair: auto-smart-port= event trigger.
Examples
This example shows how to create a user-defined event trigger called RADIUS_MAB_EVENT:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
show macro auto
To display Auto Smartports macro information, use the show macro auto user EXEC command.
show macro auto { address-group [ address-group-name ] | device [ access-point ] [ ip-camera ] [ lightweight-ap ] [ media-player ] [ phone ] [ router ] [ switch ] | global [ event_trigger ] | interface [ interface_id ]}
Syntax Description
Command Modes
Usage Guidelines
Use this command to display the Auto Smartports information for the switch. Use the show macro auto device privileged EXEC command to display the configurable parameters for a device.
Examples
This example shows how to use the show macro auto device privileged EXEC command to view the configuration on the switch:
This example shows how to use the show macro auto address-group name privileged EXEC command to view the TEST3 address group configuration on the switch:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
show parser macro
To display the parameters for all configured macros or for one macro on the switch, use the show parser macro user EXEC command.
show parser macro [{ brief | description [ interface interface-id ] | name macro-name }]
Syntax Description
(Optional) Displays all macro descriptions or the description of a specific interface. |
|
(Optional) Displays information about a single macro identified by the macro name. |
Command Modes
Examples
This is a partial output example from the show parser macro command. The output for the Cisco-default macros varies depending on the switch platform and the software image running on the switch:
This is an example of output from the show parser macro name command:
This is an example of output from the show parser macro brief command:
This is an example of output from the show parser macro description command:
This is an example of output from the show parser macro description interface command:
Related Commands
show shell
Usage Guidelines
The show shell command is a feature at the Cisco IOS level. You may first have to enable Cisco IOS Shell by entering the terminal shell command before you can enter the show shell command. For more information, see the Cisco IOS Shell configuration guide on Cisco.com: http://www.cisco.com/en/US/docs/ios/netmgmt/configuration/guide/nm_ios_shell.pdf
To display shell information, use the show shell user EXEC command.
show shell [ environment | functions [ brief | shell_function ] | triggers ]
Syntax Description
Command Modes
Examples
This example shows how to use the show shell triggers privileged EXEC command to view the event triggers in the switch software:
This example shows how to use the show shell functions privileged EXEC command to view the built-in macros in the switch software:
Related Commands
|
|
|
|---|---|
Configures mapping from an event trigger to a built-in macro. |
|
Feedback