Linux Tux in orange background

Como verificar se seu sistema Linux tem suporte a IPv6

Com a popularização (que já está passando da hora) do padrão IPv6, parece pertinente verificar se seu sistema já possui suporte a este protocolo.
Se você está usando uma distribuição atualizada do GNU/Linux, provavelmente tudo estará pronto.
Contudo, sabendo que é fácil, por que não fazer um ou dois testes simples?
Há várias formas de testar o suporte ao IPv6, no Linux.
ipv6 logo gray on white

Como verificar o suporte ao IPv6 no kernel

Como já expliquei antes, o sistema de arquivos /proc funciona como um conjunto de janelas, que nos permitem espiar as condições do kernel.
Para isto, basta usar o comando cat (às vezes combinado ao comando grep) sobre algum dos arquivos virtuais do /proc.
Se o arquivo /proc/net/if_inet6 existe, então o suporte está lá.
Ao olhar o seu conteúdo, é possível verificar quais interfaces, no seu sistema, estão funcionando com suporte ao IPv6:

cat /proc/net/if_inet6 

No meu caso, as interfaces de rede loopback e wireless estão operando com o suporte ao novo protocolo:

00000000000000000000000000000001 01 80 10 80       lo
fe80000000000000c68508fffea50aaa 03 40 20 80    wlan0

Se você preferir, use a seguinte linha de comando, para rodar um teste:

test -f /proc/net/if_inet6 && echo "Este kernel está pronto pro IPv6!"

Se o arquivo if_inet6 estiver presente, o resultado será:

Este kernel está pronto pro IPv6!

Você pode usar esta linha comando em um script, que precise verificar as condições de rede do sistema.
Em máquinas que estejam rodando versões antigas do kernel (anterior ao 2.2.x), você pode verificar se o módulo de suporte ao IPv6 está carregado no kernel:

lsmod |grep -w 'ipv6'
ipv6
268960 12

Nas versões atuais do kernel isto é desnecessário (e não vai retornar qualquer resultado) por que o suporte já vem incluído e compilado.
Você pode usar o comando uname para determinar que versão do kernel está rodando na sua máquina:

uname -r
3.16.0-4-amd64

Obviamente, verificar a versão do kernel, podia ter sido feito logo no começo — e a gente já teria cortado todo este “papo furado”… Mas estamos aqui para aprender. 😉

use o comando ping6 para determinar o suporte ao IPv6

O ping6 é a versão IPv6 do conhecido comando ping. Veja como usar:

ping6 -c4 localhost
PING localhost(localhost) 56 data bytes
64 bytes from localhost: icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from localhost: icmp_seq=2 ttl=64 time=0.034 ms
64 bytes from localhost: icmp_seq=3 ttl=64 time=0.038 ms
64 bytes from localhost: icmp_seq=4 ttl=64 time=0.038 ms

--- localhost ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
rtt min/avg/max/mdev = 0.031/0.035/0.038/0.005 ms

O resultado, acima, indica que o meu sistema está ok para o IPv6.

Todas as distribuições GNU/Linux atuais e mantidas por suas equipes de desenvolvedores, têm suporte ao protocolo IPv6, sem a necessidade de se fazer qualquer configuração extra.

Se a sua distro não suporta o IPv6, o que é raro, sugiro a leitura do HOWTO no link abaixo (em inglês).

Referências

http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/systemcheck-kernel.html.

Publicado por

Elias Praciano

Autor de tecnologia (livre, de preferência), desenvolvedor web e geek, nos mais diversos assuntos. Entusiasta de software livre e hacker de LEGO, acredito em repassar meu conhecimento e ajudar as pessoas sempre que for possível.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *