Можем ли мы обновить CNAME по запросу?

Можем ли мы обновить CNAME по запросу?

Я хотел бы возвращать уникальный CNAME для каждого запроса и добавлять IP-адрес этого CNAME в файлы зоны. Возможно ли это?

решение1

В вашем вопросе не хватает подробностей. Зачем вы это делаете (почему именно CNAME?), кто делает запрос, почему вам нужно поместить результат в zonefile и т. д.

Поэтому ниже приведены лишь некоторые смутные идеи.

Если ваш вопрос касается генерации записей «на лету», то да, вы можете сделать это с помощью bind, а также других серверов имен, позволяющих вам выбрать «динамический» бэкэнд с помощью какого-либо языка программирования.

Видеть:

Конечно, вы также можете, опять же в зависимости от ваших потребностей, создать небольшой простой авторитетный сервер имен на любом языке программирования по вашему выбору, имеющий хорошую библиотеку абстракций DNS для обработки всех деталей (а их много) протокола DNS.

Другой дешевый способ сделать это: использовать подстановочные знаки. Но с осторожностью. Однако по своей сути подстановочные знаки позволяют вам немедленно получить все CNAME, которые вы хотите, в вашем файле зоны всего одной строкой. Но все зависит от того, кто запрашивает ваш сервер имен.

Помните, что ваш авторитетный сервер имен имеет в качестве клиентов рекурсивные серверы имен, а не конечных клиентов, поэтому он увидит только IP-адрес последнего рекурсивного сервера имен, использованного клиентом, а не IP-адрес клиента. У вас есть опция EDNS Client Subnet, которая, если поддерживается рекурсивным резолвером, даст вам указание на подсеть IP-адреса клиента, но никогда не полный адрес из соображений конфиденциальности.

В заключение взгляните на различные работы Джеффа Хьюстона. Он исследователь DNS в APNIC, который проводит множество исследований. Для их проведения он часто покупает рекламу, которая предоставляет уникальные ссылки для каждого клиента, разрешающие определенные имена. Посмотрите этот пример среди других:Подсчет IPv6 в DNS | Колонка ISP Это может дать вам свежие идеи.

(См. мой подробный ответ на ваш соответствующий вопрос:Как связать DNS-запросы с запросами к веб-серверу, на котором размещено это доменное имя? | Ошибка сервера)

Связанный контент