¿Cómo puedo deshabilitar la pila IPv4 de Linux? Quiero hacerlo dinámicamente , es decir, a veces quiero que esté habilitado y a veces solo quiero la pila IPv6 . ¿Hay alguna forma portátil de hacer eso? Si sabes cómo hacerlo en cualquier distribución, también me ayudará mucho.
linux
networking
ipv6
linux-networking
ipv4
Aldebarán
fuente
fuente
Respuestas:
Bueno, después de un pequeño chat en el IRC, la opinión general es que el kernel de Linux comparte algún código entre ipv4 e ipv6, y eso puede hacer que la desactivación por completo de ipv4 sea completamente imposible. Puede intentar compilar el núcleo sin las partes de ipv4, pero es posible que ipv6 no se compile en este caso (¡pero nada le impide intentarlo!).
Puede eliminar las direcciones ipv4 de las interfaces, AFAIK, pero no creo que en este momento sea posible deshabilitar completamente ipv4.
EDITAR: Después de una comprobación rápida
make menuconfig
del kernel 2.6.36, no pude encontrar una manera de deshabilitar ipv4 sin deshabilitar toda la pila TCP / IP (y, por lo tanto, ipv6).fuente
Si esto es para desarrolladores, entonces se podría usar "interposición de biblioteca", con LD_PRELOAD alguna biblioteca manipulada con funciones de código auxiliar que simplemente devuelven errores (o que llaman a los reales dependiendo del día de la semana o algún otro criterio externo).
fuente
No creo que sea posible deshabilitar IPv4 por completo, pero dependiendo de su objetivo, dejar todo el tráfico de IPv4 usando
iptables
podría ser suficiente, ¿no?Algo como esto debería funcionar. No lo he probado en ninguna máquina, ya que estoy accediendo a ellos a través de IPv4.
fuente
/etc/network/interfaces.d
. No es lo mismo que deshabilitar IPv4 yasystemd-resolved
que todavía está escuchando127.0.0.53:53
. Pero fue suficiente para atender mis necesidades inmediatas y preferí jugar con ellasiptables
.En su mayoría, debe volver a compilar el núcleo sin módulos ipv4. fedora
No puede deshabilitarlo por completo porque el sistema usa la interfaz de bucle invertido 127.0.0.1.
Pero puede deshabilitar algunas funciones de ipv4 con el comando if-cfg.
fuente