O protocolo TELNET

Traduções deste artigo Traduções deste artigo
ID do artigo: 231866 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Telnet oferece aos usuários a capacidade de executar programas remotamente e facilita a administração remota. Telnet está disponível para praticamente todos os sistemas operacionais e facilita a integração em ambientes heterogêneos de rede.

Mais Informações

Telnet é melhor compreendida no contexto de um usuário em um terminal simple usando o programa Telnet local (conhecido como o programa de cliente) para executar uma sessão de logon em um computador remoto onde as necessidades de comunicação do usuário são manipuladas por um programa de servidor Telnet.

Enfatize que o servidor Telnet pode passar os dados recebidos do cliente para vários outros tipos de processos, incluindo um servidor de logon remoto. Isso é descrito em RFC854 e foi publicado pela primeira vez em 1983.

O Terminal de rede Virtual

A comunicação é estabelecida usando TCP/IP e baseia-se em uma rede Virtual Terminal (NVT). No cliente, o programa Telnet é responsável por converter a entrada códigos NVT códigos que compreendidas pelo dispositivo de vídeo do cliente, bem como para traduzir códigos de teclado cliente gerado em saída códigos NVT.

O NVT usa códigos de 7 bits para caracteres. O dispositivo de vídeo, referido como uma impressora na RFC, só é necessário para exibir os caracteres ASCII impressão padrão representados por códigos de 7 bits e para reconhecer e processar determinados códigos de controle. Os caracteres de 7 bits são transmitidos como bytes de 8 bits com o bit mais significativo é definida como zero. Um fim de linha é transmitida como um retorno de carro (CR) seguido por uma linha (LF) de alimentação. Se você deseja transmitir um retorno de carro real, isso será transmitido como um retorno de carro seguido por um caractere NUL (todos os bits zero).

NVT ASCII é usado por muitos outros protocolos de Internet, como FTP e SMTP.

Os seguintes códigos de controle são necessários para ser entendida pelo NVT.

Recolher esta tabelaExpandir esta tabela
NomeCódigoValor decimalFunção
NULONUL0Nenhuma operação
Avanço de linhaLF10Move a impressora para a próxima linha de impressão, mantendo a mesma posição horizontal.
Retorno de carroCR13Move a impressora para a margem esquerda da linha atual.


Os seguintes códigos adicionais de controle são opcionais, mas deve ter o indicado definido efeito sobre a apresentação.

Recolher esta tabelaExpandir esta tabela
NomeCódigoValor decimalFunção
BELLBEL7Produz um sinal audível ou visível (que não move o cabeçote de impressão.
Fazer espaçoBS8Move a posição de caractere de um cabeçote de impressão em direção à margem esquerda. (Em um dispositivo de impressão, esse mecanismo era normalmente usados para formar caracteres compostos imprimindo dois caracteres básicos uns sobre os outros.)
Guia horizontalHT9Move a impressora para a próxima tabulação horizontal. Ele permanece não especificado como qualquer uma das partes determina ou estabelece onde se encontram esses paradas de tabulação.
Tabulação verticalVT11Move a impressora para a próxima tabulação vertical. Ele permanece não especificado como qualquer uma das partes determina ou estabelece onde se encontram esses paradas de tabulação.
Feed de formulárioFF12Move a impressora para a parte superior da próxima página, mantendo a mesma posição horizontal. (Em exibições visuais, isso normalmente limpa a tela e move o cursor para o canto superior esquerdo).
O teclado NVT é especificado como sendo capaz de gerar todos os códigos ASCII 128 usando chaves, combinações de teclas ou seqüências de teclas.

Comandos

O protocolo Telnet usa vários comandos para controlar a conexão cliente-servidor. Esses comandos são transmitidos dentro do fluxo de dados. Os comandos são diferenciados dos dados definindo o bit mais significativo como 1. (Lembre-se de que os dados são transmitidos como 7 bits com o oitavo bit definido como 0) Comandos sempre são introduzidos pela interpretação como caractere de comando (IAC).

Aqui está o conjunto completo de comandos:

Recolher esta tabelaExpandir esta tabela
NomeCódigo decimalSignificadoComentário
SE240Fim de parâmetros Tipotermo
NOP 241Nenhuma operação
DM242Marca de dadosIndica a posição de um evento de sincronização dentro do fluxo de dados. Isso sempre deve ser acompanhado por uma notificação urgente TCP.
BRK243QuebraIndica que a chave de "quebra" ou "atenção" foi alta.
IP244SuspenderInterromper ou cancelar o processo ao qual está conectado o NVT.
AO245Anular a saídaPermite que o processo atual seja executado até sua conclusão, mas não envia sua saída para o usuário.
AYT246Você está aíEnvie de volta para o NVT algumas evidências visível que o AYT foi recebida.
EC247Apagar o caractereO receptor deve excluir o último caractere de mensagem anterior no fluxo de dados.
EL248Apagar linhaExclua caracteres do fluxo de dados novamente mas não incluir o CRLF anterior.
GA249Vá em frente Em determinadas circunstâncias usadas para informar a outra extremidade pode transmitir.
SB250TipotermoSegue Tipotermo da opção indicada.
SERÁ251seráIndica o desejo de começar a executar ou confirmação que você está executando agora, a opção indicada.
NÃO252nãoIndica a recusa executar ou continuar a execução, a opção indicada.
FAZER253fazerIndica a solicitação que executam a outra parte ou confirmação de que você está esperando o participante executar a opção indicada.
NÃO254nãoIndica a demanda que a outra parte parar de executar ou confirmação que não está esperando o participante executar a opção indicada.
IAC255Interpretar como comandoInterpretar como um comando

Opções de Telnet

As opções oferecem o cliente e o servidor uma visão comum da conexão. Eles podem ser negociados a qualquer momento durante a conexão com o uso de comandos. Eles são descritos nas RFCs separadas.

A seguir estão exemplos de opções comuns:

Recolher esta tabelaExpandir esta tabela
Código decimalNomeRFC
3Suprimir ir em frente858
5status859
1eco857
6marca de tempo860
24tipo de terminal1091
31tamanho da janela1073
32velocidade do Terminal1079
33controle de fluxo remoto1372
34LineMode1184
36variáveis de ambiente1408

Uma das extremidades de uma conversação Telnet pode localmente ou remotamente ativar ou desativar uma opção. O iniciador envia um comando byte 3 do formulário:
Recolher esta tabelaExpandir esta tabela
IACTipo de operaçãoOpção

A resposta é do mesmo formulário. A operação é um destes:

Recolher esta tabelaExpandir esta tabela
DescriçãoCódigo decimalAção
SERÁ251Remetente deseja fazer alguma coisa.
NÃO252Remetente não quer fazer algo.
FAZER253Remetente deseja que a outra extremidade a fazer algo.
NÃO254Remetente desejar não fazer alguma coisa.


Associados a cada um desses comandos são várias respostas possíveis:

Recolher esta tabelaExpandir esta tabela
Remetente enviadoReceptor respondeImplicação
FARÁO remetente gostaria de usar um determinado recurso se o receptor pode manipulá-lo.Opção agora está em vigor.
Não IRÁReceptor diz não pode suportar a opção.Opção não tem efeito.
SERÁO remetente diz que ele pode lidar com o tráfego do remetente se o remetente desejar usar uma determinada opção.Opção agora está em vigor.
IMPOSSÍVELReceptor diz não pode suportar a opção.Opção não tem efeito.
NÃO NÃOOpção desativada.É apenas uma resposta válida.
NÃOOpção desativada.NÃO é apenas uma resposta válida.


Por exemplo, se o remetente desejar a outra extremidade para suprimir a liberação, ele envia a seqüência de bytes:

Recolher esta tabelaExpandir esta tabela
IACSERÁSuprimir ir em frente

O byte final da seqüência de três bytes identifica a ação necessária.

Os valores da opção alguns precisam ser comunicadas após suporte da opção concordou. Isso é feito usando a negociação de opção sub. Valores são negociados usando comandos de consulta de valor e respostas no seguinte formato:

Recolher esta tabelaExpandir esta tabela
IACSBcódigo de opção1IACSE
e
Recolher esta tabelaExpandir esta tabela
IACSBcódigo de opção0IACSE


Por exemplo, se o cliente quiser identificar o tipo de terminal para o servidor, o exchange seguinte poderia ocorrer:

Recolher esta tabelaExpandir esta tabela
CLIENTEIACSERÁTipo de terminal
SERVIDORIACFAZERTipo de terminal
CLIENTEIACSBTipo de terminal1IACSE
SERVIDORIACSBTipo de terminal0VT220IACSE

A primeira troca estabelece que tipo de terminal (número de opção 24) é tratado, o servidor então indagações de que valor que deseje associar o tipo de terminal do cliente.

A seqüência SB, 24, 1 implica a negociação de opção sub para o tipo de opção 24, valor necessário (1). IAC, seqüência SE indica o fim dessa solicitação.

A resposta IAC, SB, 24, 0, 'v'... implica a negociação de opção sub para tipo de opção 24, valor fornecido (0), o IAC, seqüência SE indica o fim da resposta (e o valor fornecido).

A codificação do valor é específica para a opção, mas uma seqüência de caracteres, como mostrado acima, é comum.

Descrições das opções de Telnet

Muitas das listadas são óbvio, mas alguns consideram para obter mais informações.

Suprimir ir em frente

A implementação original do Telnet padrão para operação half duplex. Isso significa que o tráfego de dados pode ir apenas em uma direção por vez e ação específica é necessário para indicar o final de tráfego em uma direção e que o tráfego pode agora iniciar na outra direção. [Nesse semelhante ao uso de "roger" e "acima" amadora e CB rádio operadores.] A ação específica é a inclusão de um caractere GA no fluxo de dados.

Links modernos normalmente permitem que a operação de bi-direcional e o "suprimir ir em frente" opção está habilitada.

Eco

A opção de eco está ativada, normalmente pelo servidor, para indicar que o servidor ecos cada caractere que recebe. Uma combinação de "suprimir ir em frente" e "echo" é chamado de modo de caractere no tempo que significa que cada caractere é transmitido e ecoado separadamente.

Há uma compreensão conhecida como modo kludge linha, o que significa que, se qualquer um dos "suprimir ir em frente" ou "echo" for habilitada, mas não ambos, Telnet opera no modo linha de tempo que significa que linhas completas são montadas em cada extremidade e transmitidas em um "go".

LineMode

Esta opção substitui e suplanta kludge de modo a linha.

Controle de fluxo remoto

Esta opção controla onde os efeitos de controle de fluxo especial de Ctrl + S ou Ctrl + Q são implementados.

Funções de controle de Telnet

O protocolo Telnet inclui um número de funções de controle. Esses são iniciados em resposta a condições detectadas pelo cliente (normalmente determinadas teclas especiais ou combinações de teclas) ou servidor. A condição detectada faz com que um caractere especial a ser incorporada no fluxo de dados.

Interromper o processo

Isso é usado pelo cliente para fazer com que a suspensão ou o encerramento do processo do servidor. Normalmente, o usuário digita Ctrl + C no teclado. Um caractere IP (244) está incluído no fluxo de dados.

Anular a saída

Isso é usado para suprimir a transmissão de saída de processo remoto. Um caractere AO (238) está incluído no fluxo de dados.

Você está aí

Isso é usado para disparar uma resposta visível da outra extremidade da conexão para confirmar a operação do link e o processo remoto. Um caractere AYT (246) é incorporado no fluxo de dados.

Apagar o caractere

Isso é enviado para a exibição para informá-lo para excluir o caractere imediatamente anterior da exibição. Um caractere EC (247) é incorporado no fluxo de dados.

Apagar linha

Essa opção faz com que a exclusão da linha atual de entrada. Um caractere EL (248) é incorporado no fluxo de dados.

Marca de dados

Algumas funções de controle como IP e AO exigem ação imediata e isso pode causar problemas se os dados são mantidos nos buffers aguardando solicitações de entrada de um processo remoto (possivelmente com comportamento inadequado). Para contornar esse problema, um caractere de DM (242) é enviado em um segmento TCP urgente, isso indica que o receptor para examinar o fluxo de dados de caracteres "interessantes", como IP, AO e AYT. Isso é conhecido como o mecanismo de sincronização do Telnet.
Um DM não em um segmento TCP urgente não tem efeito.

O comando Telnet

No Windows NT e a maioria dos sistemas UNIX, uma sessão Telnet pode ser iniciada usando o comando Telnet. A maioria dos usuários simplesmente digitar:
remote_host Telnet
No entanto, se o usuário digitar apenas Telnet, e em seguida, várias opções e subcomandos estão disponíveis.

Este é um exemplo de uma sessão Telnet de sfuclnt para sfusrvr.
C:\>Telnet

Microsoft (R) Windows NT (TM) versão 4.00 (Compilação 1381)
Bem-vindo ao cliente MS Telnet
O cliente Telnet compilação 5.00.99034.1
Caractere de escape ' CTRL +]'
Microsoft Telnet > abrir sfusrvr

A tela será limpa e as seguintes informações são exibidas:

Microsoft (R) Windows NT (TM) versão 4.00 (Compilação 1381)
Bem-vindo ao serviço Telnet da Microsoft
O servidor Telnet compilação 5.00.99034.1
login: sfu
senha: * * *

A tela será limpa novamente e as informações a seguintes são exibidas:

*===============================================================
Bem-vindo ao servidor Microsoft Telnet.
*===============================================================
C:\ >

Propriedades

ID do artigo: 231866 - Última revisão: segunda-feira, 19 de janeiro de 2015 - Revisão: 4.0
A informação contida neste artigo aplica-se a:
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
Palavras-chave: 
kbfaq kbinfo kbmt KB231866 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.
Clique aqui para ver a versão em Inglês deste artigo: 231866

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com