Skip to content

Add IPNS and DNSLink Support #113

@lidel

Description

@lidel

Problem

Gateway UIs (boxo/gateway, inbrowser.link, ipfs-desktop, kubo) already send users to ipfs-check with IPNS names and DNSLinks, but these fail silently.

Solution

Add support for IPNS names and DNSLinks to check.ipfs.network..

Implementation

At minimum, start with basic error handling similar to what happens when non-CID representation of PeerID is entered instead of a CID https://cid.ipfs.tech/#12D3KooWBhB8kdRzM5aMHXUBWoXcCxmnA9cmN2Bp2Tf1oTRnmwFt

Ideally, use existing IPNS and DNS resolvers already in ipfs-check codebase, attempt to resolve and use resolved final CID for final Check OR display meaningful error messages when resolution fails.

Acceptance Criteria

  • When non-CID value entered, attempt IPNS or DNSLink resolution
    • If not a valid DNS/IPNS ID, just return generic error it is not a valid CID
    • If valid DNS/IPNS ID, display resolution result at top of page: /ipns/id → /ipfs/cid with link to diagnostic tool (IPNS Record or DNSLink)
  • IPNS names:
    • Recursively resolve to final CID, OR
    • Show error: "record not found" or "validation failed"
    • Link to https://ipns.ipfs.network/ for diagnostics on error
  • DNSLinks:
    • Recursively resolve to final CID, OR
    • Show error: "TXT record not found" or "_dnslink subdomain does not exist"
    • Link to https://dnslink.dev/ for diagnostics on error

Metadata

Metadata

Assignees

Labels

P2Medium: Good to have, but can wait until someone steps up

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions