TO INSTALL:
npm install -g vpnmon
vpnmon
This will monitor a VPN connection. If the connection is lost it will attempt to reconnect.
usage: vpnmon [--name=<CONNECTION_NAME>] [--secret=<SHARED_SECRET>] [--config=<CONFIG_FILE> ]
example configuration
{ "name": "superVPN", "secret": "supersecret", "connectionTimeout": 15, "waitTimeout": 5, "postConnect": "killall -TERM dnsmasq; /usr/local/sbin/dnsmasq" }
name = the name of the VPN connection (as seen in network settings) secret = the L2TP/IPSEC secret connectionTimeout = number of seconds to wait for the connection to be established waitTimeout = number of seconds to wait before checking the vpn connection status postConnect = a command to execute after the VPN is established