Немилосердный date gos reg html. Мониторинг даты продления доменного имени. Снятие делегирования домена за неоплату

Мониторинг даты продления доменного имени — действие, которое нельзя недооценить. Я уже писал о том, и теперь давайте разберемся с другой частой проблемой — неожиданным окончанием срока регистрации доменного имени. Казалось бы, все регистраторы на сегодняшний день заранее об этом напоминают (причем обычно несколько раз). Но проблема в том, что эти письма либо не читают, либо они как-то попадают в спам. В общем, не все в курсе, что у них заканчивается срок регистрации доменного имени. В результате сайт не работает, люди не понимают, почему, и тратят иногда много времени, чтобы понять, что происходит. Тем временем доменное имя пропадает из кэша DNS, и через пару дней (или даже раньше, зависит от разных факторов) посетители перестают попадать на сайт. Давайте посмотрим, как мониторить дату окончания регистрации доменного имени. Естественно, скриптом на bash.

Как получить дату регистрации доменного имени

Самый простой вариант — использовать глобальную базу данных whois. В ней хранится информация о доменных именах, такая как организация, ответственное лицо, контакты для связи, дата регистрации и дата окончания срока регистрации. И это как раз то, что нам нужно. Давайте возьмем какой-нибудь популярный домен для примера. Пусть это будет yandex.ru. Вот какая информация хранится в базе whois об этом домене:

$ whois yandex.ru % By submitting a query to RIPN"s Whois Service % you agree to abide by the following terms of use: % http://www.ripn.net/about/servpol.html#3.2 (in Russian) % http://www.ripn.net/about/en/servpol.html#3.2 (in English). domain: YANDEX.RU nserver: ns1.yandex.ru. 213.180.193.1, 2a02:6b8::1 nserver: ns2.yandex.ru. 93.158.134.1, 2a02:6b8:0:1::1 state: REGISTERED, DELEGATED, VERIFIED org: YANDEX, LLC. registrar: RU-CENTER-RU admin-contact: https://www.nic.ru/whois created: 1997.09.23 paid-till: 2017.10.01 free-date: 2017.11.01 source: TCI Last updated on 2017.01.03 05:46:31 MSK

Поле, которое нас интересует — «paid-till», это дата, до которой у нас оплачен домен.

Мониторинг даты продления доменного имени сделаем примерно так же, как и мониторинг сертификата, но заметно проще. Получаем данные о домене, ищем поле, содержащее дату окончания регистрации, если оно присутствует (если данные whois для этого домена не закрыты), получаем эту дату, получает сегодняшнюю дату и выводим разницу в днях. При желании можно добавить отправку письма, если осталось, скажем, меньше 30 дней до окончания регистрации. Но не всё так просто. Потому что есть как минимум три вида записей об окончании срока регистрации. Первый выглядит так:

Paid-till: 2017.10.01

Второй выглядит так:

Registrar Registration Expiration Date: 2020-09-13T21:00:00-0700

И третий выглядит так:

Registry Expiry Date: 2018-05-11T04:00:00Z

И нам, соответственно, надо предусмотреть все три варианта. Или, если встретится четвертый, то и четвертый. Пока давайте разберемся с этими тремя.

Вот как выглядит скрипт:

#!/bin/bash # Если параметр не указан, выводим подсказку и завершаем работу if [ "$1" == "" ] then cat less/reg/?mode=auth">Войти

  • Дополнительно