Debian Linux Disable IPv6 Networking

by Vivek Gite on July 22, 2010 · 5 comments

How do I disable an IPv6 network connection and all its subsystem for my server? I'm having some problem with my GUI program under Debian "Squeeze", how can I disable IPv6?

The Internet Protocol version 6 can be disabled by removing kernel driver or module called ipv6. To disable the same just type the following command:
echo 'blacklist ipv6' >> /etc/modprobe.d/blacklist
Simply reboot the box:
# reboot

Alternatively you can use the ifconfig command to remove all ipv6 addressed assigned to your box. You also need to remove ipv6 gateway using the route command itself and finally use the rmmod command to remove ipv6 driver. This is useful if you don't want to reboot the box. Please note that eth0 connectivity will go down and you cannnot use the following commands over the ssh session:
# ifconfig down eth0
# route -A inet6 del {network6}/{prefixlength} gw {ipv6address} eth0
# lsmod | grep ipv6
# rmmod ipv6
# ifconfig eth0 up
#### or
# /etc/init.d/networking restart

Featured Articles:

Share this with other sys admins!
Facebook it - Tweet it - Print it -

{ 5 comments… read them below or add one }

1 Jack Wade July 26, 2010

Just as ipv6 is starting to gain adoption…

Reply

2 socrates August 18, 2010

i will have one linux packup in cd

Reply

3 ToxiNiK February 22, 2011

How to turn off IPv6 In squeeze?
Disable ipv6 in kernel:
# echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf
will disable ipv6 at next reboot.

Reply

4 tuxy42 June 2, 2011

Congrats! according me this is the cleaner way to do this! Thanks!

Reply

5 Penny April 12, 2011

Hi.

Debian Testing amd 64:
Question: How to disable ‘All’ programs ability to listen using tcp6.
i.e netstat -tupln
tcp 0 0 0.0.0.0:3142 0.0.0.0:* LISTEN 1787/apt-cacher-ng
tcp6 0 0 :::3142 :::* LISTEN 1787/apt-cacher-ng

Steps taken:
1. Added to /etc/modprobe.d/blacklist.conf : ‬blacklist ipv6‭
2. Created: /etc/sysctl.d/disable-ipv6.conf ;
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
net.ipv6.conf.eth1.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.vboxnet0.disable_ipv6 = 1
3. Uncommented: /etc/sysctl.conf ;
net.ipv6.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_source_route = 0
4. Added: /etc/modprobe.d/aliases.conf
alias net-pf-10 off
alias ivp6 off
5. Commented out: /etc/hosts (all ipv6 references)

I wish to disallow any and all ipv6 initiated by a program.

Caveats: Unfortunately using the firewall ‘ufw’ overrides the /etc/sysctl.conf and /etc/sysctl.d/* . To include my custom options.
I added the below to: /etc/ufw/sysctl.conf ;

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
net.ipv6.conf.eth1.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.vboxnet0.disable_ipv6 = 1

Still showing ipv6 listenting. (grrrr)

Thank you.
Penny

Reply

Leave a Comment

You can use these HTML tags and attributes for your code and commands: <strong> <em> <ol> <li> <u> <ul> <blockquote> <pre> <a href="" title="">
What is 14 + 12 ?
Please leave these two fields as-is:
Solve the simple math so we know that you are a human and not a bot.




Previous post:

Next post: