¿Qué es y para qué sirve ENUM?

Últimamente he estado jugando un poco con ENUM, y casualmente la semana pasada también lo comentamos en Asterisk-ES, así que me he animado a escribir un post al respecto.

DISCLAIMER: No soy un super-mega-experto conocedor de la tecnologia en sí, pero la he utilizado y la entiendo, espero que os sea util 😉

ENUM o tElephone NUMber mapping es un sistema que nos permite utilizar el sistema DNS para hacer consultas en base a numeros de telefono. Ein?! Normalmente hacemos consultas DNS sobre un dominio para saber cual es la IP a la que apunta, su servidor de correo, o si usa SRV hasta cual es su servidor SIP. Con ENUM hacemos la consulta DNS (de tipo NAPTR) en base a un numero de telefono y podremos obtener informacion como una URI SIP, información de geolocalización, blog, twitter, … Lo interesante es que podemos obtener una URI SIP a la que podemos llamar en lugar de al número, por lo que el coste de la llamada quedaría reducido a 0. How cool is that?

Como siempre que hay algo gratis involucrado, surgen los problemas: ¿quién llena las bases de datos ENUM? ¿está la gente interesada? ¿y las grandes telcos? Seguramente el principal problema de la no expansion de ENUM sea que es un servicio que no se puede cobrar, por lo que es algo que se hace pero que no retorna un beneficio ni inmediato ni directo. Por otro lado, para poder introducir tus datos en ENUM es necesario contactar con la autoridad responsable y demostrar que tal número es tuyo. El proceso implica demostrar mediante facturas, etc. que eres el usuario de dicho número, pero esto no es como darte de alta en Twitter, y la gente no suele querer perder el tiempo… Ademas, las grandes operadoras obviamente no quieren que la gente use ENUM, porque entonces no facturarias las llamadas que gracias a ENUM se hacen por SIP.

¿Entonces quién usa ENUM? ENUM tiene un árbol publico (e164.arpa) pero nadie te impide tener tu propio árbol ENUM privado, por lo que es posible utilizar ENUM internamente dentro de un ITSP por ejemplo, de manera que antes de sacar la llamada de un cliente a PSTN podemos consultar en ENUM si la llamada es para otro usuario de nuestra red, y enrutarla a coste 0 (esto se puede hacer de muchas maneras, ENUM es una de ellas).

Bueno, tras la brasa inicial vamos a ver si algo de lo que he dicho es verdad. Para ello vamos a ver un ejemplo real, con el siguiente numero: +40317105163. Se trata de un DID de Rumania que apunta a la cuenta SIP de mi trabajo asi que absteneos de intentar venderme viagra a las 4 de la mañana 😉 Para ver qué información tiene asociado ese número de telefono haremos una consulta DNS de tipo NAPTR al arbol e164.arpa:

enum

Como se puede apreciar en la imagen la consulta devuelve 4 resultados: una URI SIP, dos direcciones web y una dirección de geolocalización. Al parecer esto del ENUM no es del todo mentira 😉

El Capitán Obvio me ha dicho que esto no tiene sentido a menos que la gente introduzca ahí su número, y claro está que no es algo que muchos particulares estén dispuestos a hacer, pero para empresas, y mas concretamente las del sector de las comunicaciones y/o VoIP podria resultar interesante (en realidad para los que les llaman).

En el siguiente post comentaré que utilidad podemos darle a ENUM desde un móvil con Android, stay tuned!

Unos links de interés:

http://es.wikitel.info/wiki/Enum
http://en.wikipedia.org/wiki/Enum

http://www.e164.org/
https://secure.dns-hosting.info/enum_lookup.phtml

