Address Lists limits

Hello,

I’m facing the following challenge. Currently we have a router installed in a place where the internet connection is basically sold with 2 “quotas”, there’s basically a Local Traffic Quota (within the same country) and a International traffic Quota (everything else).

The restrictions are quite high for the intl traffic, as in, we purchased 1 Gbps circuit, but this circuit can only reach 60 Mbps when going outside the country (TX/RX).

We need a way to restrict international bandwidth usage, so everyone can make a fair use of it, the first issue I am facing with this is how to select the interesting traffic (in this case going to or being received from other countries). The idea I came with was to use a GeoIP DB (like: http://dev.maxmind.com/geoip/geoip2/geolite2/), parce the CSV using a python APP and generate an address-list that would then get exported to the router (I’d only add the records tied to this country). This would be done monthly, since this particular DB updates monthly (the free tier at least).

Although I haven’t fully tested this yet, I’d like to know first if this is something someone else has already tried. The Address List would potentially be over 30.000 records long, not to mention the fact that using it with firewall rules for marking packets and then queuing would for sure put a high stress in the router (we’re using CCR1036 for this, but they do other things as well).

I’m quite open to suggestions if this is not the proper approach to solve this issue.