суббота, 10 октября 2020 г.

Скрипт для проверки на ответ от DNS серверов на запрос об определённом домене с отсылкой в случае успешного результата в telegram

 Предположим мы только что прописали новый домен (предположим A запись) на каких-либо NS серверах и мы хотим проверять определённые dns серверы через определённый промежуток времени на ответ по нашему запросу на наш новый домен и если проверяемый dns сервер отдаст нам в результатах нами прописаный ip-адрес, который припаркован к нашему новому домену - нам прилетало бы уведомление в телеграм. Пишем на bash'е, если что понадобится dig, curl. Также понадобится (если ещё не заведён) завести себе бота в телеграме через @BotFather...

#!/bin/bash
# Created by Constantine in 2020
# $1 - domain for check
# $2 - dns server
# $3 - check ip address
# $4 - timeout between dns quireies in seconds
# here example for launch: ./checkdns.sh domain.tld 8.8.8.8 44.55.55.5 10
 
telegram_bot_id='krewpo2k3r5p253tewreqe3124234324235245345ds'
telegram_chat_id='34534534534'
telegram_message="Domain $1 has been found and now available by dns response from $2. Domain ip address is: $3"
 
 
while true; do
    if dig -t a $1 $2 | grep -q $3; then
        echo found
        curl -s -X POST https://api.telegram.org/bot$telegram_bot_id/sendMessage -d chat_id=$telegram_chat_id -d text="$telegram_message"
        exit 1
    else
        echo not found
    fi
    sleep $4
done

Пример запуска: ./checkdns.sh domain.tld 8.8.8.8 44.55.55.5 10

Теперь скрипт каждые 10 секунд будет делать запрос и в случае положительного результата нам прилетит в телегу:

Domain domain.tld has been found and now available by dns response from 8.8.8.8. Domain ip address is: 44.55.55.5

 

Комментариев нет:

Отправить комментарий