IPv6 - Link local default gateway not getting set

tmahring

New Member
Apr 24, 2016
1
0
1
40
Hi

I'm trying to get a LXC VM running with ipv6.
The network I'm on (hetzner) requires me to use link local adresses (fe80::1) as my default gateway.
If i set this in the proxmox interface the autogenerated enties in /etc/network/interfaces fail to set the default route:
Code:
root@test2:~# cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet6 static
  address 2a01:4f8:172:12e7::1002
  netmask 64
  post-up ip route add fe80::1 dev eth0
  post-up ip route add default via fe80::1
  pre-down ip route del default via fe80::1
  pre-down ip route del fe80::1 dev eth0

root@test2:~# route -6
Kernel IPv6 routing table
Destination  Next Hop  Flag Met Ref Use If
2a01:4f8:172:12e7::/64  ::  U  256 1  4 eth0
fe80::1/128  ::  U  1024 0  0 eth0
fe80::/64  ::  U  256 0  0 eth0
::/0  ::  !n  -1  1  5 lo
::1/128  ::  Un  0  3  3 lo
2a01:4f8:172:12e7::1002/128  ::  Un  0  2  3 lo
fe80::6464:65ff:fe31:3432/128  ::  Un  0  1  0 lo
ff00::/8  ::  U  256 1  4 eth0
::/0  ::  !n  -1  1  5 lo

root@test2:~# ping6 2a00:1450:4001:807::200e
connect: Network is unreachable

This is due to the route add command missing the dev parameter:
Code:
root@test2:~# ip route add default via fe80::1
RTNETLINK answers: Invalid argument

If I add the dev parameter everything works fine:
Code:
root@test2:~# ip route add default via fe80::1 dev eth0
root@test2:~# ping6 2a00:1450:4001:807::200e
PING 2a00:1450:4001:807::200e(2a00:1450:4001:807::200e) 56 data bytes
64 bytes from 2a00:1450:4001:807::200e: icmp_seq=1 ttl=58 time=5.98 ms
64 bytes from 2a00:1450:4001:807::200e: icmp_seq=2 ttl=58 time=5.52 ms
64 bytes from 2a00:1450:4001:807::200e: icmp_seq=3 ttl=58 time=5.51 ms

I can work around this issue pretty easily by adding the default route via rc.local, but i still wanted to mention it here.
Am I missing / messing up something or is this simply a bug ?
 
Ah yes this is indeed an issue. Working on it.