HOWTO - Disable IPv6 support in Ubuntu/Linux.
As many people know, Ubuntu supports IPv6 by default.
It's nice but sometimes you don't have chance to use IPv6 in your network environment.
And maybe, sometimes it brings few more complexity for your system administration tasks.
For example, if you set listen_ip=0.0.0.0:80 in a services daemon's config file and hope it can listen to all of the IPv4 IPs of your network interfaces, you might not get what you want.
This is because, if the daemon supports both IPv4 and IPv6, it will listen to IPv6 :::80 by default. That's why you cannot connect to your service even the network link is up.
There are many different, alternative, or strange ways people tell you that it can disable IPv6.
But the best way is using to disable it in your kernel.
Using those commands to append kernel settings/parameters into
echo "#disable ipv6" | sudo tee -a /etc/sysctl.conf echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf echo "net.ipv6.conf.default.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf echo "net.ipv6.conf.lo.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
Enable those settings Righ Now!
All those setting will will be kept and will be applied/enabled automatically at future boot time.
Tested on: Ubuntu 8.04 LTS, Ubuntu 10.04 LTS