Client side of control network VPN: Multiple networks
We need this so that remote wireless-uplinked aggregates will prefer a quality wifi control net connection (when available/stable) over an expensive backup (LTE) connection; LTE should be a fallback/failover path only. Moreover, each aggregate will communicate with other aggregates over a VPN back to a concentrator -- so the VPN will need to reconnect immediately once the default path is adjusted underneath it. There are many ways to do this, but nothing really standard. It is likely we'll modify some code to make this lashup work as we wish.
Major subtask areas (these are abstract, we're not going to work on this immediately):
- Figure out how to tell OpenVPN when to reconnect, and to control its reconnect attempts (we can get a long way through the available config bits; or we can write a management client to talk to the openvpn process)
Maintain control over
wpa_supplicant-- we don't want it to stick with a crappy AP for too long if there's a better one, for instance. Again, we can write a client to deal with it. This is probably only necessary at the "optimize" stage.
- Find/develop some kind of path prober that can tell us when to change the uplink and kick openvpn. We will almost certainly modify what we find, if anything; and there's a good chance we'll write our own thing.