开发者

Using DNS as a URN resolver

I'm looking to either find or build a URN (Universal Resource Name) resolver, which would return 0 or more URIs for a given URN.

For example: urn:fooid:6e8bc430-9c3a-11d9-9669-0800200c9a66:foo might resolve to http://www.example.com/fooservice/6e8bc430-9c3a-11d9-9669-0800200c9a66/foo. The service would be aware of fooid-style URNs and know how to look-up the开发者_StackOverflow base-URL (http://www.example.com/fooservice/) from the GUID and convert the colons to slashes to make a complete URI.

I've searched for "URN resolvers" but there's not much out there. Then it occurred to me that--since DNS is all about quickly resolving addresses in a scalable and distributed fashion, and since it has been used for other applications (see here)--maybe it could be used to do the base-URL lookup part.

Has this been done before, and would it be a practical alternative to just using a conventional database?


To do this in DNS you would need to use NAPTR records as part of a Dynamic Delegation Discovery System Application, as defined in RFC 3401, RFC 3402 and RFC 3403.

For URN resolution in particular, also see RFC 3404 and RFC 3405 which builds on the previous three to provide a standard way to map URNs to something else.

Ideally if this was a global general-purpose URN you would request a delegation of fooid within the urn.arpa. domain space.

Take a look at IANA's website to see the existing registered URN namespaces.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