I have trying a similar thing.
I have two ISP connections and I want to redirect some traffic by one ISP and P2P traffic by the other.
I'm using 2.9.1 version and I have configured the router as a hotspot.
The problem is that I have get to redirect all the traffic except the http (port 80).
The counters increase when you surf internet but it continues going by the default route.
Could be the problem the hotspot configuration?
this is my configuration:
ip route>
1 ADC 10.5.50.0/24 10.5.50.1 hotspot_users
2 S 80.58.61.250/32 u 192.168.125.1
3 S 80.58.61.254/32 u 192.168.125.1
4 S 192.168.1.0/24 u 10.0.104.1
5 ADC 192.168.1.0/24 192.168.1.252 ISP2
6 ADC 192.168.50.0/24 192.168.50.100 ISP1
7 A S 0.0.0.0/0 r 192.168.50.1 ISP1
8 S 0.0.0.0/0 r 192.168.1.1 ISP2
9 A S 0.0.0.0/0 r 192.168.1.1 ISP2
10 A S 0.0.0.0/0 r 192.168.1.1 ISP2
11 S 0.0.0.0/0 r 192.168.1.1 ISP2
12 A S 0.0.0.0/0 r 192.168.1.1 ISP2
13 A S 0.0.0.0/0 r 192.168.1.1 ISP2
14 A S 0.0.0.0/0 r 192.168.1.1 ISP2
15 A S 0.0.0.0/0 r 192.168.1.1 ISP2
16 A S 0.0.0.0/0 r 192.168.1.1 ISP2
17 A S 0.0.0.0/0 r 192.168.1.1 ISP2
18 A S 0.0.0.0/0 r 192.168.1.1 ISP2
19 A S 0.0.0.0/0 r 192.168.1.1 ISP2
20 A S 0.0.0.0/0 r 192.168.1.1 ISP2
21 A S 0.0.0.0/0 r 192.168.1.1 ISP2
22 A S 0.0.0.0/0 r 192.168.1.1 ISP2
23 A S 0.0.0.0/0 r 192.168.1.1 ISP2
24 A S 0.0.0.0/0 r 192.168.1.1 ISP2
25 S 0.0.0.0/0 r 192.168.1.1 ISP2
26 S 0.0.0.0/0 r 192.168.1.1 ISP2
27 S 0.0.0.0/0 r 192.168.1.1
[admin@Pruebas] ip firewall mangle> print
Flags: X - disabled, I - invalid, D - dynamic
0 chain=prerouting in-interface=hotspot_users protocol=tcp dst-port=0-1024
action=mark-routing new-routing-mark=ConocidosTCP
1 chain=prerouting in-interface=hotspot_users protocol=udp dst-port=0-1024
action=mark-routing new-routing-mark=conocidosUDP
2 chain=prerouting in-interface=hotspot_users protocol=tcp dst-port=1863
action=mark-routing new-routing-mark=MSNmessengertcp
3 chain=prerouting in-interface=hotspot_users protocol=tcp dst-port=5190
action=mark-routing new-routing-mark=icq
4 chain=prerouting in-interface=hotspot_users protocol=udp dst-port=5190
action=mark-routing new-routing-mark=mIRCchatudp
5 chain=prerouting in-interface=hotspot_users protocol=tcp
dst-port=6660-6669 action=mark-routing new-routing-mark=mIRCchat
6 chain=prerouting in-interface=hotspot_users protocol=tcp dst-port=6667
action=mark-routing new-routing-mark=MSNgamezonetcp1
7 chain=prerouting in-interface=hotspot_users protocol=udp dst-port=6667
action=mark-routing new-routing-mark=MSNgamezoneudp1
8 chain=prerouting in-interface=hotspot_users protocol=udp
dst-port=28800-29000 action=mark-routing
Flags: X - disabled, I - invalid, D - dynamic
ADDRESS NETWORK BROADCAST INTERFACE
0 ;;; hotspot network
10.5.50.1/24 10.5.50.0 10.5.50.255 hotspot_users
1 10.4.0.51/16 10.4.0.0 10.4.255.255 hotspot_users
2 192.168.1.252/24 192.168.1.0 192.168.1.255 ISP2
3 192.168.50.100/24 192.168.50.0 192.168.50.255 ISP1
interface
1 R ISP1 ether 0 0 1500
2 R ISP2 ether 0 0 1500
3 R hotspot_users wlan 0 0 1500
4 X wlan2 wlan 0 0 1500