Manageability Commands on the Cisco IOS XR Software
This chapter describes the Cisco IOS XR software commands used to enable the HTTP server, enable router management through Extensible Markup Language (XML) agent services, and support the Common Object Request Broker Architecture (CORBA) infrastructure.
The XML Parser Infrastructure provides parsing and generation of XML documents with Document Object Model (DOM), Simple API for XML (SAX), and Document Type Definition (DTD) validation capabilities:
DOM allows customers to programmatically create, manipulate, and generate XML documents.
SAX supports user-defined functions for XML tags.
DTD allows for validation of defined document types.
To enable the HTTP server on the router and enable access to the Craft Works Interface (CWI), use the http server command in global configuration mode. To disable the HTTP server, use the no
form of this command.
httpserver [ssl]
[ access-groupname ]
nohttpserver
Syntax Description
ssl
(Optional) Enables Secure Socket Layer (SSL).
access-groupname
(Optional) Enables access to the CWI from IP addresses that meet the conditions of the access control list (ACL) specified for the name argument.
Command Default
The HTTP server is disabled.
Command Modes
Global configuration
Command History
Release
Modification
Release 2.0
This command was introduced.
Release 3.2
Support for access groups was added. The access-group keyword and name argument were added to support access groups.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Use the http server command to enable the HTTP server on your router.
To display the home page of the router, use a Web browser pointed to http://x.x.x.x, where x.x.x.x is the router IP address. If a name has been set, use http://router-name.
Use the ssl keyword to run HTTP over a secure socket. This command enables the HTTP server to run SSL when accessing web pages or files provided by the HTTP server of the router and disables access through the regular HTTP port.
Enabling the HTTP server enables authentication by default. After the HTTP server has been enabled, you then are prompted to provide a username and password to access web pages on the HTTP server.
Note
The http server command enables the HTTP server process on Management Ethernet interfaces by default. For information about how to enable HTTP server on other inband interfaces, see the Implementing Management Plane Protection on Cisco IOS XR Software module in
Cisco IOS XR System Security Configuration
Guide for the Cisco CRS Router.
Task ID
Task ID
Operations
config-services
read, write
Examples
The following example shows how to enable the HTTP server on the router:
RP/0/RP0/CPU0:router(config)# http server
The following example shows how to enable SSL to run HTTP over a secure socket:
RP/0/RP0/CPU0:router(config)# http server ssl
The following example shows how to enable SSL to run HTTP over a secure socket and to enable access to the CWI from only IP addresses that meet the conditions of the access group named test:
RP/0/RP0/CPU0:router(config)# http server ssl access-group test
The following sample output from the show ipv4 access-lists commands displays the IPv4 access list named test:
RP/0/RP0/CPU0:router# show ipv4 access-lists test
ipv4 access-list test
10 deny ip host 171.71.163.96 any
20 permit ip host 64.102.48.34 any
ipv4 disable
To disable IPv4 XML transport, use the ipv4 disable command in XML agent configuration mode. To enable IPv4 XML transport, use the no form of this command.
ipv4 disable
no ipv4 disable
Syntax Description
This command has no keywords or arguments.
Command Default
IPv4 XML transport is enabled by default.
Command Modes
XML agent configuration
Command History
Release
Modification
Release 4.1.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read, write
Examples
This example illustrates how to disable IPv4 XML transport:
RP/0/RP0/CPU0:router# configRP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent) ipv4 disable
To enable IPv6 XML transport, use the ipv6 enable command in XML agent configuration mode. To disable IPv6 XML transport, use the no form of this command.
ipv6 enable
no ipv6 enable
Syntax Description
This command has no keywords or arguments.
Command Default
IPv6 XML transport is disabled by default.
Command Modes
XML agent configuration
Command History
Release
Modification
Release 4.1.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read, write
Examples
This example illustrates how to enable IPv6 XML transport:
RP/0/RP0/CPU0:router# configRP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent) ipv6 enable
To configure the iteration size for large XML agent responses, use the iteration command in xml agent configuration mode. To revert to the default iteration settings, use the no form of this command.
iteration
{ off | onsizeiteration-size }
noiteration
Syntax Description
off
Disables iteration, meaning that the entire XML response is returned, regardless of its size. Use of this option is not recommended.
on
Enables iteration, meaning that large XML responses are broken into chunks according to the iteration chunk size.
sizeiteration-size
Specifies the size of the iteration chunk, in Kbytes. Values can range from 1 to 100,000.
Command Default
Iteration is enabled; the iteration-size is 48.
Command Modes
XML agent
TTY XML agent
SSL XML agent
Command History
Release
Modification
Release 3.9.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
When the XML agent returns a large response, it splits the response into chunks and returns one chunk at a time. External clients then need to send a GetNext request
to obtain the next chunk. Use the iteration command to control the size of iteration chunks. A larger chunk value allows larger chunks to be received in a shorter period of time, possibly making the router system busier. A smaller chunk value allows smaller chunks to be received over a longer period of time, but does not make the router busy You can also specify to disable iteration completely using the iteration off command.
Note
It is not recommended to disable iteration, since this could result in large transient memory usage.
To specify the TTY or SSL iteration size specifically, use the iteration command from the appropriate command mode.
Task ID
Task ID
Operations
config-services
read, write
Examples
Example
The following example shows how to configure the iteration chunk size to 100 Kbytes.
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml)# iteration on size 100
The following example shows how to disable iteration:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml)# iteration off
The following example shows how to turn on iteration with the default
iteration size:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml)# no iteration off
The following example shows how to change the iteration size to the
default iteration size.
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml)# no iteration on size 100
The following example shows how to change the iteration size of the TTY
agent to 3 Kbytes:
RP/0/RP0/CPU0:router(config)# xml agent ttyRP/0/RP0/CPU0:router(config-xml-tty)# iteration on size 3
The following example shows how to turn off the iteration of the SSL
agent:
RP/0/RP0/CPU0:router(config)# xml agent sslRP/0/RP0/CPU0:router(config-xml-ssl)# iteration off
Enables Extensible Markup Language (XML) requests over Secure Socket Layer
(SSL) and enters SSL XML agent configuration mode.
session timeout
To configure an idle timeout for the XML agent, use the session timeout command in xml agent configuration mode. To remove the session timeout, use the no form of this command.
session timeouttimeout
Syntax Description
timeout
Amount of idle time in minutes that must pass before the XML agent closes the session. Values can range from 1 to 1440.
Command Default
There is no session timeout.
Command Modes
xml agent
xml agent ssl
xml agent tty
Command History
Release
Modification
Release 4.0.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read, write
Examples
The following example illustrates how to configure the dedicated agent to close the session after 5 minutes of idle time:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# session timeout 5
The following example illustrates how to configure the XML TTY agent to close the session after 60 minutes of idle time:
RP/0/RP0/CPU0:router(config)# xml agent ttyRP/0/RP0/CPU0:router(config-xml-agent-tty)# session timeout 60
The following example illustrates how to configure the XML TTY agent to have no timeout (the default):
RP/0/RP0/CPU0:router(config)# xml agent ttyRP/0/RP0/CPU0:router(config-xml-agent)# no session timeout
Enables Extensible Markup Language (XML) requests over a dedicated TCP connection and enters XML agent configuration mode.
show xml schema
To browse the XML schema and data, use the
showxmlschema command in EXEC mode.
showxmlschema
Syntax Description
This command has no keywords or arguments.
Command Default
None
Command Modes
EXEC
Command History
Release
Modification
Release 3.6.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The
showxmlschema command
runs the XML schema browser so that you can browse the XML schema and data.
Task ID
Task ID
Operations
config-services
read
Examples
This example shows how to enter the XML schema browser and
the available commands:
RP/0/RP0/CPU0:router# show xml schema
Username: xxxx
Password:
Enter 'help' or '?' for help
xml-schema[config]:> ?
config oper action
adminoper adminaction cd
pwd classinfo list
ls datalist walk
walkdata get hierarchy
quit exit help
xml-schema[config]:>
Related Commands
Command
Description
copyxml-schema
Copies the XML schema files on the router as a tar ball file
(.tar.gz).
show xml sessions
To display the status of an Extensible Markup Language (XML)
session, use the show xml sessions command in EXEC mode.
show xml sessions
[ default | ssl | tty ]
[detail]
Syntax Description
default
Displays the status of the default XML agent.
ssl
Displays the status of the XML agents over secure socket layer (SSL).
tty
Displays the status of XML agents over telnet.
detail
Displays details regarding the XML sessions.
Command Default
None
Command Modes
EXEC
Command History
Release
Modification
Release 4.0.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read
Examples
Example
This example illustrates sample output of the show xml sessions command with no optional keywords specified:
RP/0/RP0/CPU0:router# show xml sessions
Session Client Agent User Date State
00000001 192.168.10.85 (default) tty cisco Fri Jun 19 22:42:29 2009 idle
10000001 10.12.24.15 (VRF1) default lab Fri Jun 19 22:32:12 2009 busy
This example illustrates sample output of the show xml sessions command with the tty keyword:
RP/0/RP0/CPU0:router# show xml sessions tty
Session Client Agent User Date State
00000001 192.168.10.85 (default) tty cisco Fri Jun 19 22:42:29 2009 idle
00000002 10.12.24.15 (VRF1) tty lab Fri Jun 19 22:32:12 2009 busy
This example illustrates sample output of the show xml sessions command with the detail keyword:
RP/0/RP0/CPU0:router# show xml sessions detail
Session: 00000001
Client: 192.168.10.85 (default)
Agent type: tty
User: cisco
State: idle
Config session: -
Alarm notification: Registered
Start Date: Tue Aug 24 18:21:29 2010
Elapsed Time: 00:00:27
Last State Changed: 00:00:27
Session: 10000001
Client: 10.12.24.15 (VRF1)
Agent type: default
User: lab
State: busy
Config session: 00000010-0005b105-00000000
Alarm notification: Not registered
Start date: Tue Aug 24 18:21:29 2010
Elapsed Time: 00:01:10
Last State Changed: 00:01:10
Enables Extensible Markup Language (XML) requests over a dedicated TCP connection and enters XML agent configuration mode.
shutdown (VRF)
To configure the dedicated XML agent to not receive or send messages via the default VRF, use the shutdown command in xml agent vrf configuration mode. To enable the dedicated XML agent to receive or send messages via the default VRF, use the no form of this command.
shutdown
no shutdown
This command has no keywords or arguments.
Command Default
The default VRF instance is enabled by default.
Command Modes
xml agent vrf configuration
xml agent ssl vrf configuration
Command History
Release
Modification
Release 4.0.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read, write
Examples
Example
The following example illustrates how to configure the XML dedicated agent to send and receive messages via VRF1 only:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# vrf VRF1RP/0/RP0/CPU0:router(config-xml-agent)# vrf defaultRP/0/RP0/CPU0:router(config-xml-agent-vrf)# shutdown
The following example illustrates how to configure the XML SSL agent to send and receive messages via VRF1 only:
RP/0/RP0/CPU0:router(config)# xml agent sslRP/0/RP0/CPU0:router(config-xml-agent-ssl)# vrf VRF1RP/0/RP0/CPU0:router(config-xml-agent-ssl)# vrf defaultRP/0/RP0/CPU0:router(config-xml-agent-ssl-vrf)# shutdown
The following example illustrates how to enable the default VRF after it has been disabled:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# vrf defaultRP/0/RP0/CPU0:router(config-xml-agent-vrf)# no shutdown
Configures a dedicated agent to receive and send messages via the specified VPN routing and forwarding (VRF) instance.
streaming
To configure XML response streaming, use the streaming command in one of the XML agent configuration modes. To disable XML response streaming, use the no form of this command.
streaming on sizesize
Syntax Description
on
Turns on XML streaming.
sizesize
Specifies the size of the stream in Kbytes.
Command Default
XML streaming is disabled.
Command Modes
XML agent
XML agent ssl
XML agent tty
Command History
Release
Modification
Release 4.1.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Task ID
Task ID
Operation
config-services
read, write
Examples
This example illustrates how to set the XML response streaming size to 5000 Kbytes.
RP/0/RP0/CPU0:router# config
RP/0/RP0/CPU0:router(config)# xml agent
RP/0/RP0/CPU0:router(config-xml-agent)# streaming on size 5000
throttle
To configure the XML agent processing capabilities, use the throttle command in XML agent configuration mode.
throttle
{ memorysize | process-ratetags }
Syntax Description
memory
Specifies the XML agent memory size.
size
Size of the XML agent memory in MB. Values can range from 100 to 600. The default is 300.
process-rate
Specifies the XML agent processing rate.
tags
Number of tags that the XML agent can process per second. Values can range from 1000 to 30000.
Command Default
The process rate is not throttled; memory size is 300 MB.
Command Modes
XML agent configuration
Command History
Release
Modification
Release 3.8.2
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
Use the throttle command to control CPU time used by the XML agent when it handles large data.
Task ID
Task ID
Operation
config-services
read, write
Examples
Example
This example illustrates how to configure the number of tags that the XML agent can process to 1000:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# throttle process-rate 1000
vrf (XML)
To configure a dedicated agent to receive and send messages via the specified VPN routing and forwarding (VRF)
instance, use the vrf command in one of the xml agent configuration mode. To disable the receiving and sending of messages via a specific VRF instance, use the no form of this command.
vrf
{ default | vrf-name }
Syntax Description
default
Configures the default VRF instance.
vrf-name
Configures the specified VRF instance.
Command Default
The default VRF is enabled by default.
Command Modes
XML agent configuration
XML agent SSL configuration
Command History
Release
Modification
Release 4.0.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The default VRF is enabled by default. To disable the default VRF, use the shutdown command.
Task ID
Task ID
Operation
config-services
read, write
Examples
Example
This example shows how to configure the dedicated XML agent to receive and send messages via VRF1, VRF2 and the default VRF:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# vrf VRF1RP/0/RP0/CPU0:router(config-xml-agent)# vrf VRF2
This example shows how to remove access to VRF2 from the dedicated agent:
RP/0/RP0/CPU0:router(config)# xml agentRP/0/RP0/CPU0:router(config-xml-agent)# no vrf VRF2
Enables XML requests over Secure Socket Layer (SSL) and enters SSL XML agent configuration mode.
xml agent
To enable Extensible Markup Language (XML) requests over a dedicated TCP connection and enter XML agent configuration mode, use the xmlagent
command in global configuration mode. To disable XML requests over the dedicated TCP connection, use the no form of this command.
Note
This command enables a new, enhanced-performance XML agent. The xml agent tty command enables the legacy XML agent and is supported for backward compatibility.
xmlagent
noxmlagent
Command Default
XML requests are disabled.
Command Modes
Global configuration
Command History
Release
Modification
Release 3.8.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
There are two XML agents: a legacy XML agent and an enhanced-performance XML agent. We recommend that you use the enhanced-performance agent. The legacy agent is supported for backward compatibility. Use the xml agent command to enable the enhanced-performance XML agent. Use the xml agent tty command to enable the legacy XML agent.
Use the no form of the xml agent command to disable the enhanced-performance XML agent.
Task ID
Task ID
Operations
config-services
read, write
Examples
This example shows how to enable XML requests over a dedicated TCP connection:
RP/0/RP0/CPU0:router(config)# xml agent
xml agent ssl
To enable Extensible Markup Language (XML) requests over Secure Socket Layer
(SSL) and enter SSL XML agent configuration mode, use the xmlagentssl command in global configuration mode. To disable XML requests over SSL, use the no form of this command.
xmlagentssl
noxmlagentssl
Command Default
SSL agent is disabled by default.
Command Modes
Global configuration
Command History
Release
Modification
Release 3.9.0
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
The
k9sec package is required to use the SSL agent. The
configuration is rejected during commit when the security software package is
not active on the system. When the security software package is deactivated after configuring SSL
agent, the following syslog message is displayed to report that the SSL
agent is no longer available.
xml_dedicated_ssl_agent[420]:
%MGBL-XML_TTY-7-SSLINIT : K9sec pie is not active, XML service over
SSL is not available.
Task ID
Task ID
Operations
config-services
read, write
Examples
Example
This example shows how to enable XML requests over SSL:
RP/0/RP0/CPU0:router(config)# xml agent ssl
xml agent tty
To enable Extensible Markup Language (XML) requests over Secure Shell (SSH) and Telnet and enter TTY XML agent configuration mode, use the xmlagenttty command in global configuration mode. To disable XML requests over SSH and Telnet, use the no form of this command.
Note
This command enables a legacy XML agent that has been superceded by an enhanced performance XML agent and is supported only for backward compatibility. To enable the enhanced-performance XML agent, use the xml agent command.
xmlagenttty
noxmlagenttty
Command Default
XML requests over SSH and Telnet are disabled.
Command Modes
Global configuration
Command History
Release
Modification
Release 3.2
This command was introduced.
Usage Guidelines
To use this command, you must be in a user group associated with a task group that includes appropriate task IDs. If the user group assignment is preventing you from using a command, contact your AAA administrator for assistance.
There are two XML agents: a legacy XML agent and an enhanced-performance XML agent. We recommend that you use the enhanced-performance agent. The legacy agent is supported for backward compatibility. The xmlagenttty command enables the legacy XML agent. Use the xml agent command to enable the enhanced-performance XML agent.
Use the no form of the xmlagenttty command to disable the legacy XML agent.
Task ID
Task ID
Operations
config-services
read, write
Examples
This example shows how to enable XML requests over Secure Shell (SSH) and Telnet: