Resolución Inmutable con DNSLink¶
Identificador Técnico: [TECH-003]
Fundamento¶
El direccionamiento directo por CID (ejemplo: /ipfs/bafy...) es inmutable; cualquier cambio en un paquete genera un nuevo CID raíz. Por su parte, el Sistema de Nombres Interplanetario tradicional (IPNS) basado en DHT experimenta una latencia de resolución prohibitiva para las consultas rápidas de metadatos de DNF.
Para solventar esta limitación, el proyecto utiliza DNSLink. DNSLink asocia un registro TXT en el sistema de nombres de dominio convencional con el CID raíz activo de IPFS.
Topología de Registros DNS¶
En los servidores de nombres autoritativos para el dominio mx-os.mx, se definen los siguientes registros:
; Registro raíz del portal de espejos
_dnslink.mirrors.mx-os.mx. 300 IN TXT "dnslink=/ipfs/bafyrei..."
; Registros complementarios para pasarelas públicas
_dnslink.ipfs.mx-os.mx. 300 IN TXT "dnslink=/ipfs/bafyrei..."
_dnslink.gateway.mx-os.mx. 300 IN TXT "dnslink=/ipfs/bafyrei..."
; Subdominios dedicados opcionales para granularidad independiente
_dnslink.fedora.mirrors.mx-os.mx. 300 IN TXT "dnslink=/ipfs/bafyfed..."
_dnslink.centos.mirrors.mx-os.mx. 300 IN TXT "dnslink=/ipfs/bafycen..."
Mecánica de Resolución en Kubo¶
Un cliente solicita un recurso bajo la ruta
/ipns/mirrors.mx-os.mx/fedora/isoo accede directamente ahttps://ipfs.mx-os.mx/.Kubo extrae el nombre de dominio y consulta el registro TXT de
_dnslink.mirrors.mx-os.mx(o_dnslink.ipfs.mx-os.mx). Por defecto, Kubo utiliza los resolutores del sistema operativo (que a su vez dependen de servidores DNS locales o de enrutadores LAN con cachés independientes).Para eliminar el desfase de caché y garantizar resolución inmediata tras cada publicación, se configura un resolvedor DNS sobre HTTPS (DoH) directo en la configuración de Kubo para el dominio
mx-os.mx. Es indispensable incluir el punto final (FQDN estricto):ipfs config --json DNS.Resolvers '{"mx-os.mx.": "https://cloudflare-dns.com/dns-query", ".": "auto"}'
El registro TXT devuelve el prefijo canónico
dnslink=/ipfs/<CID_RAÍZ>.Kubo reemplaza internamente la ruta por
/ipfs/<CID_RAÍZ>/fedora/isoy procede a recuperar los bloques vía Bitswap o desde la memoria local.El tiempo de vida (TTL) del registro se fija en 300 segundos (5 minutos) en la zona autoritativa gestionada mediante el script de automatización
nodo/bin/mxos-dnslink-update.bash.
Soberanía Dual: DNSLink e Identidad Criptográfica IPNS¶
Para preservar la resiliencia en escenarios de fallas de DNS, censura o entornos desconectados de internet, el catálogo mantiene dos mecanismos equivalentes de direccionamiento:
Resolución nominal con DNSLink: Ruta amigable
/ipns/mirrors.mx-os.mxrespaldada por el registro TXT en Cloudflare.Resolución criptográfica autónoma con IPNS: Ruta inmutable e independiente de DNS bajo
/ipns/k51qzi5uqu5di6ed3qtnwrdlvpmfil07ib6qfzb1t259nux49jenn8my4dtg0v, firmada con la llave Ed25519 de Fundación MxOS y publicada periódicamente en la DHT de libp2p.