# ipv6 connect: Network is unreachable

## Vonfry

I can find my ipv6 address with ifconfig.

In resolve.conf, a namesever address for ipv6 can be found.

And any other ipv6  address cannot ping, except ::1.

```

$ ping6 google.com

connect: Network is unreachable

$ ping6 ::1

PING ::1(::1) 56 data bytes

64 bytes from ::1: icmp_seq=1 ttl=64 time=1.86 ms

64 bytes from ::1: icmp_seq=2 ttl=64 time=4.21 ms

```

What I miss in config? 

I try to google or see in wiki, but the data is too messy to understand what I should do.

EDIT 1:

It seems that I haven't config IPv6  correctly.

```

$ ip -6 addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000

    inet6 fe80::5400:1ff:fe35:7798/64 scope link

       valid_lft forever preferred_lft forever

4: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP

    inet6 fe80::1bc2:177e:8229:107/64 scope link

       valid_lft forever preferred_lft forever

8: vethbfce5ae@if7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP

$ip -6 route

fe80::/64 dev eth0 proto kernel metric 256 pref medium

fe80::/64 dev docker0 proto kernel metric 256 pref medium

fe80::/64 dev vethbfce5ae proto kernel metric 256 pref medium

```

And when I try to restart dhcpcd, the following content is printed.

```

 * Starting DHCP Client Daemon ...

ipv6nd_sendrsprobe: Operation not permitted

vethbfce5ae: truncated packet (24) from 100.43.129.115

ipv6nd_sendrsprobe: Operation not permitted

if_route (ADD): Network is unreachable

```

Last edited by Vonfry on Tue Aug 07, 2018 9:50 am; edited 1 time in total

----------

## NeddySeagoon

Vonfry,

What does 

```
ip -6 addr

ip -6 route
```

show?

Be aware that IPv6 addresses begining with 2 are public

```
$ ping6 google.com

PING google.com(lhr35s02-in-x0e.1e100.net (2a00:1450:4009:80a::200e)) 56 data bytes

64 bytes from lhr35s02-in-x0e.1e100.net (2a00:1450:4009:80a::200e): icmp_seq=1 ttl=57 time=17.2 ms
```

so you may not want to paste them here.

Your network interface should have two IPv6 addresses

One beginning inet6 fe80::

The other beginning inet6 2

There is usually no Network Address Translation with IPv6 so everything with a   inet6 2... address is reachable from the internet.

You must use an IPv6 firewall somewhere.

----------

## Vonfry

 *NeddySeagoon wrote:*   

> Vonfry,
> 
> What does 
> 
> ```
> ...

 

All right, I only have fe80:: in ip -6 addr. I have edited the origin content.

----------

## NeddySeagoon

Vonfry,

IPv6 configuration is mostly automatic.

Your router should get an IPv6 subnet from your ISP then advertise it to all the PCs on you network.

The PCs then make up their own IPv6 addresses from the subnet and their MAC addresses.

That ensures that addresses are unique.

Start by looking at your router.

It should have an IPv6 address on the interface connected to your ISP and on the LAN interface.

If either of them are missing, we have to fix that first.

If they are both there, run 

```
dhcpcd -6 <ifname>
```

 on your PC and check the ip -6 commands again.

This will try to set up IPv6 only. IPv4 will not be changed.

Two fairly basic questions

1) Does your ISP provide IPv6?

2) Does your router support IPv6?

----------

## Vonfry

I contact with my vps provider. And config it with in /etc/networks. Reboot, and it can work.

And then, I remove that config in networks. Reboot again, it also can work.

Why?

----------

## NeddySeagoon

Vonfry,

If everything supports IPv6 and your ISP provides you with an IPv6 subnet, you get at least a /64, then the rest is automatic.

No configuration is required. That's the way IPv6 is designed to work.

----------

