Repolode
miekg

miekg/dns

Biblioteca de Go para crear clientes y servidores DNS, compatible con todos los tipos de registros de recursos, incluidos los de DNSSEC.

Estrellas
8,804
Forks
1,220
Issues abiertos
3
Último commit
hace 4 días

¿Qué es?

miekg/dns es una biblioteca DNS escrita en Go para quienes necesitan trabajar con DNS a nivel de protocolo. Admite todos los tipos de registros de recursos, incluidos los de DNSSEC, y permite crear tanto servidores como resolvers. Su API es intencionalmente pequeña: ofrece los componentes básicos, en lugar de muchas funciones de conveniencia.

La biblioteca cubre consultas UDP y TCP sobre IPv4 e IPv6, análisis de archivos de zona y programación de servidores basada en el paquete net/http. En cuanto a seguridad, permite firmar y validar DNSSEC, y generar claves para DSA, RSA, ECDSA y Ed25519; también es compatible con TSIG, SIG(0) y DNS over TLS. Además, implementa transferencias de zona AXFR/IXFR y opciones EDNS0 como NSID, Cookies y Client Subnet.

El proyecto señala que su sucesor, DNS version 2, está alojado en Codeberg y que este repositorio solo recibirá correcciones específicas antes de archivarse.

Funciones clave

  • 01Admite todos los tipos de registros de recursos DNS, incluidos los de DNSSEC
  • 02Permite crear servidores DNS y resolvers del lado del cliente
  • 03Firma y valida DNSSEC, y genera claves para varios algoritmos
  • 04Analiza archivos de zona con $INCLUDE, $ORIGIN, $TTL y $GENERATE
  • 05Admite transferencias de zona AXFR/IXFR y autenticación TSIG/SIG(0)
  • 06Admite DNS over TLS y opciones EDNS0 como NSID y Cookies

Casos de uso

  • Escribir un servidor DNS autoritativo personalizado en Go
  • Crear un resolver o forwarder DNS con control detallado sobre las consultas
  • Implementar la firma o validación DNSSEC en una aplicación Go
  • Crear herramientas de diagnóstico que envíen consultas DNS sin procesar e inspeccionen las respuestas

Inicio rápido

  1. 1

    Instala la biblioteca con la herramienta Go

    go get github.com/miekg/dns
  2. 2

    Lee la descripción general de la API al principio de doc.go o ejecuta godoc para el paquete

Antes de usarlo

  • El desarrollo se ha trasladado a DNS version 2 en codeberg.org/miekg/dns, y este repositorio solo recibe correcciones específicas.
  • Este repositorio se archivará en algún momento.

Temas

#dns#go#dnssec#dns-library#networking#protocol

Preguntas frecuentes

¿Qué es dns?
Biblioteca de Go para crear clientes y servidores DNS, compatible con todos los tipos de registros de recursos, incluidos los de DNSSEC. miekg/dns es una biblioteca DNS escrita en Go para quienes necesitan trabajar con DNS a nivel de protocolo. Admite todos los tipos de registros de recursos, incluidos los de DNSSEC, y permite crear tanto servidores como resolvers. Su API es intencionalmente pequeña: ofrece los componentes básicos, en lugar de muchas funciones de conveniencia.
¿dns es gratuito? ¿Qué licencia tiene?
dns es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿dns sigue mantenido?
Mantenimiento activo. El último commit de dns fue el 3 nov 2026.
¿Para qué puedo usar dns?
Escribir un servidor DNS autoritativo personalizado en Go Crear un resolver o forwarder DNS con control detallado sobre las consultas Implementar la firma o validación DNSSEC en una aplicación Go Crear herramientas de diagnóstico que envíen consultas DNS sin procesar e inspeccionen las respuestas
¿Cómo se instala dns?
Instala la biblioteca con la herramienta Go: go get github.com/miekg/dns Lee la descripción general de la API al principio de doc.go o ejecuta godoc para el paquete
¿Dónde consigo dns?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/miekg/dns

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados