Linux upload bonding using teql

From AAISP Support Site
Revision as of 15:51, 3 April 2017 by Tony Hoyle (talk | contribs)

This is a simpler method of upload bonding than others, where you just want to round robin packets to the upstream, which is the normal case for AAISP.

In /etc/ppp/ip-up.d place the following script:

#!/bin/sh
sysctl -w net.ipv4.conf.ppp0.rp_filter=2
sysctl -w net.ipv4.conf.ppp1.rp_filter=2
tc qdisc add dev ppp0 root teql0
tc qdisc add dev ppp1 root teql0
ip link set teql0 up
ip route replace default scope global dev teql0
ip -6 route replace default scope global dev teql0

You may wish to add ppp3, etc. as pppd sometimes allocates a different number overriding the unit directive. There's no harm in having too many.

The sysctl is so that the system doesn't get upset at packets going out of one interface and coming in another. I'm not certain this is required, but all examples seem to have it.

The teql device does not need an IP address, as it's virtual. It seems to behave in a sane way wrt. originating IP in all cases I've tried.