Closed Stargateur closed 3 years ago
Could you show the result of ip -6 route show dev eth0
?
Please also provide debugging logs of networkd. It can be generated by creating the following drop-in config:
# /etc/systemd/system/systemd-networkd.service.d/override.conf
[Service]
Environment=SYSTEMD_LOG_LEVEL=debug
@yuwata done
Apperently not a bug need to activate GatewayOnLink
on true:
[Route]
Gateway=YYYY:YYYY:YYYY:YYFF:FF:FF:FF:FF
GatewayOnLink=yes
but I don't fully understand why.
Hmm, it seems the gateway address is belonging to a different network from the address YYYY:YYYY:YYYY:YYYY::/64
. Is it possible to assign the gateway with ip
command?
$ sudo ip link add test01 type dummy
$ sudo ip link set dev test01 up
$ sudo ip address add YYYY:YYYY:YYYY:YYYY::/64 dev test01
$ sudo ip -6 route add default via YYYY:YYYY:YYYY:YYFF:FF:FF:FF:FF dev test01
Do the above commands work? If so, what kind of address YYYY:YYYY:YYYY:YYYY::/64
do you use?? Could you unmask the address as possible as you can?
I already try to add the route (before the fix) and yes it's work with just only ip -6 route add YYYY:YYYY:YYYY:YYFF:FF:FF:FF:FF dev eth0
as my post said.
that what the user Michael Hampton on segfault said;
You have a server on OVH, which has its IPv6 gateway in a different subnet than the /64 assigned to you, despite it being on the same layer 2 physical link.
ip could be 2001:41d0:4242:4242::/64
and gateway could be 2001:41d0:4242:42FF:FF:FF:FF:FF::/64
.
But I don't see why without this option systemd do nothing or at least don't report any error.
I cannot add the default gateway. See the result below. What commands have you tried??
$ sudo ip link add test01 type dummy
$ sudo ip link set dev test01 up
$ sudo ip address add 2001:41d0:4242:4242::/64 dev test01
$ sudo ip -6 route add default via 2001:41d0:4242:42FF:FF:FF:FF:FF dev test01
RTNETLINK answers: No route to host
As Michael on segfault and I already commented, the gateway address is in a different network from the address you assigned. So, kernel does not know the route to 2001:41d0:4242:42FF:FF:FF:FF:FF
.
Or, though I am not familiar with OVH environment, are there any special trick to access the gateway??
Note, the following two sets of commands work. The first one is almost equivalent to GatewayOnLink=yes
,
$ sudo ip link add test01 type dummy
$ sudo ip link set dev test01 up
$ sudo ip address add 2001:41d0:4242:4242::/64 dev test01
$ sudo ip -6 route add default via 2001:41d0:4242:42FF:FF:FF:FF:FF onlink dev test01
$ ip -6 route show dev test01
2001:41d0:4242:4242::/64 proto kernel metric 256 pref medium
fe80::/64 proto kernel metric 256 pref medium
default via 2001:41d0:4242:42ff:ff:ff:ff:ff metric 1024 onlink pref medium
and the second one is similar to what you tested in the first post:
$ sudo ip link add test01 type dummy
$ sudo ip link set dev test01 up
$ sudo ip address add 2001:41d0:4242:4242::/64 dev test01
$ sudo ip -6 route add 2001:41d0:4242:42FF:FF:FF:FF:FF dev test01
$ sudo ip -6 route add default via 2001:41d0:4242:42FF:FF:FF:FF:FF dev test01
$ ip -6 route show dev test01
2001:41d0:4242:4242::/64 proto kernel metric 256 pref medium
2001:41d0:4242:42ff:ff:ff:ff:ff metric 1024 pref medium
fe80::/64 proto kernel metric 256 pref medium
default via 2001:41d0:4242:42ff:ff:ff:ff:ff metric 1024 pref medium
this is almost equivalent to
[Network]
Address=2001:41d0:4242:4242::/64
Gateway=2001:41d0:4242:42ff:ff:ff:ff:ff
[Route]
Destination=2001:41d0:4242:42ff:ff:ff:ff:ff
Cross posted on serverfault.
I don't understand why my systemd network config doesn't set up ipv6 gateway route,
XXX.XXX.XXX.XXX
andYYYY:YYYY:YYYY:YYYY::
are always the same ip:This correctly work for ivp4:
but ipv6 doesn't work:
but if I manually add the route:
System information:
log: