Solution 1 :
Eh bien, après une petite discussion sur l'IRC, l'opinion générale est que le noyau Linux partage du code entre ipv4 et ipv6, et cela peut rendre la désactivation complète d'ipv4 totalement impossible. Vous pouvez essayer pour compiler le noyau sans les parties ipv4 mais ipv6 peut ne pas compiler dans ce cas (mais rien ne vous empêche d'essayer !).
Vous pouvez supprimer les adresses ipv4 des interfaces, AFAIK, mais je ne pense pas qu'il soit possible pour le moment de désactiver complètement ipv4.
MODIF : Après une vérification rapide sur make menuconfig
sur le noyau 2.6.36, je n'ai pas trouvé de moyen de désactiver ipv4 sans désactiver l'ensemble de la pile TCP/IP (et donc ipv6).
Solution 2 :
Si c'est pour les développeurs, alors "l'interposition de bibliothèque" pourrait être utilisée, avec LD_PRELOAD une bibliothèque trafiquée avec des fonctions stub qui renvoient simplement des erreurs (ou qui appellent les vraies en fonction du jour de la semaine ou d'un autre critère externe).
Solution 3 :
Je ne pense pas qu'il soit possible de désactiver complètement IPv4, mais selon votre objectif, supprimer tout le trafic IPv4 en utilisant iptables
pourrait suffire, non ?
Quelque chose comme ça devrait fonctionner. Je ne l'ai testé sur aucune machine, car j'y accède via IPv4.
sudo iptables -I INPUT -j DROP
sudo iptables -O OUTPUT -j DROP