Laptop Internet connection monitoring
I've started abusing SyncThing for this purpose (among others), configuring it as a system service on laptops, then locking down it's UI to prevent it from being able to be used by a local connection originator to manipulate or access files. I get connectivity monitoring and robust rsync-like backup of field data.

It's fantastic at punching through difficult network conditions, so once you peer a node with a central node (say, a backup landing pad itself backed up via more conventional means), you can use Syncthing's API on your landing pad node to track connectivity.

If you're looking for end-to-end IP connectivity, and not just "can the remote host reach the Internet at all" knowledge, you can disable NAT traversal and relay use, at which point there will need to be a clean, unfirewalled path between the two nodes.

The downside is that SyncThing is very much a rapidly-developed project, with the issues that carries with it.