Configuring Physical and Virtual Terminals

Line templates define standard attribute settings for incoming and outgoing transport over physical and virtual terminal lines (vtys). Vty pools are used to apply template settings to ranges of vtys.

This module describes the tasks you need to implement physical and virtual terminals on your Cisco IOS XR network.

Prerequisites for Implementing Physical and Virtual Terminals

You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

Information About Implementing Physical and Virtual Terminals

To implement physical and virtual terminals, you need to understand the concepts in this section.


Tip

You can programmatically manage the physical and virtual terminals using openconfig-system-terminal.yang OpenConfig data model. To get started with using data models, see the Programmability Configuration Guide for Cisco NCS 540 Series Routers.


Line Templates

The following line templates are available in the Cisco IOS XR software.

  • Default line template—The default line template that applies to a physical and virtual terminal lines.

  • Console line template—The line template that applies to the console line.

  • User-defined line templates—User-defined line templates that can be applied to a range of virtual terminal lines.

Line Template Configuration Mode

Changes to line template attributes are made in line template configuration mode. To enter line template configuration mode, issue the line command from XR Config mode, specifying the template to be modified. These line templates can be configured with the line command:

  • console—console template

  • default—default template

  • template—user-defined template

After you specify a template with the line command, the router enters line template configuration mode where you can set the terminal attributes for the specified line. This example shows how to specify the attributes for the console:


RP/0/RP0/CPU0:router(config)# line console
RP/0/RP0/CPU0:router(config-line)# 

From line template configuration mode, use the online help feature ( ? ) to view all available options. Some useful options include:

  • absolute-timeout—Specifies a timeout value for line disconnection.

  • escape-character—Changes the line escape character.

  • exec-timeout—Specifies the EXEC timeout.

  • length—Sets the number of lines displayed on the screen.

  • session-limit—Specifies the allowable number of outgoing connections.

  • session-timeout—Specifies an interval for closing the connection if there is no input traffic.

  • timestamp—Displays the timestamp before each command.

  • width—Specifies the width of the display terminal.


Note

The default session-limit for line template is applicable to Telnet sessions only. It is not applicable for SSH sessions.

Line Template Guidelines

The following guidelines apply to modifying the console template and to configuring a user-defined template:

  • Modify the templates for the physical terminal lines on the router (the console port) from line template configuration mode. Use the line console command from XR Config mode to enter line template configuration mode for the console template.
  • Modify the template for virtual lines by configuring a user-defined template with the line template-name command, configuring the terminal attributes for the user-defined template from line template configuration, and applying the template to a range of virtual terminal lines using the vty pool command.


Note

Before creating or modifying the vty pools, enable the telnet server using the telnet server command in XR Config mode. See Cisco IOS XR IP Addresses and Services Configuration Guide and Cisco IOS XR IP Addresses and Services Command Reference for more information.


Terminal Identification

The physical terminal lines for the console port is identified by its location, expressed in the format of rack/slot/module , on the active or standby route processor (RP) where the respective console port resides. For virtual terminals, physical location is not applicable; the Cisco IOS XR software assigns a vty identifier to vtys according to the order in which the vty connection has been established.

vty Pools

Each virtual line is a member of a pool of connections using a common line template configuration. Multiple vty pools may exist, each containing a defined number of vtys as configured in the vty pool. The Cisco IOS XR software supports the following vty pools by default:

  • Default vty pool—The default vty pool consists of five vtys (vtys 0 through 4) that each reference the default line template.

  • Default fault manager pool—The default fault manager pool consists of six vtys (vtys 100 through 105) that each reference the default line template.

In addition to the default vty pool and default fault manager pool, you can also configure a user-defined vty pool that can reference the default template or a user-defined template.

When configuring vty pools, follow these guidelines:

  • The vty range for the default vty pool must start at vty 0 and must contain a minimum of five vtys.
  • The vty range from 0 through 99 can reference the default vty pool.
  • The vty range from 5 through 99 can reference a user-defined vty pool.
  • The vty range from 100 is reserved for the fault manager vty pool.
  • The vty range for fault manager vty pools must start at vty 100 and must contain a minimum of six vtys.
  • A vty can be a member of only one vty pool. A vty pool configuration will fail if the vty pool includes a vty that is already in another pool.
  • If you attempt to remove an active vty from the active vty pool when configuring a vty pool, the configuration for that vty pool will fail.

How to Implement Physical and Virtual Terminals on Cisco IOS XR Software

Modifying Templates

This task explains how to modify the terminal attributes for the console and default line templates. The terminal attributes that you set will modify the template settings for the specified template.

SUMMARY STEPS

  1. configure
  2. line {console | default}
  3. Configure the terminal attribute settings for the specified template using the commands in line template configuration mode.
  4. Use one of the following commands:
    • end
    • commit

