IPv6 é um protocolo no sentido de TCP / UDP / ICMP. Enquanto eles trabalham em camadas diferentes, há nada que impede você de colocar em camadas o IP em cima do IP, a fim de obter um túnel simples semelhante a VPN. (Compare isso com o IP dentro do GRE dentro do IP.) Por essa razão, tanto o IPv4 quanto o IPv6 têm atribuições de número de protocolo - um pacote IPv4 aninhado é "protocolo 4" e IPv6 é "protocolo 41".
Mais especificamente, IPv6-over-IPv4 também é conhecido como "6in4" ou "proto41", um
O pfSense tem documentação para configurar tal túnel - no FreeBSD isso seria feito usando um gif(4) interface; no Linux, usando sit ou ipip . O provedor de túneis tem configuração idêntica (mas espelhada) que descompacta o pacote IP interno e o encaminha para sua rede IPv6 nativa.
Este não é o método de túnel mais ideal em comparação com, e. GRE, L2TP (apenas um túnel por par externo src / dst); ou FOU, GUE (muitos roteadores domésticos não permitem encaminhamento de porta para qualquer coisa que não seja TCP ou UDP); ou protocolos VPN especiais (sem autenticação, sem criptografia). No entanto, é o túnel mais simples , e um com o menor overhead (apenas 20 bytes).
Referência obrigatória "Inception": O IPv4 requer um mínimo de MTU de 68 bytes, enquanto o IPv6 aumenta para 1280 bytes. Com a Ethernet MTU padrão de 1500, o número máximo de vezes que você pode empilhar túneis IPv4 é ~ 70 e, da mesma forma, ~ 5 camadas para IPv6.