Hi again!
Next step is to incorporate a Queuing system in addition to the routing marks. I'm running into some trouble with overlapping marks, and could use some wizdom...
Just a reminder, my setup has a single LAN area for my home network, and two outgoing interfaces set up to two different ISPs. The idea so far has been to split certain types of traffic by origin / destination / ports to each of the two interfaces (downloads go over the uncapped line, http and gaming goes over the fast capped line)
1. I'm currently marking each connection coming in over an interface with that interface's connection mark, and have some rules to mark outgoing connections for either interface, as described.
2. I then use a routing-mark based on the connection mark for use in the routing table.
3. All of this happens in prerouting mangle, and it's working 100%
Now I want to add packet marks in order to split traffic by type into the queueing system, but most examples also suggest using connection marks in these rules, and then marking the packets based on the connection marks before it goes to the queue.
This also has to happen in prerouting.
Obviously, I have a conflict here. Each connection can only carry a single connection mark.
So I've rewritten the rules to skip the routing connection marks, and going straight to the routing marks. The idea is that once a connection is established over an interface with its own public IP address, all further packets will follow that same path? But I'm missing something, and it's not working.
The subsequent plan was to use connection marks and packet marks for my queue system after that.
Any advice? Any idea where I'm going wrong? Is it possible to do away with connection marks and still route over my two interfaces? Or should I resign myself to having to traverse a whole list of 20 packet marking rules for the queue each time for EACH packet?
A bit stumped...