From 64daf831af3d52e81464879ed8ac56dc76585fcd Mon Sep 17 00:00:00 2001 From: Marcin Rataj Date: Fri, 26 Jul 2019 22:45:57 +0200 Subject: [PATCH] docs(ADDRESSING): default DNSLink to ipfs:// DNSLink resides under `/ipns/` right now, but it is not related to IPNS in any way. We should support `ipns://{fqdn}` for completeness and backward compatibility, however it should be a redirect to `ipfs://{fqdn}`. Address bar should have `ipfs://{fqdn}`. This will solve two HUGE problems: - people being confused why its `ipns://` instead of `ipfs://` - removing the problem of cross-protocol boundary --- ADDRESSING.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ADDRESSING.md b/ADDRESSING.md index 827e2e9..7aed588 100644 --- a/ADDRESSING.md +++ b/ADDRESSING.md @@ -25,6 +25,7 @@ If no native protocol handler is available, redirect to a gateway: ```bash ipfs://{cid} → https://{gateway}/ipfs/{cid} ipns://{libp2p-key} → https://{gateway}/ipns/{libp2p-key} +ipfs://{fqdn-with-dnslink} → https://{gateway}/ipns/{fqdn-with-dnslink} ipns://{fqdn-with-dnslink} → https://{gateway}/ipns/{fqdn-with-dnslink} ``` @@ -37,8 +38,8 @@ ipfs://{cidv0} → redirect → ipfs://{cidv1base32} # CIDv0 is case-sensitive B ipns://{libp2p-key-in-cidv1base32} ipns://{libp2p-key-in-base58} → redirect → ipns://{libp2p-key-in-cidv1} # Base58, does not work as Origin authority -ipns://{fqdn-with-dnslink} -ipfs://{fqdn-with-dnslink} → redirect → ipns://{fqdn-with-dnslink} # just to improve UX :-) +ipfs://{fqdn-with-dnslink} +ipns://{fqdn-with-dnslink} → redirect → ipfs://{fqdn-with-dnslink} # just to improve UX :-) dweb:/ipfs/{root}/{resource} → redirect → ipfs://{root}/{resource} # ensures {root} is the authority component dweb:/ipns/{root}/{resource} → redirect → ipns://{root}/{resource} # ensures {root} is the authority component @@ -76,10 +77,12 @@ Read more: [notes on addressing with HTTP](#notes-on-addressing-with-http). In future, subdomain convention will be replaced with native handler that provides the same origin-based guarantees: ipfs://{cidv1b32}/path/to/resource + ipfs://{fqdn-with-dnslink}/path/to/resource Example: ipfs://bafybeiemxf5abjwjbikoz4mc3a3dla6ual3jsgpdr4cjr3oz3evfyavhwq/wiki/Vincent_van_Gogh.html + ipfs://tr.wikipedia-on-ipfs.org/wiki/Vincent_van_Gogh.html Read more: [notes on addressing with ipfs://](#notes-on-addressing-with-ipfs).