Lösung 1:
Nun, nach einem kleinen Gespräch im IRC ist die allgemeine Meinung, dass der Linux-Kernel einen Teil des Codes zwischen ipv4 und ipv6 teilt, und das kann das vollständige Deaktivieren von ipv4 völlig unmöglich machen. Sie können versuchen den Kernel ohne die ipv4-Teile zu kompilieren, aber ipv6 wird in diesem Fall möglicherweise nicht kompiliert (aber nichts hält Sie davon ab, es zu versuchen!).
Sie können die IPv4-Adressen von Schnittstellen entfernen, AFAIK, aber ich glaube nicht, dass es derzeit möglich ist, IPv4 vollständig zu deaktivieren.
BEARBEITEN: Nach einem kurzen Check auf make menuconfig
Auf Kernel 2.6.36 konnte ich keine Möglichkeit finden, IPv4 zu deaktivieren, ohne den gesamten TCP/IP-Stack (und damit IPv6) zu deaktivieren.
Lösung 2:
Wenn dies für Entwickler ist, dann könnte "Bibliotheksinterposition" verwendet werden, mit LD_PRELOAD eine manipulierte Bibliothek mit Stub-Funktionen, die einfach Fehler zurückgeben (oder die die echten aufrufen, abhängig vom Wochentag oder einem anderen externen Kriterium).
Lösung 3:
Ich glaube nicht, dass es möglich ist, IPv4 vollständig zu deaktivieren, aber abhängig von Ihrem Ziel, den gesamten IPv4-Verkehr mit iptables
fallen zu lassen könnte reichen, oder?
So etwas sollte funktionieren. Ich habe es auf keinem Computer getestet, da ich über IPv4 auf sie zugreife.
sudo iptables -I INPUT -j DROP
sudo iptables -O OUTPUT -j DROP