11 thoughts on “¿Qué es y para qué sirve ENUM?

  1. ENUM es de esas cosas que todo el mundo ve que es super-util, y nadie entiende por qué no se usa más.

    Yo creo que no se usa generalmente por un asunto claro: tú no ahorras nada dando tus números de alta en ENUM. El que ahorra con esto es el que te va a llamar a tí. Y en términos de empresa eso se traduce en «si yo no gano nada con ésto, ¿pa qué lo voy a hacer?»

    En cuanto a lo de tener que demostrar que el número es tuyo, mediante facturas y tal… ¿eso ha cambiado? Yo tengo dados de alta algunos números en e164.org, y no tuve que hacer nada de eso. Simplemente, al darme de alta recibí una llamada en la que me decían un PIN que yo tenía que introducir en la web, para demostrar que las llamadas a ese número las recibía yo realmente.

  2. @davidp: Cierto, la gente no suele hacer nada si no es para beneficio propio :-/

    Sobre lo de las facturas, supongo que dependerá de la autoridad con la lo gestiones o así.

  3. Uno de los problemas de ENUM es que no gusta nada a los operadores tradicionales.

    – ENUM permite que el usuario gestione directamente la portabilidad de sus números, los operadores creen que tanta independencia del usuario no les conviene.

    – ENUM, en los paises RPP como EE.UU. permite que el usuario llamado gestione la terminación de la llamada de modo que le llegue por el destino más barato. Evidentemente eso tampoco les gusta.

    ENUM tiene muchos rasgos que mejoran el servicio telefónico tradicional, por tanto me parece raro que los operadores tradicionales impulsen ENUM por ahora. Quizás cuando entiendan que Google Voice es una bonita aplicación de ENUM (si bien Google no lo dice) se tiren de los pelos por el tiempo y oportunidad perdidos.

    En http://es.wikitel.info/wiki/Enum encontrareis una descripción detallada de ENUM.

  4. Os recomiendo que leais el artículo de Wikitel en vez del de Wikipedia puesto que es más reciente, está algo más desarrollado y en castellano.

  5. Ejemplo:

    Si en ENUM lookup tool (ver el enlace al final del post principal) pongo mi número ENUM de pruebas: +8781074724670XY

    el lookup tool devuelve:

    dig NAPTR Y.X.0.7.6.4.2.7.4.7.0.1.8.7.8.e164.arpa. pdns1.dns-hosting.info

    Status: NXDOMAIN

    Found 3 records corresponding to +8781074724670XY

    No. Result
    1 Y.X.0.7.6.4.2.7.4.7.0.1.8.7.8.e164.arpa. 60 IN NAPTR 10 107 «u» «E2U+mailto» «!^.*$!mailto:jjzubeldAB@gmail.com!» .
    2 Y.X.0.7.6.4.2.7.4.7.0.1.8.7.8.e164.arpa. 60 IN NAPTR 10 100 «u» «E2U+sms» «!^.*$!sms:00346707802AB!» .
    3 Y.X.0.7.6.4.2.7.4.7.0.1.8.7.8.e164.arpa. 60 IN NAPTR 10 101 «u» «E2U+tel» «!^.*$!tel:346707802AB!» .

    En la primera línea el lookup tool explica cómo hace la conversión de número E.164 a URI

    Y las tres líneas de resultados muestran los NAPTR Records que encuentra, lo cual es bastante indiscreto, por no decir ilegal en algunos países.

    A fin de cuentas, lo que quería mostrar es que un sólo número +8781074724670XY sirve para enviarme emails, sms y llamarme por teléfono. Podría haber puesto varios NAPTR del tipo «E2U+tel» de modo que me llame simultáneamente a varios teléfonos. Y lo más importante: Soy yo quien los define y los cambia.

    (por discreción he editado la consulta y respuesta camuflando las dos cifras menos significativas con X e Y)

  6. @Abasota: Gracias por tus comentarios 😉 ¿Una pregunta: como es que en algún sitio pueda ser ilegal mostrar resultados? Cualquiera podría obtenerlos haciendo la query, ¿no?

  7. Claro, cualquiera podría obtenerlos haciendo la query. ¡Y ese es el problema! imagínete el filón que tendrían los spammers y fisgones.

    Por esa razón se está trabajando en alguna solución menos indiscreta.

  8. Con un ENUM privado o una solución del tipo Google Voice la técnica es la misma, con la diferencia que no emplean servidores DNS públicos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *