--- zzzz-none-000/linux-2.6.28.10/net/ipv4/fib_frontend.c 2009-05-02 18:54:43.000000000 +0000 +++ fusiv-7390-686/linux-2.6.28.10/net/ipv4/fib_frontend.c 2013-01-31 18:30:56.000000000 +0000 @@ -685,11 +685,13 @@ .nl_net = net, }, }; + u32 n; if (type == RTN_UNICAST) - tb = fib_new_table(net, RT_TABLE_MAIN); + n = IN_DEV_CONF_GET(ifa->ifa_dev, IFADDR_RTABLE); else - tb = fib_new_table(net, RT_TABLE_LOCAL); + n = RT_TABLE_LOCAL; + tb = fib_new_table(net, n); if (tb == NULL) return;