Gather the information you need for an NCM device template
Before attempting to modify or create a new device template, be sure you know the commands required for CLI-based devices and the keystrokes for menu-based devices.
Command line interface commands for CLI-based devices
The following command examples are for Cisco IOS. Identify the commands for your device type.
-
What are the Machine Type and System OID values displayed in the Device Details tab of the node properties?
Use this information to save the device template with a unique name that NCM recognizes, ensuring that the template is used when NCM connects to the device.
-
What command is used to disable pagination?
This command is the value used in the template
RESET
command.Example:
terminal pager 0
-
What command is used to reboot the device?
This command is the value used in the template
Reboot
command.Example:
reload noconfirm
-
What command is used to enter configuration mode?
This command is the value used in the template
EnterConfigMode
command.Example:
config terminal
-
What command is used to exit configuration mode?
This command is the value used in the template
ExitConfigMode
command.Example:
quit
-
What command is used to specify the startup configuration?
This command is the value used in the template
Startup
command.Example:
startup
-
What command is used to specify the running configuration?
This command is the value used in the template
Running
command.Example:
running
-
What command sequence is used to directly download the configuration using Telnet or SSH?
This command sequence is the value used in the template
DownloadConfig
command.For more information about variables that can be used in command scripts and device command templates, see NCM device template commands.
Example:
show ${ConfigType}
-
What command sequence is used to upload the configuration using Telnet or SSH?
This command sequence is the value used in the template
UploadConfig
command.Example:
${EnterConfigMode}${CRLF}${ConfigText}${CRLF}${ExitConfigMode}
-
What command sequence is used to download the configuration using SNMP, that is, indirect transfer?
This command sequence is used in the template
DownloadConfigIndirect
command.Example:
copy ${TransferProtocol}://${StorageAddress}/${StorageFilename}$ConfigType}${CRLF}${CRLF
-
What command sequence is used to erase the configuration?
This command sequence is used in the template
EraseConfig
command.Example:
write erase ${CRLF}Yes
-
What command sequence is used to commit a configuration to memory?
This command sequence is used in the template
SaveConfig
command.Example:
write memory
-
What command sequence is used to show the version information?
This command sequence is used in the template
Version
command.Example:
show version
Keystrokes for menu-based devices
Network Configuration Manager supports the upload and download of configs on menu-based devices that do not have command line interfaces. However, NCM does not support execution of command scripts on exclusively menu-based devices. To create or edit a device template for a menu-based device, you must determine what keystrokes are required to perform upload and download commands and format these as device template command values.
On some menu-based devices, such as Cisco SF300 LAN switches, menu item numbers can be used instead of arrow moves. For example, instead of assigning:
Value="${ENTER}${DownArrow}${DownArrow}${DownArrow}${DownArrow}${DownArrow}${DownArrow}}${DownArrow}
You could instead assign:
Value="1${ENTER}7${ENTER}"
To gather the information you need for a a menu-based device command template:
- Manually Telnet to your device to discover the pre‑commands you must send before the device presents the login screen. Pre‑commands are used for any device that requires input before prompting for credentials. For example, when you connect to a router and before you are asked for password, you must press Enter to wake up the connection. Add the following line to the template:
<Command Name="PreCommand" Value="${CRLF}"/>
- NCM also sends a
Version
command during the validate login action. To set this command value, complete the following:To determine this command, find the option in the menu which shows device version information. For example, if the System Information menu shows device version information and to access this menu item you press the Down arrow key (
↓
) twice and then pressEnter
, type the following line into the device command template:<Command Name="Version" Value="${DownArrow}${DownArrow}${CRLF}">
Find the string that is received when the command is complete. For example, if the command is complete when the device responds with System Characteristic, then you must add the following attribute to the command:
RegEx="System Characteristic"
Add a delay between keystrokes by adding the following attribute:
Delay="300"
The complete command line for the Version command is now:
<Command Name="Version" Value="${DownArrow}${DownArrow}${CRLF}" RegEx="System Characteristic" Delay="300" />
- Access the configuration file menu, and then download a configuration manually. During this operation, note the keys you press to complete this process. For example, on a Nortel Baystack 552048T you would press the following keys to download a configuration:
- Down arrow (
↓
) nine times – Highlights Configuration file menu item - Enter – Opens Configuration file menu
- Enter – Opens file Download/Upload menu
- ConfigName + Enter – Sets the name of configuration file
- Down arrow (
↓
) + TFTP IP Address + Enter – Sets the TFTP server address - Down arrow (
↓
) + Space + Enter – Starts the downloading process
- Down arrow (
- Translate all these command into NCM variables. In this example, the following commands are used:
${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}{Downarrow}${Downarrow}${Downarrow}${Downarrow}
${CRLF}
${CRLF}
${StorageFilename}${CRLF}
${DownArrow}${StorageAddress}${CRLF}
${DownArrow}${CRLF}
For a list of commands and their descriptions, see NCM device template commands.
- Find the string that is received when the command is complete. For example, the command is complete when the device responds with written. In this case, you must add the following attribute to the command:
RegEx="written"
. - Add a delay between keystrokes by adding the following attribute:
Delay="300"
. - The complete download command is as follows:
<Command Name="DownloadConfigIndirect" Value="${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}${Downarrow}${CRLF}${CRLF}${StorageFilename}${CRLF}${DownArrow}${StorageAddress}${CRLF}${DownArrow} ${CRLF}" Delay="300" RegEx="written"/>
Click here for an example of a menu-based device template.