These were the scripts for Telkom SA ADSL routing control.

You need to link to routeadjust.sh in a couple of places ...
	/etc/ppp/ip-up.d/routeadjust.sh
	/etc/ppp/ip-down.d/routeadjust.sh
	/etc/cron.d/routeadjust.sh  # just in case ... for dddns stuff

You need rp-pppoe.  Set up your 'standard' account in
/etc/ppp/pppoe.conf using adsl-setup, and set up subsequent
accounts named /etc/bandlimit-failover/account*.conf

Everything executable goes in /usr/local/bin (because I know
you've got space there:)


-----------------------------------------------------------------


SPLIT-ACCESS MACH 2

Outgoing traffic:
    If source address is known, then select address accordingly
    Choose destination type:
        LAN
        National
        International (default)
    For chosen destination, choose routing table

    *.conf : interfaces / addresses / links
        VALID=  destinations permitted for this interface
        INVALID=  destinations prohibited for this link (e.g. SMTP)
        e.g. VALID="za ispmail"
        e.g. INVALID="ispmail"

    *.dest : destinations
        ispmail.dest=196.25.1.11
        za.dest=south africa
        default.dest=(automatic)


rule add to 196.0.0.0/8 table $za
rule add to 165.0.0.0/8 table $za
rule add table 33

table za
    default via local-if1 nexthop local-if2

table 33
    default via intl-if1 nexthop intl-if2 nexthop intl-if3


CONNECTION TRACKING

shorewall says

    run_iptables -t mangle -A PREROUTING -m connmark ! --mark 0 -j CONNMARK --restore-mark
    run_iptables -t mangle -A OUTPUT     -m connmark ! --mark 0 -j CONNMARK --restore-mark
    run_iptables -t mangle -N routemark

    for interface in $ROUTEMARK_INTERFACES ; do

        iface=$(chain_base $interface)
        eval mark_value=\$${iface}_routemark

        run_iptables -t mangle -A PREROUTING -i $interface -m mark --mark 0 -j routemark
        run_iptables -t mangle -A routemark  -i $interface                  -j MARK --set-mark $mark_value

    done

    run_iptables -t mangle -A routemark -m mark ! --mark 0 -j CONNMARK --save-mark --mask 255


