I'm doing some IPv6 related testing, and I wanted to fully disable my IPv4 for the tests on Linux, but couldn't find any easy place to do this. How do I make my IPv6 the only active one?


If you edit the /etc/modprobe.d/aliases file and change the following, it should work:

alias net-pf-2 ipv4


alias net-pf-2 off
| improve this answer | |

imho the best way to do this is to simply not configure an IPv4 address. Additionally you can choose to disable arp:

ip addr del <ipv4 address>/CIDR dev ethN
(operational example: "ip addr del dev eth0")
ip link set dev eth0 arp off

I do this on some boxes that should be only reachable via IPv6 for administative purposes (ssh) - boxes that should not be using the routable Internet for anything else. One such example is a database server that uses an IPv6 ULA via OpenVPN so that only internal hosts can connect to it.

| improve this answer | |

If you are using Network Manager, click on in and select 'Edit Connections'. Then edit the default connection (or the one you are using) and look under the 'IPv4 Settings' tab. There should be a dropdown for method where you can select 'Disabled'.

Remember to activate it when you're finished testing.

If you're not using Network Manager, this command should do the trick:

ip address del <address>/<netmask> dev <device>

For example:

ip address del dev eth0
| improve this answer | |
  • Of course, this doesn't disable IPv4 completly, just on the interface. You'll still have v4 on loopback (lo), but I'm not sure that can be disabled without problems. – mboehn May 13 '11 at 22:41
  • 1
    Depending on exactly what you're testing, a simpler method yet might be to just drop your IPv4 route to the default GW. – BMDan May 14 '11 at 0:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.