Este sítio web funciona com IPv6. Se o globo estiver girando, você também já usa IPv6!

/proc, que permite obter e mudar configurações do sistema.
Como as configurações em /proc são lidas e gravadas como se fossem arquivos comuns, é muito mais fácil para um programa interfacear com o sistema através desse caminho. Operações tipicamente muito complicadas de se realizar via soquetes, como por exemplo a configuração de interfaces, tornam-se triviais.
Infelizmente, há a grande desvantagem da perda da portabilidade, pois cada sistema operacional Unix estrutura o sistema de arquivos /proc de uma forma particular.
Este trabalho relaciona os principais pseudo-arquivos de configuração presentes no Linux e pertinentes a IPv6.
/proc/net apenas fornece dados, não permite alterá-los.
$ cat /proc/net/if_inet6 00000000000000000000000000000001 01 80 10 80 lo fe8000000000000002e07dfffe9c924e 02 0a 20 80 eth0Os campos são, em ordem:
a) endereço IPv6 como um número hexadecimal de 128 bits;
b) número seqüencial da interface (aquele que é necessário informar ao sistema em determinadas circunstância, vide 4.1);
c) comprimento em bits da máscara de rede;
d) escopo da interface;
e) estado da interface;
f) nome da interface no sistema, que é unívoco.
$ cat /proc/net/igmp6 1 lo ff020000000000000000000000000001 1 00000004 0 2 eth0 ff020000000000000000000012341234 1 00000004 0 2 eth0 ff0200000000000000000001ff9c924e 1 00000004 0 2 eth0 ff020000000000000000000000000001 2 00000004 0Os primeiros quatro campos são os mais importantes:
a) número seqüencial da interface;
b) nome da interface;
c) endereço multicast IPv6, como um número hexadecimal de 128 bits;
d) contagem de aplicativos ouvindo o endereço.
netstat lêem esse arquivo (ao invés de usar chamadas ioctl()) para obter informações do sistema.
Nada impede, é claro, que o administrador do sistema interprete manualmente o arquivo e/ou escreva um aplicativo que o faça.
/proc/sys). O acesso a estas configurações pode ser feito tanto diretamente como por meio da função sysctl().
$ find /proc/sys/net/ipv6/conf/ /proc/sys/net/ipv6/conf/ /proc/sys/net/ipv6/conf/default /proc/sys/net/ipv6/conf/default/router_solicitation_delay /proc/sys/net/ipv6/conf/default/router_solicitation_interval /proc/sys/net/ipv6/conf/default/router_solicitations ... /proc/sys/net/ipv6/conf/all/dad_transmits /proc/sys/net/ipv6/conf/all/autoconf /proc/sys/net/ipv6/conf/all/accept_redirects /proc/sys/net/ipv6/conf/all/accept_ra /proc/sys/net/ipv6/conf/all/mtu ... /proc/sys/net/ipv6/conf/eth0/hop_limit /proc/sys/net/ipv6/conf/eth0/forwarding ... /proc/sys/net/ipv6/conf/lo/autoconf /proc/sys/net/ipv6/conf/lo/accept_redirects /proc/sys/net/ipv6/conf/lo/accept_ra ... $ find /proc/sys/net/ipv6/neigh/ /proc/sys/net/ipv6/neigh/ /proc/sys/net/ipv6/neigh/eth0 /proc/sys/net/ipv6/neigh/eth0/locktime /proc/sys/net/ipv6/neigh/eth0/proxy_delay /proc/sys/net/ipv6/neigh/eth0/anycast_delay /proc/sys/net/ipv6/neigh/eth0/proxy_qlen ... /proc/sys/net/ipv6/neigh/lo/unres_qlen /proc/sys/net/ipv6/neigh/lo/gc_stale_time /proc/sys/net/ipv6/neigh/lo/delay_first_probe_time /proc/sys/net/ipv6/neigh/lo/base_reachable_time .... /proc/sys/net/ipv6/neigh/default/proxy_delay /proc/sys/net/ipv6/neigh/default/anycast_delay /proc/sys/net/ipv6/neigh/default/proxy_qlen ...O diretório
conf/ contém configurações intrínsecas da interface, enquanto neigh/ contém configurações que afetam o relacionamento da interface com os demais nós da rede.
Em ambos os diretórios há um subdiretório default/, uma espécie de modelo cujas configurações são copiadas no momento de ativação de alguma interface.
Dentro de conf/ há ainda o subdiretório all/, que permite mudar determinada configuração de todas as interfaces ao mesmo tempo. Para os fins práticos, os arquivos ali contidos são somente de escrita, pois os valores lidos não representam o estado de nenhuma interface em particular.
Segue alguns exemplos de configurações por interface:
/proc/sys/net/ipv6/conf/eth0/forwarding (se a interface eth0 pode servir para roteamento)
/proc/sys/net/ipv6/conf/eth0/hop_limit (Limite de saltos em pacotes emitidos por eth0)
/proc/sys/net/ipv6/conf/eth0/mtu (MTU dos pacotes emitidos por eth0)
Licença:
Creative Commons Atribuição 2.5 Brasil (salvo seja especificada outra)
Válido:
XHTML 1.0 -
CSS 3