Artigo: 241251 - Última revisão: quarta-feira, 28 de Fevereiro de 2007 - Revisão: 2.2

Túneis VPN - GRE, Generic Routing ENCAPSULATION Protocol 47 pacotes descrição e utilização

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Protocolo Generic Route Encapsulation (GRE) é utilizado em conjunto com o protocolo PPTP (Point-to-Point Tunneling Protocol) para criar redes privadas virtuais (VPN) entre os clientes ou entre clientes e servidores.

Mais Informação

Uma popular implementação consiste em utilizar a tecnologia VPN da Microsoft entre servidores de dois encaminhamento e serviços de acesso remoto (RRAS) que estão configurados para o encaminhamento LAN a LAN, conforme é ilustrado abaixo:
Lclient           L-RRAS ===== VPN ===== R-RRAS           Rclient
    |      IP      |  |      Internet     |  |      IP      |
     --------------    -------------------    --------------
				
para melhor compreender a utilização de GRE na criação e utilização de VPN, é útil compreender a estrutura de pacote. Depois do controlo PPTP sessão foi estabelecida, GRE, Generic Routing ENCAPSULATION é utilizado para encapsular dados de payload de modo seguro. Para obter informações adicionais sobre PPTP, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft:
241252  (http://support.microsoft.com/kb/241252/EN-US/ ) Túneis VPN - descrição de pacotes do protocolo PPTP e utilização
O formato de pacote GRE, Generic Routing ENCAPSULATION utilizada pela Microsoft para encapsulamento de dados tem o seguinte formato geral:
   +-----------------------------------+
   | Data Link (D/L) Header            | 
   +-----------------------------------+
   | IP Header                         | 
   +-----------------------------------+
   | GRE Header                        | 
   +-----------------------------------+
   | PPP Header                        | 
   +-----------------------------------+
   | Encrypted PPP Payload             | 
   +-----------------------------------+
   | Data Link Trailer                 | 
   +-----------------------------------+
				
a dados ou payload que vai passar o túnel for fornecido um cabeçalho de protocolo ponto a ponto (PPP, Point-to-Point Protocol) e, em seguida, colocada dentro de um pacote GRE, Generic Routing ENCAPSULATION. O pacote GRE, Generic Routing ENCAPSULATION transporta os dados entre os pontos finais dois túnel. Depois do pacote GRE, Generic Routing ENCAPSULATION chegou ao destino final (o ponto final do túnel), é rejeitada e pacotes encapsulados, em seguida, é transmitido ao seu destino final.

Utilizando o diagrama na parte superior desta secção, um pacote IP (protocolo Internet) do Lclient primeiro é transmitido para o servidor RRAS L. O pacote IP é encriptado, dado um cabeçalho adicional, PPP e, em seguida, colocado dentro de um pacote GRE, Generic Routing ENCAPSULATION. O diagrama abaixo indica "PPP stub" e não "PPP cabeçalho" porque o cabeçalho PPP é encriptado também juntamente com os dados. Apesar de não conseguir vê-lo, o protocolo GRE, Generic Routing ENCAPSULATION está configurado para saber que existe um cabeçalho PPP. O pacote GRE, Generic Routing ENCAPSULATION com os dados encapsulados e encriptados é enviado através da Internet com um destino final de "R-RRAS, Routing and Remote server". O servidor R-RRAS, Routing and Remote revelar desactivar no cabeçalho GRE, Generic Routing ENCAPSULATION e o cabeçalho PPP e, em seguida, transmite os dados desencriptados (pacote IP) Rclient.
Lclient           L-RRAS ===== VPN ===== R-RRAS           Rclient
    |      IP      |  |      Internet     |  |      IP      |
     --------------    -------------------    --------------
    D/L header             D/L header            D/L header
    IP header              IP header             IP header
    Payload                GRE header            Payload
                           PPP stub
                           Payload (encrypted)
				

O cabeçalho de protocolo

Para compreender como o protocolo GRE, Generic Routing ENCAPSULATION funciona como um protocolo encapsulating, terá de rever o formato de cabeçalho do protocolo. O cabeçalho de pacote GRE, Generic Routing ENCAPSULATION como implementada pelo Microsoft tem o seguinte formato:
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |C|R|K|S|s|Recur|A| Flags | Ver |         Protocol Type         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    Key (HW) Payload Length    |       Key (LW) Call ID        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  Sequence Number (Optional)                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Acknowledgment Number (Optional)                |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
				
a tabela seguinte lista cada campo com uma explicação mais detalhada de sua função e os parâmetros que podem ser utilizados.
+-----------------------------------------------------------------------+
| C     | (Bit 0) Checksum Present. Set to zero (0).                    | 
+-----------------------------------------------------------------------+
| R     | (Bit 1) Routing Present. Set to zero (0).                     | 
+-----------------------------------------------------------------------+
| K     | (Bit 2) Key Present. Set to one (1).                          | 
+-----------------------------------------------------------------------+
|       | (Bit 3) Sequence Number Present. Set to one (1) if a payload  |
| S     | (data) packet is present. Set to zero (0) if payload is not   |
|       | present (GRE packet is an Acknowledgment only).               | 
+-----------------------------------------------------------------------+
| s     | (Bit 4) Strict source route present. Set to zero (0).         | 
+-----------------------------------------------------------------------+
| Recur | (Bits 5-7) Recursion control. Set to zero (0).                | 
+-----------------------------------------------------------------------+
|       | (Bit 8) Acknowledgment sequence number present. Set to one (1)| 
| A     | if packet contains Acknowledgment Number to be used for       |
|       | acknowledging previously transmitted data.                    | 
+-----------------------------------------------------------------------+
| Flags | (Bits 9-12) Must be set to zero (0).                          | 
+-----------------------------------------------------------------------+
| Ver   | (Bits 13-15) Must contain 1 (enhanced GRE).                   | 
+-----------------------------------------------------------------------+
|=======================================================================|
+-----------------------------------------------------------------------+
| Protocol Type           | Set to hex 880B (for PPP).                  | 
+-----------------------------------------------------------------------+
| Key (HW) Payload Length | (High 2 octets of Key) Size of the payload, |
|                         | not including the GRE header.               | 
+-----------------------------------------------------------------------+
| Key (LW) Call ID        | (Low 2 octets) Contains the Peer's Call ID  |
|                         | for the session to which this packet        | 
|                         | belongs.                                    |
+-----------------------------------------------------------------------+
| Sequence Number         | Contains the sequence number of the payload.|
|                         | Present if S bit (Bit 3) is one (1).        | 
+-----------------------------------------------------------------------+
|                         | Contains the sequence number of the highest |
| Acknowledgment Number   | numbered GRE packet received by the sending |
|                         | peer for this user session. Present if A bit|
|                         | (Bit 8) is one (1).                         | 
+-----------------------------------------------------------------------+
				

Melhoramentos

O protocolo GRE, Generic Routing ENCAPSULATION tem vários melhoramentos dignas de nota. Estas provêm do RFC Request for Comments () 2637.
  • Um campo de número de confirmação. Isto é utilizado para determinar se um pacote GRE, Generic Routing ENCAPSULATION ou conjunto de pacotes específico chegou no fim do túnel remoto. Esta capacidade de confirmação não é utilizada em conjunto com qualquer retransmissão de pacotes de dados do utilizador. É utilizado em vez disso, para determinar a frequência com que pacotes de dados de utilizador estão a ser transmitidos através do túnel para uma sessão de utilizador dado.
  • Túnel portabilidade. A secção de payload contém um pacote de dados PPP sem quaisquer elementos específicos de multimédia pacotes.
  • Controlo de número de sequência. Os números de sequência envolvidos são números de sequência por pacote. O número de sequência para cada sessão de utilizador é definido como zero durante o arranque de sessão. Cada pacote enviado para uma sessão de utilizador dado que contém um payload (e com o bit S, ou bit 3, definido como um) é atribuído o número seguinte da sequência consecutivos para essa sessão.
  • Utilização de confirmações acumuladas. Este protocolo permite confirmações ser executada com os dados e faz com que o global protocolo mais eficiente, que por sua vez requer menos memória intermédia de pacotes.

Rastreios do Monitor de rede

Deve note várias coisas quando está a observar um rastreio do Monitor de rede. O resumo de sinalizadores é constituído pelo valor hexadecimal do primeiro 16 bits. O pacote de exemplo abaixo, o resumo de sinalizadores é 12,417 ou 0x3081h. O analisador Microsoft Network Monitor não representa o número de versão no resumo de sinalizadores de bit campo, mas é aí. Por exemplo, suponha o pacote de exemplo seguinte:
GRE: Flags Summary = 12417 (0x3081)
          GRE: 0............... = Checksum Absent
          GRE: .0.............. = Routing Absent
          GRE: ..1............. = Key Present
          GRE: ...1............ = Sequence Number Present
          GRE: ....0........... = Strict Source Route Absent
          GRE: ........1....... = Acknowledge Sequence Number Present
      GRE: Recursion Control = 0 (0x0)
      GRE: Ver = 1 (0x1)
      GRE: Protocol Type = 0x880B
      GRE: Key Length = 90 (0x5A)
      GRE: Key Call ID = 32768 (0x8000)
      GRE: Sequence Number = 16 (0x10)
      GRE: Ack Number = 15 (0xF)
				
os primeiros 8 bits são 00110000, que representa um valor hexadecimal de 30. Os 8 bits são 10000001, que representa um valor hexadecimal de 81. Por conseguinte, o resumo de sinalizadores é 0x3081h ou 12,417 em decimal.

A informação contida neste artigo aplica-se a:
  • Microsoft Windows NT Server 4.0 Terminal Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows NT Server 4.0 Standard Edition
Palavras-chave: 
kbmt kbinfo kbnetwork KB241251 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 241251  (http://support.microsoft.com/kb/241251/en-us/ )