How to get IPv6 running properly?

Solution 1:

     inet6 addr: fe80::16da:e9ff:feb6:357e/64 Scope:Link

fe80::/10 as the "Scope" behind it states is a Link-Local address.

To connect to the rest of the internet you need a Global address (thus out of 2000::/3 at least for the next several years) and of course you need at least a default (::/0) or defaultish (2000::/3) route to a router that will actually forward your packets.

As such you have two options: 1) ask your ISP to provide you with native IPv6 2) get a tunnel (google for 'wikipedia ipv6 tunnel broker' to get a good list).

Solution 2:

You don't have a public IPv6 address set up on your host (public addresses start with 2xxx or 3xxx). You only have a link-local (fe80::) address set up, so you can only ping other hosts in your lan.

You have to set "-I eth0" when pinging, because you're pinging a link-local address (fe80::/64), which is set up on all your interfaces, and ping doesn't know which interface to use.

You need to contact your network admin about the network settings (IP address,, gateway, dns), and set it up. Since router advertisment is enabled by default on most machines, there is probably no router sending them out, or you would have had an autoconfigured and IPv6 address.