Abstrato
O foco deste documento é introduzir um novo sistema operacional Cisco Internetworking (IOS) para o usuário de linha de comando IOS Interface (CLI). Após a leitura deste documento, um novo usuário vai entender como usar o IOS CLI para configurar e gerenciar um roteador IOS. Para facilitar a referência, o Quadro 1 exibe uma coleção de termos importantes e siglas que são usadas em todo o documento.
Tabela 1 - Glossário de termos importantes e acrônimos usados neste tutorial
Cisco IOS | - Cisco Internetworking Operating System |
CLI | - Command Line Interface |
EXEC | - Sessão de linha de comando para o roteador (pode ser console, modem, ou telnet) |
Flash | - Memória não-volátil utilizada para armazenar software IOS imagem |
NVRAM | - Non-Volatile RAM usado para armazenar a configuração do roteador |
RAM | - Memória de Acesso Aleatório |
CLI Arquitetura
Um roteador Cisco IOS interface de linha de comando pode ser acessado através de um console ou de ligação, ligação para modem, ou uma sessão de telnet. Independentemente de qual método de conexão é usado, o acesso à interface de linha de comando IOS é geralmente referido como uma sessão de EXEC.
Como um recurso de segurança, a Cisco IOS separa as sessões EXEC em dois diferentes níveis de acesso - ao nível do utilizador e nível EXEC EXEC privilegiado. Nível de usuário EXEC permite que uma pessoa o acesso apenas uma quantidade limitada de comandos básicos de monitorização. Nível EXEC privilegiado permite que uma pessoa acessar todos os comandos do roteador (por exemplo, configuração e gerenciamento) e podem ser protegidas por senha para permitir que somente usuários autorizados a capacidade de configurar ou manter o router.
Por exemplo, quando uma sessão é iniciada EXEC, o roteador irá mostrar uma "Router>" prompt. A seta para a direita (>) no prompt indica que o roteador está no nível do usuário EXEC. O nível de usuário EXEC não contém todos os comandos que podem controlar (por exemplo, recarregar ou configure) o funcionamento do roteador. Para listar os comandos disponíveis no nível do usuário EXEC, digite um ponto de interrogação (?) No Router> prompt. (Este recurso é chamado de ajuda sensível ao contexto.)
Comandos críticos (por exemplo, configuração e gerenciamento) exigem que o usuário seja no nível EXEC privilegiado. Para mudar para o nível EXEC privilegiado, digite "enable" no Router> prompt. Se uma senha de ativação está configurado, o roteador irá então pedir para que a senha. Quando a senha de ativação correta é digitada, o roteador prompt vai mudar para "Router #", indicando que o usuário está agora no nível EXEC privilegiado. Para voltar ao nível de usuário EXEC, tipo "disable" no Router # prompt. Digitar um ponto de interrogação (?) No nível EXEC privilegiado vai agora revelar muitas mais opções de comando do que os disponíveis no nível do usuário EXEC. O texto abaixo ilustra o processo de mudança de níveis EXEC.
Router> enable
Password: [senha de ativação]
Router # disable
Router>
Nota: Por razões de segurança, o roteador não ecoará a senha que é inserida. Além disso, saiba que, se a configuração de um router via telnet, a senha é enviada em texto claro. Telnet não oferece um método para proteger pacotes.
Uma vez que uma sessão de EXEC é estabelecida, comandos dentro Cisco IOS são hierarquicamente estruturados. A fim de conseguir configurar o roteador, é importante compreender essa hierarquia. Para ilustrar esta hierarquia, a Figura 1 apresenta um diagrama esquemático simples de alto nível de alguns comandos IOS.
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_sl64ns1gmliPPXuQGy-Adj7NAbhg1hJLuKvDS5MU9Ema2gX1GKuYiS1v0lSn-4FruGUlI_qME8oKn8XDW7HAEg_N45UN8v6s7lQA=s0-d)
Figura 1 - IOS CLI hierarquia
Opções de comando e aplicações variam dependendo da posição dentro dessa hierarquia. Referindo-se ao diagrama da figura 1, as opções de comando de configuração não estará disponível até que o usuário navegou para o ramo de configuração da estrutura CLI IOS. Uma vez no ramo de configuração, um usuário pode digitar os comandos de nível de sistema de configuração que se aplicam a todo o roteador no nível de configuração global. Comandos de configuração de interface específicos estão disponíveis uma vez que o usuário tenha mudado para o nível particular interface de configuração. Informações mais detalhadas e exemplos de como navegar pela hierarquia CLI IOS são oferecidos na configuração do roteador seção.
Para auxiliar os usuários na navegação através de IOS CLI, o prompt de comando será alterado para refletir a posição de um usuário dentro da hierarquia de comando. Isso permite aos usuários facilmente identificar onde dentro da estrutura de comando que estão em um dado momento. Tabela 2 é um resumo de prompts de comando eo local correspondente dentro da estrutura de comando.
Tabela 2 - Resumo IOS Command Prompt
Router> |
- Modo EXEC usuário |
Router # |
- Modo EXEC privilegiado |
Router (config) # |
- Modo de configuração (note o sinal # indica isso só é acessível em modo EXEC privilegiado.) |
Router (config-if) # |
- Nível de interface dentro do modo de configuração. |
Router (config-router) # |
- Nível do motor de roteamento dentro do modo de configuração. |
Router (config-line) # |
- Nível Line (vty, tty, async) em modo de configuração. |
Características CLI do Editor
Ajuda sensível ao contexto
Cisco IOS CLI oferece ajuda sensível ao contexto. Esta é uma ferramenta útil para um novo usuário, porque a qualquer momento durante uma sessão de EXEC, um usuário pode digitar um ponto de interrogação (?) Para obter ajuda. Dois tipos de ajuda sensível ao contexto estão disponíveis - help palavra e ajudar a sintaxe do comando.
Ajudar a palavra pode ser usada para obter uma lista de comandos que começam com uma seqüência de caracteres particular. Para usar a Ajuda do Word, digite os caracteres em questão é imediatamente seguido pelo ponto de interrogação (?). Não inclua um espaço antes do ponto de interrogação. O roteador irá exibir uma lista de comandos que começam com os caracteres que foram inseridos. O seguinte é um exemplo de ajuda palavra:
Router # co? |
configurar conectar cópia |
Ajudar a sintaxe de comando pode ser usado para obter uma lista de comando, palavra-chave, ou argumento opções que estão disponíveis com base na sintaxe que o usuário já entrou. Para usar a ajuda de sintaxe de comando, digite um ponto de interrogação (?) No lugar de uma palavra-chave ou argumento. Incluir um espaço antes do ponto de interrogação. O roteador irá exibir uma lista de opções de comando disponíveis com <cr> pé para retorno de carro. O seguinte é um exemplo de ajuda para a sintaxe de comando:
Router # configure? |
Configure a memória da memória NV Configurar rede a partir de um host de rede TFTP overwrite-rede Overwrite memória NV de TFTP host da rede = 20 terminal Configurar a partir do terminal <cr> |
Verificar sintaxe de comando
Se um comando é inserido indevidamente (por exemplo, erro de digitação ou opção de comando inválido), o roteador irá informar o usuário e indicar onde o erro ocorreu. Um símbolo de acento circunflexo (^) irá aparecer debaixo do comando incorreto, o argumento de palavra-chave ou. O exemplo a seguir mostra o que acontece se a palavra-chave "ethernet" está escrito incorretamente.
Router (config) # interface ethernat
^
Entrada inválida% detectados em '^' marcador.
Abreviatura de comando
Comandos e palavras-chave pode ser abreviado para o número mínimo de caracteres que identifica uma seleção única. Por exemplo, você pode abreviar o "configure" comando "conf", porque "configure" é o único comando que começa com "conf". Você não poderia abreviar o comando para "con", porque mais de um comando poderia caber a este critério. O roteador irá emitir a seguinte mensagem de erro se você não fornecer caracteres suficientes.
cisco (config) # i
Comando% ambíguo: "i"
Teclas de atalho
Para as funções de edição de muitos, o IOS editor CLI fornece teclas de atalho. A tabela a seguir lista alguns atalhos de edição que estão disponíveis.
Tabela 3 - Resumo das Teclas de Atalho
Excluir |
- Remove um caractere à direita do cursor. |
Retrocesso |
- Remove um caractere à esquerda do cursor. |
TAB |
- Termina um comando parcial. |
Ctrl-A |
- Move o cursor para o início da linha atual. |
Ctrl-R |
- Exibe novamente uma linha. |
Ctrl-U |
- E rases uma linha. |
Ctrl-W |
- Apaga uma palavra. |
Ctrl-Z |
- Termina o modo de configuração e retorna para o EXEC. |
Seta para Cima |
- Permite que o usuário vá para a frente através de comandos anterior. |
Seta para baixo |
- Permite que o usuário rolar para trás através de comandos anterior. |
Configuração do roteador
Configurações de entrada
Talvez a melhor maneira de ilustrar IOS CLI navegação é andando por uma configuração de roteador simples. Os comentários no exemplo não tente explicar o significado de cada comando individual, mas sim a intenção de mostrar onde os comandos de configuração são inseridos dentro da estrutura de comando IOS. Preste atenção em como as mudanças prompt de comando como o usuário navega através da hierarquia CLI IOS. Notar também que os parâmetros globais são configurados no nível de configuração global (indicada por um "Router (config) #" prompt), enquanto interface de comandos específicos são inseridos após a mudança para a interface particular (indicada por um "Router (config-if) #" prompt). Parâmetros globais e parâmetros de interface são discutidos na Configurations Exibindo seção sob gerenciamento do roteador .
Router> enable |
- Muda para nível EXEC privilegiado |
Router # configure terminal |
- Alterna para o nível de configuração global |
Router (config) # enable secret cisco |
- Router configura com um segredo permitir (global) |
Router (config) # ip route 0.0.0.0 0.0.0.0 20.2.2.3 |
- Configura uma rota IP estática (global) |
Router (config) # interface ethernet0 |
- Alterna para configurar a interface ethernet0 |
Endereço do roteador (config-if) # ip 10.1.1.1 255.0.0.0 |
- Configura um endereço IP em ethernet0 (interface) |
Router (config-if) # no shutdown |
- Ativa ethernet0 (interface) |
Router (config-if) # exit |
- Saídas de volta ao nível de configuração global |
Router (config) # interface serial0 |
- Alterna para configurar a interface serial0 |
Endereço do roteador (config-if) # ip 20.2.2.2 255.0.0.0 |
- Configura um endereço IP na serial0 (interface) |
Router (config-if) # no shutdown |
- Ativa serial0 (interface) |
Router (config-if) # exit |
- Saídas de volta ao nível de configuração global |
Router (config) # router rip |
- Switches para configurar RIP mecanismo de roteamento |
Router (config-router) # network 10.0.0.0 |
- Acrescenta a rede 10.0.0.0 RIP motor (mecanismo de roteamento) |
Router (config-router) # network 20.0.0.0 |
- Acrescenta a rede 20.0.0.0 RIP motor (mecanismo de roteamento) |
Router (config-router) # exit |
- Saídas de volta ao nível de configuração global |
Router (config) # exit |
- Sai fora do nível de configuração |
Cópia Router # running-config startup-config |
- Salva a configuração em NVRAM |
Router # disable |
- Desativa nível EXEC privilegiado |
Router> |
- O usuário indica está de volta ao nível de usuário EXEC |
No exemplo acima, observe como o comando de saída é usado para fazer backup de um nível dentro da hierarquia IOS. Por exemplo, se no nível de configuração de interface (ie Router (config-if) # prompt), escrever exit irá colocar o usuário de volta ao nível de configuração global (ou seja, Router (config) # prompt).
Tomando Interfaces Out Of Shutdown
Roteadores navio de fábrica com todas as interfaces desativado. Interfaces de desativado são referidos como estando em um estado de desligamento. Antes de uma interface pode ser usado, ele deve ser tirado do estado de desligamento. Para tomar uma interface de shutdown, digite "shutdown" no nível apropriado interface de configuração. O exemplo acima inclui estes comandos, tanto para a ethernet e interfaces seriais.
Removendo Comandos / Repor valores padrão
IOS fornece uma maneira fácil de remover comandos de uma configuração. Para remover um comando a partir da configuração, basta navegar até o local e tipo adequados "não" seguido do comando a ser removido. O exemplo a seguir mostra como remover um endereço IP a partir da interface ethernet0.
Router> enable |
- Muda para nível EXEC privilegiado |
Router # configure terminal |
- Alterna para o nível de configuração global |
Router (config) # interface ethernet0 |
- Alterna para configurar a interface ethernet0 |
Router (config-if) # no endereço ip |
- Remove o endereço IP |
Router (config-if) # exit |
- Saídas de volta ao nível de configuração global |
Router (config) # exit |
- Sai fora do nível de configuração |
Router # disable |
- Desativa nível EXEC privilegiado |
Router> |
- Prompt indica utilizador está de volta ao nível de usuário EXEC |
Alguns comandos de configuração no IOS são ativadas por padrão e atribuído um valor padrão certo. Quando deixadas no valor padrão, esses comandos não será exibido quando a configuração está listado. Se o valor for alterado a partir da configuração padrão, a emissão de uma forma "não" do comando irá restaurar o valor para a configuração padrão.
Configurações de poupança
Um roteador Cisco IOS armazena as configurações em dois locais - RAM e NVRAM. A configuração atual é armazenada na memória RAM e é usado pelo roteador durante a operação. Qualquer alteração na configuração do roteador são feitas para o funcionamento de configuração e entram em vigor imediatamente após o comando é inserido. A configuração de inicialização é guardado em NVRAM e é carregado para o roteador está funcionando de configuração, quando o router inicializa. Se um roteador ficar sem energia ou é recarregado, as mudanças na configuração atual será perdido a menos que eles são salvos na configuração de inicialização. Para salvar o running-configuração para a configuração de inicialização, digite o seguinte a partir do modo EXEC privilegiado (ou seja, no "Router #" prompt.)
Cópia Router # running-config startup-config
Nota: Antes de 11.x software, o comando para salvar a configuração atual para a configuração de inicialização foi diferente. Use o seguinte comando se sua versão do IOS é anterior à 11.x:
Router # gravação em memória
IMPORTANTE: Ao editar uma configuração, salve a configuração frequentemente!
Gestão roteador
IOS suporta muitos tipos diferentes de comandos show. Esta seção cobre alguns dos comandos show comum usado tanto para gerenciar e solucionar problemas de um roteador. O escopo deste documento não é instruir como utilizar estes comandos para solucionar problemas de um router, mas para fazer o usuário ciente de que essas opções de gerenciamento de existir. Para obter informações específicas sobre como solucionar problemas de uma rede usando estes comandos, consulte o apropriado
solução de problemas
documento.
Configurações de exibição
Para mostrar o funcionamento de configuração, digite o seguinte comando no modo EXEC privilegiado:
Router # show running-config
Para exibir a configuração de inicialização, que é armazenada na NVRAM, digite o seguinte comando no modo EXEC privilegiado:
Router # show startup-config
A seguir está a mostrar a saída running-config a partir do exemplo utilizado na configuração do roteador seção.
Configuração atual:
!
versão 11.2
!
cisco hostname
!
enable password cisco
!
Interface Ethernet0
endereço ip 10.1.1.1 255.0.0.0
!
interface Serial0
endereço ip 20.2.2.2 255.0.0.0
!
router rip
rede 10.0.0.0
rede 20.0.0.0
!
ip route 0.0.0.0 0.0.0.0 20.2.2.3
!
line vty 0 4
senha telnet
login
!
final
Ao exibir uma configuração, a função de pontos de exclamação (!) Como separadores de linha para facilitar a leitura. Referindo-se ao exemplo acima, observe como comandos digitados no nível de configuração de interface aparecem recuadas abaixo a interface respectivos (por exemplo, interface de Ethernet0). Da mesma forma, os comandos entrou debaixo do nível de configuração mecanismo de roteamento aparecem recuado abaixo do mecanismo de roteamento (por exemplo, router rip). Comandos nível global não são recuadas. Esse tipo de exibição que permite ao usuário identificar facilmente quais os parâmetros de configuração são definidos no nível de configuração global e que são definidas na configuração vários sub-níveis.
Nota: Se uma interface estava em um estado de desligamento, 'shutdown' a palavra parece recuado sob o interface em particular no estado de desligamento. Além disso, os comandos que são ativadas por padrão não são exibidas na listagem de configuração.
Exibindo versão do software e Mais
O comando show version fornece um monte de informações, além da versão do software que está sendo executado no router. As seguintes informações podem ser coletadas com o comando show version:
Versão de software |
- IOS versão de software (armazenado em flash) |
Versão Bootstrap |
- Versão Bootstrap (armazenado em ROM Boot) |
Sistema de up-time |
- Tempo desde a última reinicialização |
Reinicialização do sistema informação |
- Método de reiniciar (por exemplo, desligar e ligar acidente) |
Nome da imagem de software |
- Filename IOS armazenada na flash |
Tipo de roteador e tipo de processador |
- Número do modelo e tipo de processador |
Tipo de memória e alocação (Shared / Main) |
- Main Processor RAM - Packet Shared I / O buffer |
Características de software |
- Protocolos suportados / conjuntos de recursos |
Interfaces de hardware |
- Interfaces disponíveis no roteador |
Configuration Register |
- Especificações de inicialização, configuração de velocidade console, etc |
O seguinte é um exemplo de saída de um comando show version.
Router # show version
Cisco Internetwork Operating System Software
IOS (tm) Software 3600 (C3640-JM), versão 11.2 (6) P, plataforma compartilhada,
RELEASE SOFTWARE (FC1)
Copyright (c) 1986-1997 pela Cisco Systems, Inc.
Compilado seg 12-May-97 15:07 por tej
Imagem de texto-base: 0x600088A0, data-base: 0x6075C000
ROM: Sistema Bootstrap, Version 11.1 (7) AX [Kuong (7) AX] Implantação, EARLY
RELEASE SOFTWARE (FC2)
Router uptime é de 1 semana, 1 dia, 38 minutos
Sistema reiniciado por power-on
Arquivo de imagem do sistema é "flash: c3640-j-mz_112-6_P.bin", iniciado
através de flash
Arquivo de configuração do host é "3600_4-CONFIG", iniciado via tftp
a partir 171.69.83.194
cisco 3640 (R4700) processador (0x00 revisão) com bytes 107520K/23552K
de memória.
Processador de bordo ID 03084730
R4700 processador, Implementação 33, Revisão 1.0
Bridging software.
SuperLAT copyright 1990 por software Meridian Tecnologia Corp).
X.25 software, Version 2.0, NET2, BFE e compatível GOSIP.
TN3270 software de emulação.
Primary Rate ISDN software, Version 1.0.
2 Ethernet / IEEE 802.3 interface (s)
97 Serial interface de rede (s)
4 canalizado T1/PRI porta (s)
DRAM configuração é 64 bits de largura, com deficiência de paridade.
125K bytes de memória não-volátil de configuração.
16384K bytes de processador da placa de sistema flash (Read / Write)
Do registro de configuração é 0x2102
Exibindo interface Estados
Para exibir informações sobre uma interface específica, use o comando show interface. O comando show interface fornece a seguinte lista de informações importantes:
Interface de Estado (por exemplo, UP, DOWN, ENTRADAS) |
Protocolo de endereços |
Largura de banda |
Confiabilidade e de carga |
Tipo de encapsulamento |
Preços de pacotes |
Taxas de erro |
Status da sinalização (ou seja, DCD, DSR, DTR, RTS, CTS) |
O seguinte é um exemplo de um "show interface serial0" de saída:
Router # show interface serial 0
Serial0 é para cima, protocolo de linha está em baixo
Hardware é Serial QUICC
Endereço na Internet é 10.1.1.2/24
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, confiar 255/255, carga 1 / 255
Encapsulamento Frame Relay-set, loopback not set, keepalive (10 seg)
LMI enq enviados 207.603, LMI status recvd 113715, LMI upd recvd 0, DTE LMI
para baixo
LMI enq recvd 0, status LMI enviada 0, LMI upd enviada 0
LMI DLCI 1023 tipo LMI é CISCO frame relay DTE
Fila de transmissão 0 / 64, as transmissões enviadas / caiu 0 / 0, transmissões de interface
62856
Última entrada 1W, saída de 00:00:08, a saída nunca pendurar
Clearing último "show interface" contadores nunca
Fila de entrada: 0/75/0 (size / max / gotas); gotas de saída total: 0
Estratégia Queueing: Feira ponderada
Fila de saída: 0/64/0 (tamanho limite / / gotas)
Conversas 0 / 1 (ativo / ativo max)
Conversas reservadas 0 / 0 (alocados / max alocado)
5 minutos taxa de entrada 1000 bits / sec, 1 pacotes / seg
5 taxa de saída minuto 0 bits / sec, 0 packets / sec
1012272 entrada de pacotes, 91255488 bytes, 0 tampão não
Recebeu 916 transmissões, 0 runts, 0 gigantes
18.519 erros de entrada, 0 CRC, 17.796 frame, 0 overrun, 0 ignorados, 723 abort
283132 saída de pacotes, 13712011 bytes, 0 underruns
0 erros de saída, 0 colisões, 31.317 de interface redefine
0 falhas buffer de saída, 0 buffers de saída trocados
3 transições transportadora
DCD = up DSR = up DTR = up RTS = up CTS = up
Cisco IOS Command Line Interface Tutorial
Abstract
The focus of this document is to introduce a new Cisco Internetworking Operating System (IOS) user to the IOS command line interface (CLI). After reading this document, a new user will understand how to use the IOS CLI to configure and manage an IOS router. For easier reference, Table 1 displays a collection of important terms and acronyms that are used throughout the document.
Table 1 - Glossary Of Important Terms And Acronyms Used In This Tutorial
Cisco IOS |
- Cisco Internetworking Operating System |
CLI |
- Command Line Interface |
EXEC |
- Command line session to the router (could be console, modem, or telnet) |
Flash |
- Non-Volatile Memory used to store IOS software image |
NVRAM |
- Non-Volatile RAM used to store router configuration |
RAM |
- Random Access Memory |
CLI Architecture
A Cisco IOS router command line interface can be accessed through either a console connection, modem connection, or a telnet session. Regardless of which connection method is used, access to the IOS command line interface is generally referred to as an EXEC session.
As a security feature, Cisco IOS separates EXEC sessions into two different access levels - user EXEC level and privileged EXEC level. User EXEC level allows a person to access only a limited amount of basic monitoring commands. Privileged EXEC level allows a person to access all router commands (e.g. configuration and management) and can be password protected to allow only authorized users the ability to configure or maintain the router.
For example, when an EXEC session is started, the router will display a "Router>" prompt. The right arrow (>) in the prompt indicates that the router is at the user EXEC level. The user EXEC level does not contain any commands that might control (e.g. reload or configure) the operation of the router. To list the commands available at the user EXEC level, type a question mark (?) at the Router> prompt. (This feature is referred to as context sensitive help.)
Critical commands (e.g. configuration and management) require that the user be at the privileged EXEC level. To change to the privileged EXEC level, type "enable" at the Router> prompt. If an enable password is configured, the router will then prompt for that password. When the correct enable password is entered, the router prompt will change to "Router#" indicating that the user is now at the privileged EXEC level. To switch back to user EXEC level, type "disable" at the Router# prompt. Typing a question mark (?) at the privileged EXEC level will now reveal many more command options than those available at the user EXEC level. The text below illustrates the process of changing EXEC levels.
Router> enable
Password: [enable password]
Router# disable
Router>
Note: For security reasons, the router will not echo the password that is entered. Also, be advised that if configuring a router via telnet, the password is sent in clear text. Telnet does not offer a method to secure packets.
Once an EXEC session is established, commands within Cisco IOS are hierarchically structured. In order to successfully configure the router, it is important to understand this hierarchy. To illustrate this hierarchy, Figure 1 provides a simple high-level schematic diagram of some IOS commands.
![](https://lh3.googleusercontent.com/blogger_img_proxy/AEn0k_sl64ns1gmliPPXuQGy-Adj7NAbhg1hJLuKvDS5MU9Ema2gX1GKuYiS1v0lSn-4FruGUlI_qME8oKn8XDW7HAEg_N45UN8v6s7lQA=s0-d)
Figure 1 - IOS CLI hierarchy
Command options and applications vary depending on position within this hierarchy. Referring to the diagram in figure 1, configuration command options will not be available until the user has navigated to the configuration branch of the IOS CLI structure. Once in the configuration branch, a user may enter system level configuration commands that apply to the entire router at the global configuration level. Interface specific configuration commands are available once the user has switched to the particular interface configuration level. More detailed information and examples on how to navigate through the IOS CLI hierarchy are offered in the Router Configuration section.
To assist users in navigation through IOS CLI, the command prompt will change to reflect the position of a user within the command hierarchy. This allows users to easily identify where within the command structure they are at any given moment. Table 2 is a summary of command prompts and the corresponding location within the command structure.
Table 2 - IOS Command Prompt Summary
Router> |
- User EXEC mode |
Router# |
- Privileged EXEC mode |
Router(config)# |
- Configuration mode (notice the # sign indicates this is only accessible at privileged EXEC mode.) |
Router(config-if)# |
- Interface level within configuration mode. |
Router(config-router)# |
- Routing engine level within configuration mode. |
Router(config-line)# |
- Line level (vty, tty, async) within configuration mode. |
CLI Editor Features
Context Sensitive Help
Cisco IOS CLI offers context sensitive help. This is a useful tool for a new user because at any time during an EXEC session, a user can type a question mark (?) to get help. Two types of context sensitive help are available - word help and command syntax help.
Word help can be used to obtain a list of commands that begin with a particular character sequence. To use word help, type in the characters in question followed immediately by the question mark (?). Do not include a space before the question mark. The router will then display a list of commands that start with the characters that were entered. The following is an example of word help:
Router# co? |
configure connect copy |
Command syntax help can be used to obtain a list of command, keyword, or argument options that are available based on the syntax the user has already entered. To use command syntax help, enter a question mark (?) in the place of a keyword or argument. Include a space before the question mark. The router will then display a list of available command options with <cr> standing for carriage return. The following is an example of command syntax help:
Router# configure ? |
memory Configure from NV memory network Configure from a TFTP network host overwrite-network Overwrite NV memory from TFTP network host=20 terminal Configure from the terminal <cr> |
Command Syntax Check
If a command is entered improperly (e.g. typo or invalid command option), the router will inform the user and indicate where the error has occurred. A caret symbol (^) will appear underneath the incorrect command, keyword, or argument. The following example displays what happens if the keyword "ethernet" is spelled incorrectly.
Router(config)#interface ethernat
^
% Invalid input detected at '^' marker.
Command Abbreviation
Commands and keywords can be abbreviated to the minimum number of characters that identifies a unique selection. For example, you can abbreviate the "configure" command to "conf" because "configure" is the only command that begins with "conf". You could not abbreviate the command to "con" because more than one command could fit this criteria. The router will issue the following error message if you do not supply enough characters.
cisco(config)#i
% Ambiguous command: "i"
Hot Keys
For many editing functions, the IOS CLI editor provides hot keys. The following table lists some editing shortcuts that are available.
Table 3 - Summary Of Hot Keys
Delete |
- Removes one character to the right of the cursor. |
Backspace |
- Removes one character to the left of the cursor. |
TAB |
- Finishes a partial command. |
Ctrl-A |
- Moves the cursor to the beginning of the current line. |
Ctrl-R |
- Redisplays a line. |
Ctrl-U |
- Erases a line. |
Ctrl-W |
- Erases a word. |
Ctrl-Z |
- Ends configuration mode and returns to the EXEC. |
Up Arrow |
- Allows user to scroll forward through former commands. |
Down Arrow |
- Allows user to scroll backward through former commands. |
Router Configuration
Entering Configurations
Perhaps the best way to illustrate IOS CLI navigation is by walking through a simple router configuration. The comments in the example do not attempt to explain the meaning of each individual command, but rather intend to display where configuration commands are entered within the IOS command structure. Pay particular attention to how the command prompt changes as the user navigates through the IOS CLI hierarchy. Also notice that global parameters are configured at the global configuration level (indicated by the "Router(config)#" prompt) whereas interface specific commands are entered after switching to the particular interface (indicated by the "Router(config-if)#" prompt). Global parameters and interface parameters are discussed further in theDisplaying Configurations section under Router Management.
Router> enable |
- switches to privileged EXEC level |
Router# configure terminal |
- switches to global configuration level |
Router(config)# enable secret cisco |
- configures router with an enable secret (global) |
Router(config)# ip route 0.0.0.0 0.0.0.0 20.2.2.3 |
- configures a static IP route (global) |
Router(config)# interface ethernet0 |
- switches to configure the ethernet0 interface |
Router(config-if)# ip address 10.1.1.1 255.0.0.0 |
- configures an IP address on ethernet0 (interface) |
Router(config-if)# no shutdown |
- activates ethernet0 (interface) |
Router(config-if)# exit |
- exits back to global configuration level |
Router(config)# interface serial0 |
- switches to configure the serial0 interface |
Router(config-if)# ip address 20.2.2.2 255.0.0.0 |
- configures an IP address on serial0 (interface) |
Router(config-if)# no shutdown |
- activates serial0 (interface) |
Router(config-if)# exit |
- exits back to global configuration level |
Router(config)# router rip |
- switches to configure RIP routing engine |
Router(config-router)# network 10.0.0.0 |
- adds network 10.0.0.0 to RIP engine (routing engine) |
Router(config-router)# network 20.0.0.0 |
- adds network 20.0.0.0 to RIP engine (routing engine) |
Router(config-router)# exit |
- exits back to global configuration level |
Router(config)# exit |
- exits out of configuration level |
Router# copy running-config startup-config |
- saves configuration into NVRAM |
Router# disable |
- disables privileged EXEC level |
Router> |
- indicates user is back to user EXEC level |
In the above example, notice how the exit command is used to back up a level within the IOS hierarchy. For example, if in the interface configuration level (i.e. Router (config-if)# prompt), typing exit will put the user back in the global configuration level (i.e. Router (config)# prompt).
Taking Interfaces Out Of Shutdown
Routers ship from the factory with all interfaces deactivated. Deactivated interfaces are referred to as being in a shutdown state. Before an interface can be used, it must be taken out of the shutdown state. To take an interface out of shutdown, type "no shutdown" at the appropriate interface configuration level. The example above includes these commands for both the ethernet and serial interfaces.
Removing Commands / Resetting Default Values
IOS provides an easy way to remove commands from a configuration. To remove a command from the configuration, simply navigate to the proper location and type "no" followed by the command to be removed. The following example displays how to remove an IP address from the ethernet0 interface.
Router> enable |
- switches to privileged EXEC level |
Router# configure terminal |
- switches to global configuration level |
Router(config)# interface ethernet0 |
- switches to configure the ethernet0 interface |
Router(config-if)# no ip address |
- removes IP address |
Router(config-if)# exit |
- exits back to global configuration level |
Router(config)# exit |
- exits out of configuration level |
Router# disable |
- disables privileged EXEC level |
Router> |
- prompt indicates user is back to user EXEC level |
Some configuration commands in IOS are enabled by default and assigned a certain default value. When left at the default value, these commands will not be displayed when the configuration is listed. If the value is altered from the default setting, issuing a "no" form of the command will restore the value to the default setting.
Saving Configurations
A Cisco IOS router stores configurations in two locations - RAM and NVRAM. The running configuration is stored in RAM and is used by the router during operation. Any configuration changes to the router are made to the running-configuration and take effect immediately after the command is entered. The startup-configuration is saved in NVRAM and is loaded into the router's running-configuration when the router boots up. If a router loses power or is reloaded, changes to the running configuration will be lost unless they are saved to the startup-configuration. To save the running-configuration to the startup configuration, type the following from privileged EXEC mode (i.e. at the "Router#" prompt.)
Router# copy running-config startup-config
Note: Prior to 11.x software, the command to save the running-configuration to the startup-configuration was different. Use the following command if your IOS version is prior to 11.x:
Router#write memory
IMPORTANT: When editing a configuration, SAVE the configuration often!
Router Management
IOS supports many different types of show commands. This section covers a few of the common show commands used to both manage and troubleshoot a router. The scope of this document is not to instruct how to use these commands to troubleshoot a router, but to make the user aware that these management options exist. For specific information about troubleshooting a network using these commands, refer to the appropriate
troubleshooting
document.
Displaying Configurations
To display the running-configuration, type the following command in privileged EXEC mode:
Router#show running-config
To display the startup-configuration that is stored in NVRAM, type the following command in privileged EXEC mode:
Router#show startup-config
The following is the show running-config output from the example used in the Router Configuration section.
Current configuration:
!
version 11.2
!
hostname cisco
!
enable password cisco
!
interface Ethernet0
ip address 10.1.1.1 255.0.0.0
!
interface Serial0
ip address 20.2.2.2 255.0.0.0
!
router rip
network 10.0.0.0
network 20.0.0.0
!
ip route 0.0.0.0 0.0.0.0 20.2.2.3
!
line vty 0 4
password telnet
login
!
end
When displaying a configuration, the exclamation marks (!) function as line separators to make reading easier. Referring to the above example, notice how commands entered at the interface configuration level appear indented underneath the respective interface (e.g. interface Ethernet0). Likewise, commands entered underneath the routing engine configuration level appear indented underneath the routing engine (e.g. router rip). Global level commands are not indented. This type of display allows a user to easily identify which configuration parameters are set at the global configuration level and which are set at the various configuration sub-levels.
Note: If an interface was in a shutdown state, the word 'shutdown' would appear indented under the particular interface in shutdown state. Also, commands that are enabled by default are not displayed in the configuration listing.
Displaying Software Version And More
The show version command provides a lot of information in addition to the version of software that is running on the router. The following information can be collected with the show version command:
Software Version |
- IOS software version (stored in flash) |
Bootstrap Version |
- Bootstrap version (stored in Boot ROM) |
System up-time |
- Time since last reboot |
System restart info |
- Method of restart (e.g. power cycle, crash) |
Software image name |
- IOS filename stored in flash |
Router Type and Processor type |
- Model number and processor type |
Memory type and allocation (Shared/Main) |
- Main Processor RAM - Shared Packet I/O buffering |
Software Features |
- Supported protocols / feature sets |
Hardware Interfaces |
- Interfaces available on router |
Configuration Register |
- Bootup specifications, console speed setting, etc. |
The following is a sample output of a show version command.
Router# show version
Cisco Internetwork Operating System Software
IOS (tm) 3600 Software (C3640-J-M), Version 11.2(6)P, SHARED PLATFORM,
RELEASE SOFTWARE (fc1)
Copyright (c) 1986-1997 by cisco Systems, Inc.
Compiled Mon 12-May-97 15:07 by tej
Image text-base: 0x600088A0, data-base: 0x6075C000
ROM: System Bootstrap, Version 11.1(7)AX [kuong (7)AX], EARLY DEPLOYMENT
RELEASE SOFTWARE (fc2)
Router uptime is 1 week, 1 day, 38 minutes
System restarted by power-on
System image file is "flash:c3640-j-mz_112-6_P.bin", booted
via flash
Host configuration file is "3600_4-confg", booted via tftp
from 171.69.83.194
cisco 3640 (R4700) processor (revision 0x00) with 107520K/23552K bytes
of memory.
Processor board ID 03084730
R4700 processor, Implementation 33, Revision 1.0
Bridging software.
SuperLAT software copyright 1990 by Meridian Technology Corp).
X.25 software, Version 2.0, NET2, BFE and GOSIP compliant.
TN3270 Emulation software.
Primary Rate ISDN software, Version 1.0.
2 Ethernet/IEEE 802.3 interface(s)
97 Serial network interface(s)
4 Channelized T1/PRI port(s)
DRAM configuration is 64 bits wide with parity disabled.
125K bytes of non-volatile configuration memory.
16384K bytes of processor board System flash (Read/Write)
Configuration register is 0x2102
Displaying Interface States
To view information about a particular interface, use the show interface command. The show interface command provides the following list of important information:
Interface State (e.g. UP, DOWN, LOOPED) |
Protocol addresses |
Bandwidth |
Reliability and Load |
Encapsulation type |
Packet Rates |
Error Rates |
Signaling Status (i.e. DCD,DSR,DTR,RTS,CTS) |
The following is an example of a "show interface serial0" output:
Router#show interface serial 0
Serial0 is up, line protocol is down
Hardware is QUICC Serial
Internet address is 10.1.1.2/24
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 1/255
Encapsulation FRAME-RELAY, loopback not set, keepalive set (10 sec)
LMI enq sent 207603, LMI stat recvd 113715, LMI upd recvd 0, DTE LMI
down
LMI enq recvd 0, LMI stat sent 0, LMI upd sent 0
LMI DLCI 1023 LMI type is CISCO frame relay DTE
Broadcast queue 0/64, broadcasts sent/dropped 0/0, interface broadcasts
62856
Last input 1w, output 00:00:08, output hang never
Last clearing of "show interface" counters never
Input queue: 0/75/0 (size/max/drops); Total output drops: 0
Queueing strategy: weighted fair
Output queue: 0/64/0 (size/threshold/drops)
Conversations 0/1 (active/max active)
Reserved Conversations 0/0 (allocated/max allocated)
5 minute input rate 1000 bits/sec, 1 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
1012272 packets input, 91255488 bytes, 0 no buffer
Received 916 broadcasts, 0 runts, 0 giants
18519 input errors, 0 CRC, 17796 frame, 0 overrun, 0 ignored, 723 abort
283132 packets output, 13712011 bytes, 0 underruns
0 output errors, 0 collisions, 31317 interface resets
0 output buffer failures, 0 output buffers swapped out
3 carrier transitions
DCD=up DSR=up DTR=up RTS=up CTS=up
Revised 8/29/97 by Stephen Liu