# WHOIS

WHOIS (del inglés who is, «quién es») es un protocolo TCP basado en petición/respuesta para efectuar consultas en una base de datos que permite determinar el propietario de un nombre de dominio o una dirección IP en Internet. Las consultas WHOIS se pueden realizar bien a través de una utilidad para línea de comandos, o bien a través de una multitud de páginas web públicas que permiten realizar estas consultas. Estas páginas siguen dependiendo internamente del protocolo WHOIS para conectar a un servidor WHOIS y hacer las peticiones. Los clientes para línea de comandos siguen siendo muy usados por administradores de sistemas.

## Tipos de respuesta

Existen dos formas de almacenar la información en un servidor WHOIS: el modo "denso" y "ligero".
Con el modelo "denso", un servidor WHOIS almacena toda la información de un conjunto de dominios o IPs (con lo que ese servidor es capaz de responder a cualquier consulta de dominios .org, por ejemplo).
Con el modelo "ligero", un servidor WHOIS guarda el nombre de otro servidor WHOIS que tiene los datos completos del registrador (como en el caso de los .com) y otros datos básicos. Para acceder a todos los datos hay que realizar una segunda consulta al servidor que tiene todos los datos. El método "denso" es más rápido, pues solo implica realizar una consulta. No hay un estándar en el protocolo WHOIS para distinguir entre estos tipos de respuesta.

## Consulta de ejemplo

A continuación se muestra el WHOIS de wikipedia.org:

## Realizar consultas WHOIS
### Clientes de línea de comandos

En un principio la única forma de contactar con un servidor WHOIS era mediante el uso de un cliente de línea de comandos. En la mayoría de los casos era en un sistema Unix. El cliente WHOIS es distribuido como software libre, aunque varias implementaciones comerciales de Unix tienen sus propias versiones (por ejemplo Sun Solaris 7)
Un cliente WHOIS de línea de comandos típico tiene opciones para indicarle a qué servidor realizar las consultas, con servidores WHOIS por defecto ya preparados.
El cliente whois del proyecto GNU, a diferencia de otros clientes WHOIS, usa un archivo externo de configuración para determinar a qué servidor de WHOIS realizar cada consulta. Esto permite adaptarse con rapidez a los cambios.

### Clientes web

Actualmente es muy común realizar las consultas mediante páginas web, que normalmente no son más que una simple interfaz para el cliente de línea de comandos.

### Módulos de Perl

Hay múltiples módulos para Perl que trabajan con servidores WHOIS.

## Problemas

* Privacidad: Aparecen los datos de contacto del registrador, incluyendo números de teléfono y direcciones. Esta información está disponible públicamente en Internet.
* Spam: Los spammers habitualmente capturan direcciones de correo electrónico en texto plano de las respuestas de los servidores WHOIS. Algunos servidores incluyen sistemas tipo Captcha, en el que los usuarios deben de introducir las letras que aparecen en una imagen (para evitar consultas automáticas).
* Compatibilidad con alfabetos distintos al del inglés: no se escribió con la idea de internacionalizarlo. Un servidor de WHOIS no puede indicar qué codificación de texto usa.
* Falta de una lista centralizada de servidores WHOIS: No existe una lista con todos los servidores WHOIS. Por lo tanto, las personas que escriben herramientas de WHOIS necesitan encontrar o elaborar su propia lista.
* Cada servidor responde de manera distinta, por lo que es complicado sacar la información de cada campo automáticamente.

## Whois privado

Aquellas personas o entidades que lo deseen, pueden evitar que sus datos de contacto sean de acceso público mediante el sistema de WHOIS.
Existen varios tipos de servicios:
* Servicio de privacidad: el cliente registra el dominio con sus datos reales, pero dichos datos no se revelan a las consultas WHOIS, sino que se devuelven datos vacíos o sustituidos por textos indicando que los datos no son reales por motivos de privacidad.
* Servicio de representación (proxy en inglés): El proveedor registra el nombre de dominio a su nombre y otorga una licencia de uso al cliente. Así, se publica la información de contacto del proveedor del dominio en lugar de los datos de contacto del cliente.