Использование DNS в качестве преобразователя URN

Я ищу либо найти или создать URN (Universal Resource Name) resolver, который вернет 0 или более URI для данного URN.

Например: urn:fooid:6e8bc430-9c3a-11d9-9669-0800200c9a66:foo может разрешить http://www.example.com/fooservice/6e8bc430-9c3a-11d9-9669-0800200c9a66/foo. Служба будет знать о fooid -style URNs и знать, как искать базовый URL-адрес (http://www.example.com/fooservice/) из GUID и конвертировать двоеточия в косые черты, чтобы сделать полный URI.

Я искал "URN resolvers", но там не так много. Затем мне пришло в голову, что поскольку DNS все время быстро разрешает адреса масштабируемым и распределенным образом, и поскольку он используется для других приложений (см. Здесь) - возможно, он может быть использован для создания поисковой части базового URL-адреса.

Было ли это сделано раньше, и будет ли это практической альтернативой просто использованию обычной базы данных?

+5
источник поделиться
1 ответ

Для этого в DNS вам нужно будет использовать записи NAPTR как часть приложения системы динамического обнаружения делегаций, как определено в RFC 3401, RFC 3402 и RFC 3403.

Для разрешения URN, в частности, см. RFC 3404 и RFC 3405, который основывается на предыдущих трех, чтобы обеспечить стандартный способ сопоставления URN с чем-то другим.

В идеале, если это глобальный универсальный URN, вы запросите делегацию fooid в доменном пространстве urn.arpa..

Посмотрите веб-сайт IANA, чтобы увидеть существующие зарегистрированные пространства имен URN.

+5
источник

Посмотрите другие вопросы по меткам или Задайте вопрос