Annotating DNS with personal information

I’ve always had a fondness for solutions that scribble in the margins of the Domain Name System. Today I saw a new one at the DEMO conference: Telnic, a service you can use to store basic personal or business information directly in the DNS. The service is associated with the .tel top-level domain. If you visit, say, henri.tel, which belongs to Henri Asseily, Telnic’s chief strategist, you’ll see a web page, but it’s rendered by a proxy that pulls the information from DNS records.

As Henri notes on his blog, which is one of the links advertised in henri.tel, the system at its core is a way to store key-value pairs in the DNS. Users control this data by way of a web-based management console. Developers of .tel-aware applications can use DNS directly, or can use access libraries provided by Telnic. An application might, for example, locate people by way of the LOC (location) record in their .tel domains.

You could, of course, use a web-based convention — like foaf.xml — to accomplish the same thing. People mostly don’t, though. Would a system bound more closely to DNS identity seem more natural and be more appealing? Maybe.

4 Comments

  1. This is the way MDNS service discovery works (what Appled calls Bonjour and used to call Rendezvous). It works pretty well for certain situations. DNS is still vulnerable to some security issues, but at least there is going to be a lot of interest in solving or working around any problems in DNS.

  2. Hello Jon,
    if I may, let me first add a few precisions:
    You don’t need to manage your data by a web-based console. Most people will probably do it that way through their registrar or service provider’s portal, but it can be done in other ways: through a SOAP API that’s required to be standard for any provider, or even if you’re technically enclined, directly by modifying the DNS zonefile.

    Web-based conventions can provide the same data structures as .tel, of course. (and making converters to-and-from .tel zonefiles would be trivial). Defining data structures to hold contact info is nothing new. But what web-based conventions can’t do is make it very easy to discover and/or use this data. Let’s say I have a foaf.xml document somewhere at xxx.com/aaa/me.xml. How (1) do I tell people that it’s there, (2) know that it adheres to foaf and (3) make it accessible and parseable quickly by a gprs phone?

    I need to publish that info somewhere, and if it doesn’t replace directly my other channels of communications, I need to also publish those as well. What we want to do is literally supersede every comm channel with the .tel. No more phone numbers, no more emails. Just a .tel where you make one DNS query and get what you need.

    Why make a DNS query to get the ip of the server hosting the foaf doc, then make an html query to get the foaf doc, then parse the potentially overcomplicated xml file when you can stop in the first step of making a DNS query and instantly having what you need?
    I’d like to see in the future the ability to type “johndoe” or “hertz” on my phone dialpad and press the call button. That’s much easier to remember than a string of numbers. Let the phone make a dns query to hertz.tel, and propose the few numbers there for me to choose from.

  3. Thanks for the clarifications, Henri.

    > Let’s say I have a foaf.xml
    > document somewhere at
    > xxx.com/aaa/me.xml. How (1) do I
    > tell people that it’s there, (2)
    > know that it adheres to foaf and
    > (3)make it accessible and parseable
    > quickly by a gprs phone?

    It could all be done but your points are very well taken and thought-provoking. Fewer moving parts, less indirection, Do The Simplest Thing That Could Possibly Work.

    Now, for most people and even many programmers, a web-style interaction will seem simplest. But if that abstraction is done cleanly and universally, then fine!

    Very interesting idea.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s