Hello, I'm working on multi-interfaces setups on IPv6 with linux. I experience some troubles with routing.
I have too interfaces eth1 and eth2, each connected to a different access router, each router advertising its own prefix in RAs. eth1 and eth2 are configured to perform SLAAC and accept default router from RAs. Unfortunately, when performing, for instance, a ping from one specific interface or source address, the ping always use the most recent default router. (eth1 = fd01::5054::ff:fe00:11) (eth2 = fd02::5054::ff:fe00:12) E.g. if i perform the following on a 3.11.1 linux kernel (the same on former versions): $ ping6 -I fd02::5054::ff:fe00:12 fd08::1 ... the ping might go through eth1 with fd02::5054::ff:fe00:12 as a source address. Worse happens if i use the interface name: $ ping6 -I eth2 fd08::1 ... the ping might go through eth1 with fd01::5054::ff:fe00:11 as a source address. The problem is really annoying if you want to use autoconfiguration in a multihoming scenario without the need for an external daemon. But maybe i missed a sysctl flag or something like that. Do you confirm the problem ? Does someone knows any automatic (i mean in-kernel) solution to source route packets through the right interface ? Thanks. Emmanuel Thierry
