Tunelamento é uma maneira de mover pacotes de uma rede para outra. O tunelamento funciona via encapsulamento: envolvendo um pacote dentro de outro pacote.
Após ler este artigo, você será capaz de:
Conteúdo relacionado
Assine o theNET, uma recapitulação mensal feita pela Cloudflare dos insights mais populares da internet.
Copiar o link do artigo
No mundo físico, os túneis são uma maneira de atravessar terrenos ou limites que normalmente não poderiam ser cruzados. Da mesma forma, na rede, os túneis são um método para transportar dados através de uma rede usando protocolos que não são compatíveis com essa rede. O tunelamento funciona encapsulando pacotes: envolvendo pacotes dentro de outros pacotes. (Pacotes são pequenos pedaços de dados que podem ser reagrupados em seu destino em um arquivo maior).
O tunelamento é frequentemente utilizado nas redes privadas virtuais (VPNs). Ele também pode estabelecer conexões eficientes e seguras entre redes, permitir o uso de protocolos de rede não compatíveis e, em alguns casos, permitir aos usuários contornar firewalls.
Os dados que percorrem uma rede são divididos em pacotes. Um pacote normal tem duas partes: o cabeçalho, que indica o destino do pacote e qual protocolo ele usa e a carga, que é o conteúdo real do pacote.
Um pacote encapsulado é essencialmente um pacote dentro de outro pacote. Em um pacote encapsulado, o cabeçalho e a carga do primeiro pacote ficam dentro da seção de carga do segundo pacote. O primeiro pacote se torna a carga em si.
Todos os pacotes utilizam protocolos de rede — formas padronizadas de formatação de dados — para chegar a seus destinos. Entretanto, nem todas as redes são compatíveis com todos os protocolos. Imagine que uma empresa queira estabelecer uma rede de longa distância (WAN) conectando o escritório A e o escritório B. A empresa utiliza o protocolo IPv6, que é a última versão do protocolo de internet (IP), mas existe uma rede entre o escritório A e o escritório B que só é compatível com o IPv4. Ao encapsular seus pacotes de IPv6 dentro de pacotes de IPv4, a empresa pode continuar usando o IPv6 enquanto ainda envia dados diretamente entre os escritórios.
O encapsulamento também é útil para conexões de rede criptografadas. A criptografia é o processo de embaralhamento de dados de tal forma que só possam ser descriptografado usando uma chave de criptografia secreta; o processo de desfazer a criptografia é chamado de descriptografia. Se um pacote for completamente codificado, incluindo o cabeçalho, então os roteadores de rede não serão capazes de encaminhar o pacote para seu destino, uma vez que eles não têm a chave e não podem ver seu cabeçalho. Ao envolver o pacote criptografado dentro de outro pacote não criptografado, o pacote pode viajar através das redes normalmente.
Uma VPN é uma conexão segura e criptografada através de uma rede compartilhada publicamente. O tunelamento é o processo pelo qual os pacotes de VPN alcançam seu destino pretendido, que é normalmente uma rede privada.
Muitas VPNs utilizam o conjunto de protocolos IPsec. O IPsec é um grupo de protocolos que funciona diretamente sobre o IP na camada de rede. O tráfego de rede em um túnel IPsec é totalmente criptografado, mas é descriptografado quando chega à rede ou ao dispositivo do usuário. (O IPsec também tem um modo chamado "modo de transporte" que não cria um túnel).
Outro protocolo de uso comum para VPNs é o Transport Layer Security (TLS). Esse protocolo opera na camada 6 ou na camada 7 do modelo OSI, dependendo de como o modelo é interpretado. O TLS às vezes é chamado de SSL (Secure Sockets Layer), embora o SSL se refira a um protocolo mais antigo que não está mais em uso.
Normalmente, quando um usuário conecta seu dispositivo a uma VPN, todo o tráfego de sua rede passa pelo túnel da VPN. O tunelamento dividido permite que uma parte do tráfego saia do túnel da VPN. Em essência, o tunelamento dividido permite que os dispositivos do usuário conectem-se a duas redes simultaneamente: uma pública e uma privada.
O Encapsulamento Genérico de Roteamento (GRE) é um dos vários protocolos de tunelamento. O GRE encapsula pacotes de dados que utilizam um protocolo de roteamento dentro dos pacotes de outro protocolo. O GRE é uma forma de estabelecer uma conexão direta ponto a ponto através de uma rede, com o objetivo de simplificar as conexões entre redes separadas.
O GRE acrescenta dois cabeçalhos a cada pacote: o cabeçalho GRE e um cabeçalho IP. O cabeçalho GRE indica o tipo de protocolo usado pelo pacote encapsulado. O cabeçalho IP encapsula o cabeçalho IP original do pacote e a carga. Somente os roteadores em cada extremidade do túnel GRE farão referência ao cabeçalho IP original, não GRE.
O IP-in-IP é um protocolo de encapsulamento de pacotes de IP dentro de outros pacotes de IP. O IP-in-IP não encapsula pacotes e não é usado pelas VPNs. Seu principal uso é a criação de rotas de rede que normalmente não estariam disponíveis.
O protocolo Secure Shell (SSH) estabelece conexões criptografadas entre cliente e servidor e também pode ser usado para configurar um túnel seguro. O SSH opera na camada 7 do modelo OSI, a camada de aplicação. Por outro lado, IPsec, IP-in-IP, e GRE operam na camada de rede.
Além do GRE, IPsec, IP-in-IP e SSH, os outros protocolos de tunelamento são:
O Magic Transit da Cloudflare protege a infraestrutura de rede local, em nuvem e híbrida contra ataques DDoS e outras ameaças. Para que o Magic Transit funcione, a Rede da Cloudflare deve estar conectada com segurança à rede interna do cliente. A Cloudflare usa o tunelamento GRE para formar essas conexões. Com o tunelamento GRE, o Magic Transit pode se conectar diretamente às redes dos clientes da Cloudflare com segurança pela internet pública.