DETAILED STEPS

  Command or Action Purpose

Step 1

configure

Example:


RP/0/RP0/CPU0:router# configure

Enters mode.

Step 2

line {console | default}

Example:


RP/0/RP0/CPU0:router(config)# line console

or


RP/0/RP0/CPU0:router(config)# line default

Enters line template configuration mode for the specified line template.

  • console —Enters line template configuration mode for the console template.

  • default —Enters line template configuration mode for the default line template.

Step 3

Configure the terminal attribute settings for the specified template using the commands in line template configuration mode.

Step 4

Use one of the following commands:

  • end
  • commit

Example:


RP/0/RP0/CPU0:router(config-line)# end

or


RP/0/RP0/CPU0:router(config-line)# commit

Saves configuration changes.

  • When you issue the end command, the system prompts you to commit changes:

    
    Uncommitted changes found, commit them 
    before exiting(yes/no/cancel)?
    [cancel]:
    
    • Entering yes saves configuration changes to the running configuration file, exits the configuration session, and returns the router to EXEC mode.

    • Entering no exits the configuration session and returns the router to EXEC mode without committing the configuration changes.

    • Entering cancel leaves the router in the current configuration session without exiting or committing the configuration changes.

  • Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session.

Creating and Modifying vty Pools

This task explains how to create and modify vty pools.

You can omit Step 3 to Step 5 (line template and exit commands) if you are configuring the default line template to reference a vty pool.

SUMMARY STEPS

  1. configure
  2. telnet {ipv4 | ipv6} server max-servers limit
  3. line template template-name
  4. Configure the terminal attribute settings for the specified line template using the commands in line template configuration mode.
  5. exit
  6. vty-pool {default | pool-name | eem} first-vty last-vty [line-template {default | template-name}]
  7. Use the commit or end command.

DETAILED STEPS

  Command or Action Purpose

Step 1

configure

Example:


RP/0/RP0/CPU0:router# configure

Enters mode.

Step 2

telnet {ipv4 | ipv6} server max-servers limit

Example:


RP/0/RP0/CPU0:router(config)# telnet 
    ipv4 server max-servers 10

Specifies the number of allowable Telnet servers. Up to 100 Telnet servers are allowed.

Note 

By default no Telnet servers are allowed. You must configure this command in order to enable the use of Telnet servers.

Step 3

line template template-name

Example:


RP/0/RP0/CPU0:router(config)# line template 1

Enters line template configuration mode for a user-defined template.

Step 4

Configure the terminal attribute settings for the specified line template using the commands in line template configuration mode.

Step 5

exit

Example:


RP/0/RP0/CPU0:router(config-line)# exit

Exits line template configuration mode and returns the router to global configuration mode.

Step 6

vty-pool {default | pool-name | eem} first-vty last-vty [line-template {default | template-name}]

Example:


RP/0/RP0/CPU0:router(config)#vty-pool 
    default 0 5 line-template default

or


RP/0/RP0/CPU0:router(config)#vty-pool
    pool1 5 50 line-template template1

or


RP/0/RP0/CPU0:router(config)#vty-pool
    eem 100 105 line-template template1

RP/0/RP0/CPU0:router(config)#vty-pool 
    default 0 5 line-template template1

Creates or modifies vty pools.

  • If you do not specify a line template with the line-template keyword, a vty pool defaults to the default line template.

  • default —Configures the default vty pool.

    • The default vty pool must start at vty 0 and must contain a minimum of five vtys (vtys 0 through 4).

    • You can resize the default vty pool by increasing the range of vtys that compose the default vty pool.

  • pool-name —Creates a user-defined vty pool.

    • A user-defined pool must start at least at vty 5, depending on whether the default vty pool has been resized.

    • If the range of vtys for the default vty pool has been resized, use the first range value free from the default line template. For example, if the range of vtys for the default vty pool has been configured to include 10 vtys (vty 0 through 9), the range value for the user-defined vty pool must start with vty 10.

  • eem —Configures the embedded event manager pool.

    • The default embedded event manager vty pool must start at vty 100 and must contain a minimum of six vtys (vtys 100 through 105).

  • line-template template-name —Configures the vty pool to reference a user-defined template.

Step 7

Use the commit or end command.

commit —Saves the configuration changes and remains within the configuration session.

end —Prompts user to take one of these actions:
  • Yes — Saves configuration changes and exits the configuration session.

  • No —Exits the configuration session without committing the configuration changes.

  • Cancel —Remains in the configuration session, without committing the configuration changes.

Monitoring Terminals and Terminal Sessions

This task explains how to monitor terminals and terminal sessions using the show EXEC commands available for physical and terminal lines.


Note

The commands can be entered in any order.


SUMMARY STEPS

  1. (Optional) show line [aux location node-id | console location node-id | vty number]
  2. (Optional) show terminal
  3. (Optional) show users

