1

I have configured IPv6 networking on three machines A, B, C (B and C are LXD containers running on A). B and C are directly connected only to A. I've assigned addresses fdef:9062:4cf7:5::2/64 and fdef:9062:4cf7:5::2/64 respectively on interfaces connecting A to B and C. I've assigned fdef:9062:4cf7:5::1/64 address on B and fdef:9062:4cf7:3::1/64 on C. I've added route fdef:9062:4cf7::1/48 via fdef:9062:4cf7:5::2/64 on B and fdef:9062:4cf7::1/48 via fdef:9062:4cf7:3::2/64 on C. I have net.ipv6.conf.all.forwarding=1 on all hosts and I don't run radv.

Now, I can ping both B and C from host A, but pinging B from C (and vice vera) works only if B and C are in A neighbour cache! As if the kernel forgot to send NDP for routed packets, but not for packets directly sent by ping.

Is this normal behavior? I'm confused, because I've expected that IPv6 routing will work in a same way as IPv4 routing.

0 Answers0