Доменное имя покупают не навсегда. Его регистрируют на срок, чаще всего на год, и оно работает, только пока регистрация оплачена. Когда срок заканчивается и никто его не продлил, домен перестаёт разрешаться. Сайт отключается, а вместе с ним все адреса электронной почты на этом домене.
В этом руководстве показано, как найти дату окончания регистрации домена, как её прочитать и как сделать так, чтобы продление не прошло мимо вас.
Почему эта дата важна
Пропущенное продление — один из самых тихих способов потерять сайт. Сервер исправен, сертификат действителен, код не менялся, а до сайта всё равно никто не может добраться: имя больше никуда не указывает.
От этой даты зависит и многое другое. Выпуск сертификата, который подтверждает контроль над доменом, может не сработать, когда домен просрочен. Перестаёт приходить почта. Не работают обратные вызовы от платёжных сервисов и сервисов входа на ваш домен. О том, что происходит в первые дни после окончания срока, рассказывает материал Что происходит, когда домен истекает.
Три места, где можно найти дату
| Источник | Что вы получите | Для чего подходит |
|---|---|---|
| Аккаунт у регистратора | Дату, когда регистратор выставит счёт или когда срок закончится, и настройки продления | Домены, которыми вы владеете |
| RDAP | Структурированный ответ реестра, который могут читать программы | Любой публичный домен, скрипты, мониторинг |
| WHOIS | Текстовый ответ, рассчитанный на людей | Любой публичный домен, быстрый взгляд |
Начните с регистратора. Только там видно, включено ли автопродление и какой способ оплаты будет использован. Публичные запросы пригодятся, когда домен принадлежит не вам, когда у вас много доменов или когда нужна проверка, не зависящая от вашего аккаунта.
Проверка через RDAP
RDAP — это Registration Data Access Protocol, протокол доступа к регистрационным данным. Его создали на замену WHOIS. На странице ICANN об RDAP сказано, что с 28 января 2025 года реестры и регистраторы родовых доменов верхнего уровня больше не обязаны предоставлять WHOIS, за небольшим числом исключений, так что учить стоит именно RDAP.
Ответ RDAP — это JSON, отправленный по HTTPS. Даты перечислены в списке events. У каждого события есть eventAction и eventDate. Действие expiration отмечает дату, когда регистрация должна закончиться, а registration — когда домен был зарегистрирован впервые (RFC 9083).
Можно обратиться к публичному сервису, который перенаправит вас на нужный сервер реестра:
curl -sL -H "Accept: application/rdap+json" https://rdap.org/domain/example.com
Чтобы вывести только событие окончания срока, при установленной утилите jq:
curl -sL -H "Accept: application/rdap+json" https://rdap.org/domain/example.com \
| jq '.events[] | select(.eventAction == "expiration")'
В запросе всегда указывается зарегистрированное доменное имя, например example.com, а не www.example.com. Для имени вроде example.co.uk зарегистрированный домен — это example.co.uk целиком.
Что можно ожидать от RDAP:
- Ответ
404значит, что по этому имени ничего не найдено. - Ответ
429значит, что вы спрашиваете слишком часто. Подождите и учтите заголовокRetry-After, если он есть (RFC 7480). - В списке
eventsможет вообще не быть записиexpiration. Об этом в разделе через один.
Проверка через WHOIS
WHOIS старше. Он отвечает обычным текстом по простому соединению с портом 43 (RFC 3912):
whois example.com
Найдите строку, где говорится об окончании срока. У многих родовых доменов она выглядит как «Registry Expiry Date», но название отличается от реестра к реестру, а формат рассчитан на людей, а не на программы. У протокола нет стандартных полей, поэтому скрипт, который разбирает вывод одного реестра, может не справиться с выводом другого.
Почему даты может не быть или она может удивить
- Реестр её не публикует. Некоторые реестры национальных доменов не включают дату окончания в публичные ответы. Тогда в RDAP нет события
expiration. Инструмент не может придумать дату, которую реестр не сообщает. - Запрос отклонили. Бывают ограничения по частоте запросов и временные ошибки реестра. Это ничего не говорит о самом домене.
- Реестр и регистратор расходятся. Иногда дата «оплачено до» у регистратора отличается от даты в реестре. Считайте крайним сроком более раннюю.
- Вы запросили не то имя. У поддомена нет собственной регистрации. Она есть у зарегистрированного домена, под которым он находится.
- Это другой срок. У регистрации домена, тарифа хостинга и сертификата свои даты окончания. Продление одного не продлевает остальные.
Как не пропустить продление
- Включите автопродление у регистратора и проверьте, что срок действия привязанной карты не истёк.
- Укажите для связи с регистратором почтовый ящик, который читают. Напоминания о продлении, уходящие бывшему сотруднику, — классическая причина потери доменов. Политика ICANN для родовых доменов требует, чтобы регистраторы отправляли не меньше двух напоминаний до окончания срока, примерно за месяц и за неделю, но напоминание работает, только если его кто-то прочитает.
- Регистрируйте на несколько лет, если домен важен, а цена приемлема.
- Ведите список всех доменов, за которые вы отвечаете, с указанием регистратора и даты окончания.
- Добавьте независимое предупреждение. Монитор, который сам проверяет дату и предупреждает вас, не зависит от того, дойдут ли письма регистратора.
Следите за датой с помощью UptimeWire
Для каждого добавленного сайта UptimeWire берёт домен из адреса сайта и раз в сутки запрашивает у реестра дату окончания через RDAP. Вы выбираете, за сколько дней вас предупреждать, отдельно для каждого сайта. По умолчанию — за 30 дней.
Когда дата попадает в этот период, UptimeWire отправляет одно предупреждение по почте и в Telegram. Он не повторяет его каждый день и не отправляет в каналы вебхуков и чатов. Предупреждение о домене — не инцидент: оно его не создаёт.
Note
Если реестр не публикует дату окончания, проверка показывает домен как неизвестный и не отправляет предупреждение. Для такого домена поставьте собственное напоминание.
UptimeWire не продлевает домен и не может гарантировать, что дата будет известна для каждого домена. Он сообщает, что дата близко, а само продление остаётся за вами.
Чек-лист
- Посмотрите дату окончания каждого домена в аккаунте у регистратора.
- Убедитесь, что автопродление включено, а способ оплаты действителен.
- Проверьте, что письма-напоминания приходят на ящик, который читают.
- Сверьте дату с запросом RDAP.
- Там, где дата не публикуется, поставьте напоминание в календаре.
- Добавьте предупреждение, которое не зависит от регистратора.