Filtrando mensagens IPv6 ICMPv6

2

Então, estou brincando com o IPv6 na minha rede doméstica um pouco mais, e estou fazendo as coisas um pouco antiquadas - configurando endereços estáticos e coisas do tipo. Isso significa que realmente não quero nem cuido de toda a configuração automática incorporada ao IPv6 por meio das várias mensagens ICMPv6. Mas rodando wireshark e capturando apenas tráfego IPv6, dois dos meus sistemas IPv6 rodando Linux estão provando ser pequenas coisas. Eles estão constantemente trocando pacotes "Solicitação de Vizinho", "Anúncio de Vizinho" e Relatório de Ouvinte de Multicast de ICMPv6. Eles fazem isso tanto no endereço ULA atribuído estaticamente que eu configurei para cada máquina quanto no endereço local de vínculo configurado automaticamente. .

A minha pergunta é: como posso desabilitá-los no Linux? Eu encontrei vários guias para o Windows através do comando 'netsh' (o que me surpreendeu - o Windows parece ser muito mais sintonizável nesse aspecto do que o Linux). Até agora, parece que minha única escolha no Linux é usar o ip6tables para bloquear tipos específicos de mensagem ICMPv6. No entanto, olhando para o RFC4890, eles implicam que essas mensagens não devem ser bloqueadas se um host IPv6 for participar de uma rede IPv6 com êxito.

Minha leitura do protocolo IPv6 sugere que ele foi strongmente influenciado por problemas enfrentados em grandes redes corporativas. Os engenheiros de protocolo pareciam ter pouca consideração por redes pequenas e privadas. Isso é ótimo se você é um administrador de sistemas de uma grande corporação ou outra rede corporativa, mas um pouco chato se você é apenas "um cara" tentando brincar com o protocolo em uma rede doméstica para aprendê-lo. Meu método de aprendizado significa estabelecer algo como minha rede IPv4 como uma linha de base e, em seguida, ativar recursos conforme necessário.

Então, pergunto aos especialistas se devo desabilitar esses três tipos de mensagens nos meus hosts Linux e Windows. Será que vai terrivelmente quebrar a minha configuração IPv6 interna se eu fizer? Como isso afetará o IPv6 externo quando eu chegar a esse estágio (meu ISP ainda não alocou endereços IPv6 para os clientes ainda, então não há nenhum roteamento IPv6 externo até o momento e nenhum túnel de 6 para 4)? O ip6tables é minha única opção no Linux?

Eu também presumo que estou preso com os endereços locais de link, certo? Não há como se livrar deles? Eles são impossíveis de memorizar ... (talvez seja esse o ponto dele?)

    
por Kumba 05.04.2011 / 23:49

2 respostas

4

Desativar o ICMP para IPv6 pode quebrá-lo completamente. É usado para um lote mais coisas em v6 que em v4. Ele é usado para relatórios de erros, descoberta de vizinhos (como você descobriu) e muito mais.

Ao bloquear o ICMPv6 em qualquer nível, você pode prejudicar seriamente a capacidade do IPv6 de realizar seu trabalho. Há um (breve) artigo da Wikipédia sobre ele , juntamente com o normal RFC muito abrangente .

    
por 06.04.2011 / 00:11
1

Para obter um endereço global, você pode usar 6to4; você obterá uma tradução do seu endereço v4 global como um endereço v6. A desvantagem é que você precisará passar por um nó de túnel 6to4; eles variam entre o "lento" e "dolorosamente lento", dependendo de quão perto você está a um nó (ping 192.88.99.1 para descobrir; este é o endereço anycast que deve ser o seu ponto final mais próximo). Bom o suficiente para obter um link ao vivo para testes e aprendizado ... mas é sobre isso.

No que diz respeito ao ICMPv6, o Mark já o cobriu bem. Vou acrescentar isso: não se estresse sobre isso. Pense em todas as conversas que você está atualmente acostumado a sair - ARP, DHCP; se você tem sistemas Windows, então netbios, navegador de computador e teredo; lixo multicast como SSDP / DNLA / UPnP. Você não está acostumado a essas mensagens ICMP, mas eles são uma parte importante de como funciona IPv6 .. é por isso que você está definindo-se para aprender sobre, em primeiro lugar!

    
por 06.04.2011 / 00:32