Подбор доменов
Содержание
Утилита /tools/podbor-domena (идентификатор domainfinder): по ключевым словам составляет варианты доменных имён и проверяет, свободны ли они. Особое внимание зонам .ru, .рф, .su, .com, .net, .org; в «ещё зонах» — io, co, info, biz, me, pro, online, site, store, shop, tech, app, dev, club, xyz, top, moscow, ru.com.
Как составляются варианты
Domains\Generator: слово как есть, слитно и через дефис (для фраз), приставки (my, get, мой, лучший…), окончания (shop, hub, центр, онлайн…), сочетания двух слов в обе стороны, город до и после слова. Русское слово для .com/.net/.org автоматически превращается в латиницу (транслит), для .рф берутся только русские варианты. Каждое имя проверяется по правилам зоны (Domains\Name): алфавит, смесь алфавитов, дефисы, длина до 63 знаков в punycode, минимальная длина (в .рф — 2 знака).
Оценка 1–100: длина, читаемость (доля гласных, длинные цепочки согласных), дефис и цифры, точное вхождение слова, «вес» зоны (.ru и .com выше, .su и редкие зоны ниже). Предел — 300 имён и 900 доменов за один подбор.
Как проверяется занятость
Domains\Checker идёт по цепочке источников, порядок задаётся отдельно для трёх групп зон (.ru/.su, .рф, остальные):
- DNS — если у домена есть NS-записи, он точно занят. Отсутствие записей ничего не доказывает.
- RDAP — официальный протокол реестров. Адрес сервера зоны берётся из списка IANA (
data.iana.org/rdap/dns.json, кэш на неделю), при недоступности — встроенная таблица. 200 — зарегистрирован (из ответа берутся даты и регистратор), 404 — записи нет. - WHOIS (порт 43) — серверы только из таблицы зон, адрес проверяется на публичность. Разбираются ответы Verisign, ТЦИ (
.ru/.su/.рф), PIR и других. - who.is — страница сайта как запасной источник без ключа для зон кроме
.ru/.su/.рф; уверенность помечается как низкая. - reg.ru (
domain/checkAPI v2) и GoDaddy (domains/available) — регистраторы, нужны ключи (админка → «Домены»). Их «свободен» окончательный: учитывает резерв и премиум-имена. Если регистратор подключён и стоит дальше в цепочке, «свободен» от реестра подтверждается им (настройка).
Результаты кэшируются в dm_cache на всех посетителей: занят — 24 часа, свободен — 10 минут, не определено — 1 минута. Для каждого источника действует общий лимит запросов в минуту; при ответе 429/403 или защитной странице источник отключается на время паузы (по умолчанию 180 с), а домены переходят к следующему источнику. Страница сама повторяет «не определено» до двух раз.
Что важно знать
- RDAP/WHOIS-«свободен» означает «записи в реестре нет». Зарезервированное, премиальное или заблокированное имя регистратор всё равно может не отдать — окончательно это видно при регистрации.
- reg.ru требует логин и пароль для API и добавления IP сервера в список разрешённых; без них
.рфпроверяется через RDAP/WHOIS реестра. - Сервис не заваливает реестры: пачки до 25 доменов, общие лимиты на источник, лимиты по посетителю (гость 300 проверок в час, вошедший 1500).
- Ссылки на регистрацию (reg.ru, Namecheap) открывают страницы регистраторов; сервис ничего не регистрирует и не берёт комиссий.
Избранное и слежение
Вошедший пользователь отмечает домены звёздочкой (до 200) и включает слежение для занятых (до 30). bin/domainwatch.php (cron раз в два часа) перепроверяет их не чаще раза в 6 часов; когда домен освободился, создаётся событие и уходит уведомление (один раз, до следующей регистрации). Скрипт же чистит кэш старше двух суток.
Администрирование
/admin/domains: состояние каждого источника (счётчики, пауза, последняя ошибка), порядок источников по группам зон, время жизни кэша, размер пачки, лимиты, ключи reg.ru и GoDaddy (шифруются), кнопки «Проверить источники» (пять тестовых доменов через каждый источник), «Снять паузы», «Очистить кэш».
Данные и интерфейс
Таблицы dm_cache, dm_fav, dm_hist (модуль миграций domains). JSON-интерфейс страницы — POST /tools/domains/api (a = gen, parse, check, fav; CSRF обязателен). Без JavaScript форма показывает только список вариантов с оценкой (проверка занятости требует JavaScript).