Перейти к содержимому

Генератор DNS-записей

Создавайте записи DNS-зоны для типов A, MX, TXT, CNAME и SRV.

@	3600	IN	A	1.2.3.4

Об этом инструменте

DNS-записи—это основные строительные блоки системы доменных имён (Domain Name System). Они указывают серверам, как маршрутизировать трафик к вашему домену и обрабатывать электронную почту, безопасность и другие услуги. Генератор DNS-записей упрощает процесс создания записей файлов зон для различных типов записей (A, MX, TXT, CNAME и SRV), которые иначе требовали бы ручного форматирования и тщательного внимания к синтаксису. При настройке нового домена, миграции хостинга или конфигурировании продвинутых сетей этот инструмент избавляет вас от необходимости запоминать правила синтаксиса DNS и снижает риск ошибок конфигурации.

Использование этого инструмента просто: выберите нужный вам тип DNS-записи (A для адресов IPv4, MX для почтовых серверов, TXT для текстовых записей вроде SPF или DKIM, CNAME для псевдонимов, или SRV для записей сервисов), заполните обязательные поля, такие как имя хоста, значение и TTL (время жизни), и инструмент сгенерирует правильно отформатированную запись файла зоны. Вы можете скопировать результат прямо в панель DNS вашего регистратора доменов или файл зоны у хостинг-провайдера. Типичные случаи использования включают переадресацию поддоменов, настройку доставки электронной почты, конфигурирование подписей DKIM для аутентификации электронной почты, создание записей обнаружения сервисов и направление доменов на разные IP-адреса.

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

Часто задаваемые вопросы

Реализация кода

# Generate DNS zone file records programmatically
from dataclasses import dataclass
from typing import Optional

@dataclass
class DnsRecord:
    name: str
    record_type: str
    value: str
    ttl: int = 3600
    priority: Optional[int] = None  # For MX records

    def to_zone_line(self) -> str:
        if self.priority is not None:
            return f"{self.name}\t{self.ttl}\tIN\t{self.record_type}\t{self.priority}\t{self.value}"
        return f"{self.name}\t{self.ttl}\tIN\t{self.record_type}\t{self.value}"

records = [
    DnsRecord("@",    "A",     "93.184.216.34"),
    DnsRecord("www",  "CNAME", "example.com."),
    DnsRecord("@",    "MX",    "mail.example.com.", priority=10),
    DnsRecord("@",    "TXT",   '"v=spf1 mx ~all"'),
    DnsRecord("mail", "A",     "93.184.216.35"),
]

print("$ORIGIN example.com.")
print("$TTL 3600")
for record in records:
    print(record.to_zone_line())

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.