Единственное ли решение запускать bash скрипт через n количество времени, который пингует гугл и в зависимости от результата совершает действие?
если интернет это обязательное наличие гугла то стучимся в их dns
fping -r1 -q 8.8.8.8 && echo OK || echo NO
ну и закинуть это в планировщик
можно вместо гугла подобрать какой-то другой глобально доступный и более быстрый dns
$ fping -e -r 1 -a -q 1.1.1.1 8.8.8.8 77.88.8.8 208.67.220.220
1.1.1.1 (1.31 ms)
8.8.8.8 (14.3 ms)
208.67.220.220 (16.9 ms)
77.88.8.8 (51.5 ms)
которые соотвецтвуют
CloudflareDNS
GoogleDNS
OpenDNS
YandexDNS
при желании можно простучать сразу по нескольким ресурсам
fping -r1 -q 1.1.1.1 8.8.8.8 77.88.8.8 208.67.220.220 && echo OK || echo NO