As regras do ip6tables são completamente ignoradas dentro do contêiner OpenVZ

9

Configuramos a rede IPv6 no openvz usando dispositivos veth em ponte. O tráfego IPv6 de e para os VEs funciona bem.

O ip6tables funciona no HN e o iptables funciona no VE. Dentro do VE, podemos configurar as regras do ip6tables sem nenhuma mensagem de erro. Eles são completamente ignorados no entanto.

Quais opções de configuração adicionais são necessárias para o ip6tables funcionar?

Carsten Thiel
fonte
7
Pode valer a pena fazer uma ip6tables -I INPUT -j LOGe ver se os pacotes estão realmente atingindo os filtros. Se estiverem, tente adicionar linhas semelhantes nos filtros (principalmente após as quedas esperadas) e veja o que é registrado no syslog.
Andy Smith
1
Verifique se os recursos do iptables necessários estão no arquivo vz.conf.
awmusic12635
1
O serviço foi iniciado? Precisa ser reiniciado para que as alterações tenham efeito?
Xalorous 30/08/16
Você verificou se o iface que você está usando está vendo tráfego nas antigas tabelas de ipv4 IPv4? Camadas de abstração obscuras podem deixar várias NICs "erradas" no sistema que aparentemente não fazem nada. Longe vão os dias em que você simplesmente tinha eth0 para internet e eth1 para sua LAN interna.
Zdenek

Respostas:

0

Parece que você está usando os contêineres sob proxmox, certo? Você deve verificar a partir da interface gráfica no proxmox se os endereços de rede estão corretos e são conhecidos pelo PVE
Em alguns casos, o pve impede o uso de alguns módulos do iptables, por exemplo:
FATAL: Não foi possível carregar /lib/modules/4.15.18-1- pve / modules.dep: Esse arquivo ou diretório não existe

Nota: No proxmox 5, os contêineres OpenVZ serão convertidos para LXC , isso pode apresentar algum viés

Fibo
fonte
-1

Certifique-se de aplicar as regras à interface venet0 explicitamente.

Scott Mcintyre
fonte
Não. OP disse explicitamente que ele usa veth. Não venet0 aqui
Bruno9779 28/11
-2

Os contêineres OpenVZ herdam o kernel e os módulos do nó host. Por isso, você não pode carregar novos módulos do kernel em um contêiner OpenVZ / LXC. Eu garantiria que o hostnode tenha o ip6_tablesmódulo do kernel compilado no kernel ou carregado como um módulo.

Esse é um problema porque o OpenVZ é para-virtualização, o que significa que ele compartilha o mesmo kernel com o nó host. Como você compartilha o mesmo kernel que os outros contêineres do OpenVZ, não é possível carregar módulos no kernel. Com as máquinas virtuais de hardware, você pode executar seu próprio kernel e pode carregar / descarregar módulos do kernel ou compilar seu próprio kernel para usá-lo. A questão vinculada abaixo cobre as diferenças em mais detalhes.

Qual é a diferença entre virtualização completa, para e assistida por hardware?

Infelizmente quando você só tem acesso ao ambiente Visitante OpenVZ determinar se o módulo IPv6 IPtables é carregado pode ser um pouco duro como lsmod, /proc/modulese /proc/config.gz muitas vezes não existem dentro de OpenVZ.

Por causa disso, talvez você precise entrar em contato com seu provedor, pois alguém com acesso root no nó host precisará carregar esse módulo do kernel para você.

Citizen Kepler
fonte
Tudo isso é verdade, mas completamente irrelevante: ele é o provedor e os módulos relevantes estão carregados.
Michael Hampton