Static routing with IPv6 Packets in Docker

I have made an experimental laboratory, with a very small amount of elements. I think it’s worth mentioning that I am using Kathara Framework.

I’m trying to ping from c1 to c2, using IPv6. Here are the setup files that I have made:

c1.startup

ifconfig eth0 192.168.1.2 netmask 255.255.255.252 up
route add default gw 192.168.1.1

c2.startup

ifconfig eth0 192.168.3.2 netmask 255.255.255.252 up
route add default gw 192.168.3.1

r1.startup

ifconfig eth0 192.168.1.1 netmask 255.255.255.252 up
ifconfig eth1 192.168.2.1 netmask 255.255.255.252 up

route add -net 192.168.3.0/30 gw 192.168.2.2

r2.startup

ifconfig eth0 192.168.2.2 netmask 255.255.255.252 up
ifconfig eth1 192.168.3.1 netmask 255.255.255.252 up

route add -net 192.168.1.0/30 gw 192.168.2.1

lab.conf

c1[0]=A
r1[0]=A
r1[1]=B
r2[0]=B
r2[1]=C
c2[0]=C

r1[sysctl]="net.ipv6.conf.all.forwarding=1"
r1[sysctl]="net.ipv6.conf.default.forwarding=1"
r2[sysctl]="net.ipv6.conf.all.forwarding=1"
r2[sysctl]="net.ipv6.conf.default.forwarding=1"

When I ping from c1 to c2, everything works just fine:

root@c1:/# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.2  netmask 255.255.255.252  broadcast 192.168.1.3
        inet6 fe80::688c:40ff:fe94:a20  prefixlen 64  scopeid 0x20<link>
        ether 6a:8c:40:94:0a:20  txqueuelen 1000  (Ethernet)
root@c2:/# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.3.2  netmask 255.255.255.252  broadcast 192.168.3.3
        inet6 fe80::ac7f:9cff:fef9:9a08  prefixlen 64  scopeid 0x20<link>
        ether ae:7f:9c:f9:9a:08  txqueuelen 1000  (Ethernet)
root@c1:/# ping 192.168.3.2
PING 192.168.3.2 (192.168.3.2) 56(84) bytes of data.
64 bytes from 192.168.3.2: icmp_seq=1 ttl=62 time=0.125 ms
64 bytes from 192.168.3.2: icmp_seq=2 ttl=62 time=0.074 ms
64 bytes from 192.168.3.2: icmp_seq=3 ttl=62 time=0.077 ms
64 bytes from 192.168.3.2: icmp_seq=4 ttl=62 time=0.084 ms
^C
--- 192.168.3.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 144ms
rtt min/avg/max/mdev = 0.074/0.090/0.125/0.020 ms

However, when I try to ping to the IPv6 address of c2, it doesn’t work:

root@c1:/# ping6 -I eth0 fe80::ac7f:9cff:fef9:9a08
ping6: Warning: source address might be selected on device other than eth0.
PING fe80::ac7f:9cff:fef9:9a08(fe80::ac7f:9cff:fef9:9a08) from :: eth0: 56 data bytes
^C
--- fe80::ac7f:9cff:fef9:9a08 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 100ms

Is there an IPv6 static route command that I should apply to the two routers in order for this to work?
I also cannot ping from c1 to r1’s eth1, or from c2 to r2’s eth0.

Thank you very much and I am sorry if this was posted wrong, it’s my first time using Docker forums.
Wish you all a great week ahead!