Я бы задачу разбил на два этапа - сначала собираете find`ом все пути к файлам, потом натравливаете на получившийся список архиватор. И зачем -regex, который наверняка даёт оверхед, если можно просто искать по маске?
Во-первых, хорошо было бы решить, по какому интерфейсу будет ехать трафик к шлюзу. Затем - обдумать, не получится ли, что ответ на пакет через один интерфейс уедет через второй - во многих дистрибутивах подобное поведение по умолчанию не обрабатывается.
1. Выгрепываете из вывода dig`а айпишники, пишете их в файл (не обязательно, можно просто в массив сохранить).
2. В цикле для каждого айпишника резолвите PTR-запись, записывая поочерёдно сначала айпишник, потом имя в файл.
Конфиг ротейта-то покажите. По описанию похоже, что файл не пересоздаётся, а переименовывается "на лету", при этом файловый дескриптор остаётся старым, поэтому сервис и продолжает писать в него.
В Гитлабе есть секреты, куда, помимо прочего, можно положить и SSH-ключи.
Но вообще, раз у вас на хостах уже запущены раннеры - значит, доступ уже есть и достаточно добавить пользователю gitlab-runner нужные права, например, через sudo.
Ну, так напишите простецкий скрипт, который бы складывал в какой-нибудь файл состояние и периодически сравнивал его содержимое с результатами пинга. Условно, если в файле 0, а пинг идёт - сообщать. Если в файле 1, а пинг не идёт - тоже.
Если у вас всё это в рамках единой инфраструктуры - то непонятно, зачем столько DNS-серверов. Современные роутеры вполне умеют либо форвардить запросы, либо и вовсе становиться slave-серверами. А раз источник один - не будет и никаких проблем вида "тут резолвится, тут не резолвится".