DETAILED STEPS

  Command or Action Purpose

Step 1

(Optional) show line [aux location node-id | console location node-id | vty number]

Example:


RP/0/RP0/CPU0:router# show line
(Optional)

Displays the terminal parameters of terminal lines.

  • Specifying the show line aux location node-id EXEC command displays the terminal parameters of the auxiliary line.

  • Specifying the show line console location node-id EXEC command displays the terminal parameters of the console.

    • For the location node-id keyword and argument, enter the location of the Route Processor (RP) on which the respective auxiliary or console port resides.

    • The node-id argument is expressed in the format of rack/slot/module .

  • Specifying the show line vty number EXEC command displays the terminal parameters for the specified vty.

Step 2

(Optional) show terminal

Example:


RP/0/RP0/CPU0:router# show terminal
(Optional)

Displays the terminal attribute settings for the current terminal line.

Step 3

(Optional) show users

Example:


RP/0/RP0/CPU0:router# show users
(Optional)

Displays information about the active lines on the router.

Configuration Examples for Implementing Physical and Virtual Terminals

Modifying the Console Template: Example

This configuration example shows how to modify the terminal attribute settings for the console line template:

RP/0/RP0/CPU0:router# show running-config line console
line console
  exec-timeout 0 0
  escape-character 0x5a 
  session-limit 10
  disconnect-character 0x59
  session-timeout 100
  transport input telnet
  transport output telnet
  

In this configuration example, the following terminal attributes are applied to the console line template:

  • The EXEC time out for terminal sessions is set to 0 minutes, 0 seconds. Setting the EXEC timeout to 0 minutes and 0 seconds disables the EXEC timeout function; thus, the EXEC session for the terminal session will never time out.

  • The escape character is set to the 0x5a hexadecimal value (the 0x5a hexadecimal value translates into the “Z” character).

  • The session limit for outgoing terminal sessions is set to 10 connections.

  • The disconnect character is set to 0x59 hexadecimal value (the 0x59 hexadecimal character translates into the “Y” character).

  • The session time out for outgoing terminal sessions is set to 100 minutes (1 hour and 40 minutes).

  • The allowed transport protocol for incoming terminal sessions is Telnet.

  • The allowed transport protocol for outgoing terminal sessions is Telnet.

To verify that the terminal attributes for the console line template have been applied to the console, use the show line command:


RP/0/RP0/CPU0:router:router# show line console location 0/0/CPU0
Tue Nov 24 03:10:24.656 UTC
Tty             Speed     Overruns           Acc I/O
*con0/0/CPU0      9600       0/0               -/-

Line "con0_RP1_CPU0", Location "0/RP1/CPU0", Type "Console"
Length: 24 lines, Width: 80 columns
Baud rate (TX/RX) is 9600, "No" Parity, 2 stopbits, 8 databits
Template: console
Capabilities: Timestamp Enabled
Allowed transports are telnet.

Modifying the Default Template: Example

This configuration example shows how to override the terminal settings for the default line template:

line default
  exec-timeout 0 0
  width 512
  length 512
  

In this example, the following terminal attributes override the default line template default terminal attribute settings:

  • The EXEC timeout for terminal sessions is set to 0 minutes and 0 seconds. Setting the EXEC timeout to 0 minutes and 0 seconds disables the EXEC timeout function; thus, the EXEC session for the terminal session will never time out (the default EXEC timeout for the default line template is 10 minutes).

  • The width of the terminal screen for the terminals referencing the default template is set to 512 characters (the default width for the default line template is 80 characters).

  • The length, the number of lines that will display at one time on the terminal referencing the default template, is set to 512 lines (the default length for the default line template is 24 lines).

Configuring a User-Defined Template to Reference the Default vty Pool: Example

This configuration example shows how to configure a user-defined line template (named test in this example) for vtys and to configure the line template test to reference the default vty pool:


line template test
  exec-timeout 100 0
  width 100
  length 100
  exit
vty-pool default 0 4 line-template test

Configuring a User-Defined Template to Reference a User-Defined vty Pool: Example

This configuration example shows how to configure a user-defined line template (named test2 in this example) for vtys and to configure the line template test to reference a user-defined vty pool (named pool1 in this example):


line template test2
  exec-timeout 0 0
  session-limit 10
  session-timeout 100
  transport input all
  transport output all
  exit
vty-pool pool1 5 50 line-template test2

Configuring a User-Defined Template to Reference the Fault Manager vty Pool: Example

This configuration example shows how to configure a user-defined line template (named test3 in this example) for vtys and to configure the line template test to reference the fault manager vty pool:

line template test3
  width 110
  length 100
  session-timeout 100
  exit
  vty-pool eem 100 105 line-template test3