How to get IPv6 running properly?

28,108

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.

Share:
28,108

Related videos on Youtube

Cobra_Fast
Author by

Cobra_Fast

Updated on September 18, 2022

Comments

  • Cobra_Fast
    Cobra_Fast over 1 year

    So, my problem is that I just can't get IPv6 to work. Ping6 just tells me connect: Network is unreachable when I try to ping ipv6.google.com for example.

    ifconfig looks like (a tad censored):

    eth0      Link encap:Ethernet  HWaddr **:**:e9:b6:35:7e  
              inet addr:***.*.65.177  Bcast:***.*.65.191  Mask:255.255.255.224
              inet6 addr: fe80::16da:e9ff:feb6:357e/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:* errors:0 dropped:0 overruns:0 frame:0
              TX packets:* errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:*  TX bytes:*
              Interrupt:28 Base address:0xc000 
    lo        ...
    

    route -6 returns:

    Destination                    Next Hop                   Flag Met Ref Use If
    fe80::/64                      ::                         U    256 0     0 eth0
    fe80::/64                      ::                         U    256 0     0 tap0
    ::/0                           ::                         !n   -1  1  5400 lo
    ::1/128                        ::                         Un   0   4269387 lo
    fe80::16da:e9ff:feb6:357e/128  ::                         Un   0   1   391 lo
    fe80::4c7b:2bff:fef4:9db/128   ::                         Un   0   1     0 lo
    ff00::/8                       ::                         U    256 0     0 eth0
    ff00::/8                       ::                         U    256 0     0 tap0
    ::/0                           ::                         !n   -1  1  5400 lo
    

    Another strange thing is, pinging my own IPv6 address only works if I tell ping6 to specifically use the eth0 interface with -I eth0 otherwise that'll return unknown host.

    One thing I've read is that I need to specify my router in the routing table somehow, but I don't even know the router's address and I have no idea about how to find it out either (because I'm nothing like a networking expert and IPv6 seems even more confusing than IPv4 to me).

    Any ideas or solutions?

    • Admin
      Admin over 11 years
      I feel bad for asking this, but does your ISP definitely support IPv6? Your router will then need to be set up for IPv6, too. Also, is this a home question, because those are off-topic here? Check out our FAQ
    • Admin
      Admin over 11 years
      @Chloe Yes definitely. The machine is a server in a proper datacenter. No home stuff going on here...
    • Admin
      Admin over 11 years
      Fair enough, in that case you need to have a chat with whoever is in charge with the router / networking before you can proceed much further.
    • Admin
      Admin over 11 years
      And what specifically would I ask and look for?
    • Admin
      Admin about 7 years
      You need a public ipv6 address, you can get form you isp provider. But some isp providers not have ipv6 service. For configuration ipv6 refer my post here. askubuntu.com/a/894840/582516
  • Peter Krauss
    Peter Krauss almost 6 years
    +1 for clue about set option, now ping is working... But only works as "self ping", when I in the ssh, eg. ping6 -I eth0 2604:a880:2:d0::20c7:c001 is public (!) but not ping in other machines.