Личный опыт: Как мы автоматизировали работу с DNS-записями в хостинг-панели

Сегодня речь пойдет о том, зачем мы разработали новую услугу — бесплатный сервис DNS-хостинга.

Базовая схема взаимодействия с системой выглядит так:

scheme

Также мы поработали над упрощением взаимодействия пользователя с интерфейсом. В итоге для создания зон, нужно лишь вбить домен и IP-адрес в простую форму, после чего автоматически будет создана зона с записями SOA, NS (на серверы ns01.1cloud.ru и ns02.1cloud.ru) и A.

Этот механизм был удобен при создании новых DNS-записей, но не очень подходил для переноса старых. Поэтому мы разработали специальный сервис для их миграции. Работает он так: система асинхронно опрашивает публичные DNS-серверы на наличие в них записей по указанному домену. Все найденные записи переносятся в нашу панель. Конечно, при такой схеме какие-то записи система может и не найти или, если запись недавно изменили, «поймать» ее старую версию из кэша. Однако на практике такие случаи возникают редко.

По статистике, более половины пользователей применяют именно механизм автоматической миграции DNS-записей вместо обычного создания с нуля — хотя эта функциональность по-прежнему доступна.

Управление записями может осуществляться и с помощью нашего API-интерфейса. Как правило этой возможностью пользуются крупные клиенты, которым необходимо организовать shared-хостинг на базе нашего частного облако.

Планы

С самого начала работы над проектом DNS- хостинга мы решили, что должны разработать комплексное решение, которое при этом будет бесплатным для пользователей. Главным здесь было добиться максимального удобства — наш анализ показал, что эту услугу выгоднее сделать полностью бесплатной, чтобы облегчить пользователям работу с панелью управления хостингом. В итоге чтобы воспользоваться сервисом DNS-хостинга даже не обязательно подключать другие платные услуги.

Однако, тот факт, что пользователи получают услугу бесплатно, не значит, что ее можно делать кое-как — мы используем оборудование ведущих вендоров и постоянно развиваем сервис. Вот лишь некоторые из последних доработок и планируемые улучшения:

  • В рамках сервиса миграции записей мы добавили индикацию делегирования домена на наши DNS (делегирован/не делегирован). Это позволит разрешить добавление PTR-записей через нашу панель или API — сейчас их нужно добавлять только через обращение в службу поддержки, чтобы ее специалисты могли проверить права на делегирование.
  • Также мы планируем и дальше развивать сеть собственных кэширующих DNS-серверов.
  • Кроме того, планируется отображение статистики по обращениям к доменной зоне.