Hi Gianfranco, > $> ip rule show > > 0: from all lookup local > 0: from all lookup main > 0: from all fwmark 0x1 lookup 1 > 0: from all fwmark 0x100 lookup ISP1 > 0: from all fwmark 0x101 lookup ISP2 > —————————————————————————————
What does the routing table for the 0x100 and 0x101 look like? $ ip route show table 0x100 ... > $> iptables -t filter -L > > Chain INPUT (policy ACCEPT) > target prot opt source destination > > Chain FORWARD (policy ACCEPT) > target prot opt source destination > > Chain OUTPUT (policy ACCEPT) > target prot opt source destination > ————————————————————————————— > > $> iptables -t mangle -L > > Chain PREROUTING (policy ACCEPT) > target prot opt source destination > MARK tcp -- anywhere anywhere tcp dpt:http > MARK set 0x64 > MARK tcp -- anywhere anywhere tcp dpt:http > MARK set 0x1 > > Chain INPUT (policy ACCEPT) > target prot opt source destination > connman-INPUT all -- anywhere anywhere > > Chain FORWARD (policy ACCEPT) > target prot opt source destination > > Chain OUTPUT (policy ACCEPT) > target prot opt source destination > connman-OUTPUT all -- anywhere anywhere > > Chain POSTROUTING (policy ACCEPT) > target prot opt source destination > connman-POSTROUTING all -- anywhere anywhere > > Chain connman-INPUT (1 references) > target prot opt source destination > CONNMARK all -- anywhere anywhere CONNMARK restore > > Chain connman-OUTPUT (1 references) > target prot opt source destination > MARK all -- anywhere anywhere owner UID match > ethsession MARK set 0x100 > MARK all -- anywhere anywhere owner UID match > wifisession MARK set 0x101 > > Chain connman-POSTROUTING (1 references) > target prot opt source destination > CONNMARK all -- anywhere anywhere CONNMARK save > ————————————————————————————— I am afraid, but the work for getting it routed to the right interface is not finished yet. So the initial plan was to go with SO_MARK set via a cgroup controller if you don't want to touch your application. For testing purpose you could either hack your application to set the SO_MARK option correctly or you hack one of the network cgroup controllers to allow setting the SO_MARK as well. The current mainline kernel allows to set the classid via a cgroup. Maybe going with the classid instead of mark would work as well for routing decision. That needs some research Anyway you need either to touch your application or have something move the application into a cgroup which does set the marker right. Hope that helps, daniel _______________________________________________ connman mailing list [email protected] https://lists.connman.net/mailman/listinfo/connman
