Como posso desabilitar a pilha IPv4 do Linux? Eu quero fazer isso dinamicamente , ou seja, às vezes eu quero habilitado e às vezes eu quero apenas pilha IPv6 . Existe alguma maneira portátil de fazer isso? Se você souber como fazer isso em qualquer distribuição, isso também me ajudará bastante.
linux
networking
ipv6
linux-networking
ipv4
Aldebaran
fonte
fonte
Respostas:
Bem, após um pequeno bate-papo no IRC, a opinião geral é que o kernel do linux compartilha algum código entre o ipv4 e o ipv6, e isso pode tornar completamente incapacitante a desativação do ipv4. Você pode tentar compilar o kernel sem as partes do ipv4, mas o ipv6 pode não ser compilado nesse caso (mas nada impede você de tentar!).
Você pode remover os endereços ipv4 das interfaces, AFAIK, mas não acho possível, no momento, desativar completamente o ipv4.
EDIT: Após uma rápida verificação no
make menuconfig
kernel 2.6.36, não consegui encontrar uma maneira de desativar o ipv4 sem desativar toda a pilha TCP / IP (e, portanto, o ipv6).fonte
Se for para desenvolvedores, poderá ser usada "interposição de biblioteca", com LD_PRELOAD alguma biblioteca com funções stub que simplesmente retornam erros (ou que chamam os reais, dependendo do dia da semana ou de algum outro critério externo).
fonte
Não acho possível desabilitar completamente o IPv4, mas, dependendo do seu objetivo, eliminar todo o tráfego IPv4 usando
iptables
pode ser suficiente, não?Algo assim deve funcionar. Não testei em nenhuma máquina, pois estou acessando-as através do IPv4.
fonte
/etc/network/interfaces.d
. Não é o mesmo que desativar o IPv4, poissystemd-resolved
ainda está ouvindo127.0.0.53:53
. Mas foi suficiente para atender às minhas necessidades imediatas e muito preferido para mexeriptables
.Principalmente você deve recompilar o seu kernel sem os módulos ipv4. fedora
Você não pode desativá-lo completamente porque o sistema usa a interface de loopback 127.0.0.1.
Mas você pode desativar algumas funções do ipv4 com o comando if-cfg.
fonte