« En effet, avec une seule route par défaut, tous les paquets IP ressortiront via la même interface, pour ma part eth0. Auparavant il fallait jouer avec ip rules, créer plusieurs tables de routage et composer avec tout ça. Si cela vous intéresse, vous pouvez regarder sur lartc.org comment procéder. Pour ma part je trouve que ça fait un peu mal aux cheveux.
Et bien depuis la version 3.12 du kernel Linux et la clause from, il suffit de deux commandes : ip -6 route add default dev tun0 from 2a00:5881:4008:400::/56 et ip -6 route add default dev eth0 from 2001:470:1f13:138::/64 si je veux répondre sur une IP dans chacun de ces réseaux, sur leur interface respective. Nous obtenons alors une table de routage du genre de :
default from 2001:470:1f13:138::/64 dev eth0 metric 1024
default from 2a00:5881:4008:400::/56 dev tun0 metric 1024
2001:470:1f13:138::/64 dev eth0 proto kernel metric 4
2a00:5881:4008:400::/64 dev tun0 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
default via fe80::250:fcff:fe4d:c3a4 dev eth0 metric 1024
Ainsi, mon serveur saura quelle interface utiliser en fonction de l’adresse source. »
Plus besoin de ip rule et table de routage multiples (voir
http://shaarli.guiguishow.info/?xT-HMA), en v6 uniquement avec Linux >= 3.12 \o/