Implement Network Monitor
We will eventually need some kind of network monitor in the client, to generate events when the network is down and when the network is back up.
This library should also allow us to troubleshoot the vpn gateway, trying different ports and pinging the host.
Here are some important libraries that can help:
- netifaces - python library that allows you to cross platform get the list of devices AND routing table. together this could allow us to detect when network should be routable or not. https://bitbucket.org/al45tair/netifaces/src https://pypi.python.org/pypi/netifaces
- some cross platform python ping code (just calls command line ping) https://code.google.com/p/skipole-monitor/
- DBUS using twisted - hopefully we don't have to use anything linux specific like this https://github.com/cocagne/txdbus
(from redmine: created on 2014-09-08, duplicates #5322 (closed), duplicates #1337 (closed), duplicates #2568 (closed))