I have manually specified only ipv4 address for my interfaces. But all the interfaces automatically show inet6 address as well. Does it mean that ubuntu starts an ipv6 tunnel by default. If it does, isn't it dangerous, as ipv6 assigns public ips for all LAN clients. I only have a firewall on my NAT router, and my clients, who's interfaces show ipv6 address, do not have firewalls. Here is a screenshot:
eth0 Link encap:Ethernet HWaddr 34:dc:47:2e:ad:13
inet6 addr: fe80::28cf:38ff:fb7b:da19/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5783 errors:0 dropped:0 overruns:0 frame:0
TX packets:6098 errors:0 dropped:0 overruns:0 carrier:1
collisions:0 txqueuelen:1000
RX bytes:2961324 (2.9 MB) TX bytes:1573757 (1.5 MB)
Interrupt:46
Note: For privacy reasons I have modified the HWaddr
and inet6 addr
values.
The IPv6 address shown is link-local - this means that it is not publically accessible outside of your LAN, but is an automatic address assigned for communicating within your local network. For people to be able to access your computer via IPv6, there would need to be a public address on the interface & for it to be routed.
IPv6 addresses are shown because IPv6 is enabled on network interfaces by default. The only way this would matter (I believe) is if the network you were connected to supported IPv6.
I don't believe that Ubuntu would create a IPv6 tunnel to anything, it just leaves the protocol active on that interface. If IPv6 is available on your network, and the IPv6 side does not employ NAT, than there is the possibility that it is directly connecting you to the Internet.
In that case, if you were worried about your security, you could disable IPv6 using CYREX's answer.
Try:
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
You can also change the ALL part in the line to specify eth0, eth1... the one you actually want to change that.
NOTE: You NEED to be root to do this.