Cuando tu lo hagas:
$ whois stackoverflow.com
¿Su Linux primero hace una consulta de DNS, encuentra la IP de stackoverflow.com y luego solicita la información directamente allí?
¿O le pregunta a un servidor whois "raíz" (¿la IP del "servidor whois raíz" está codificada en una distribución de Linux, de manera similar a /etc/bind/db.root
?), que luego delega en otro servidor whois que proporciona la información?
¿Cuál es el flujo de conexión?
my computer doing `whois ...` ---> root whois server ---> another whois server ---> information
o
my computer doing `whois ...` ---> DNS server (?) ---> ... ?
Respuesta1
Si estas usandoMarco d'Itriwhois
, puedes agregar la --verbose
opción para ver qué está haciendo. Para stackoverflow.com, comienza preguntando whois.verisign-grs.com (consulte sulista de servidores WHOIS), lo que le proporciona una serie de datos, incluido el hecho de que el registrador de Stack Overflow es Name.com y su servidor WHOIS es whois.name.com; entonces procede a preguntar whois.name.com.
El protocolo está documentado enRFC 3912. Elwhois
página de manualTambién tiene consejos útiles.
Respuesta2
Stephen respondió las partes principales, pero tiene otros puntos que quiero abordar:
- Whois es un protocolo mal definido. No hay jerarquía, no hay whois raíz, etc. De hecho no hay nada relacionado con DNS en los sistemas whois, deberías empezar por separarlos completamente en tu mente ya que, además de que toman sus datos de la misma fuente (el registro base de datos) operan de forma totalmente independiente.
- Cada registro de TLD opera de manera diferente a este respecto. Los gTLD son un caso en sí mismos: según el contrato de ICANN, por ahora, cada registrador tiene la obligación de tener un servidor whois que responda a todos los nombres que maneja. Los registros tienen el mismo requisito. La salida whois del registro enumera el servidor whois del registrador (pero como escribí en un comentario anterior, esto cambió ligeramente recientemente, sin ninguna buena razón, lo que rompió muchos clientes whois) principalmente por una razón histórica que pronto desaparecerá: en el pasado (y todavía ahora para .COM/.NET - .JOBS cambió recientemente pero anteriormente estaba en el mismo barco, consultehttps://www.icann.org/resources/pages/thick-whois-transition-policy-2017-02-01-en) los registros eran "delgados", lo que significa que el registro no almacena datos sobre los contactos, solo el registrador lo hace. Lo que significa que si realmente desea tener datos sobre el nombre de dominio y encontrar a quién contactar en caso de problemas (que era, y sigue siendo, el objetivo original del protocolo whois), primero debe consultar el servidor whois del registro para obtenga el conjunto básico de información y descubra el servidor whois del registrador y luego comuníquese con este servidor whois del registrador para obtener acceso a toda la información de contacto. Esto explica por qué la salida del registro de .COM/.NET hoy solo le brinda datos sobre servidores de nombres de dominio, fechas y estados. Y el nombre del servidor whois del registrador, que el cliente whois intenta seguir pero a veces no puede porque las cosas cambian (vea mi comentario arriba)
- Los ccTLD casi siempre no funcionan así, incluso si se utilizan registradores, al consultar el servidor whois del registro se obtienen todos los resultados necesarios e incluso si faltan algunos (por ejemplo, por razones de privacidad), no es necesario consultar el servidor whois de los registradores como Los registros no les exigen ejecutarlo para los ccTLD que manejan (pero algunos registradores sí lo hacen). Esto explica su observación para un
.fr
nombre de dominio, por ejemplo. - Algunos clientes whois codifican direcciones de servidores whois, algunos lo intentan
whois.nic.$TLD
de forma predeterminada, lo que a menudo funciona como registro o,$TLD
a menudo, tienenic.$TLD
como nombre de dominio operativo principal. - La IANA maneja la lista de registros enhttps://www.iana.org/domains/root/dby en cada página de registro, como por ejemplohttps://www.iana.org/domains/root/db/fr.htmlTendrá una línea
WHOIS Server
que enumera el servidor whois relacionado con el registro seleccionado. Sin embargo, tenga en cuenta que a veces puede quedar desactualizado o ser incorrecto. También puede acceder a estos datos haciendo una consulta whois para un TLD haciawhois.iana.org
, le brindará datos sobre el registro relevante, incluido su servidor whois en lawhois
clave. - También hay otro truco. Si realiza una consulta DNS (pero recuerde que este punto no invalida el primero),
$TLD.whois-servers.net
le dará el nombre del servidor whois correspondiente$TLD
, como un registro CNAME. Algunos clientes whois pueden usar este truco, pero lo dudo (whois
el cliente GNU puede ser uno de ellos, o tal vez sea el de FreeBSD). Tenga en cuenta que esta iniciativa es puramente privada y, aunque debería haberlo sido, no está a cargo de las principales autoridades involucradas en todo esto, como ICANN o IANA. Por ejemplodig uk.whois-servers.net +short
te dará:whois.nic.uk.
. El encanto de esto es que debe actualizarse si esto cambia (muy raro) o (más a menudo) cuando se activan nuevos registros/TLD. - Algunos registros publican el punto final de la dirección de su servidor whois utilizando
SRV
cuál es el tipo de registro DNS dedicado para especificar dónde un nombre de dominio maneja un servicio específico. Entonces, si lo hace,dig _nicname._tcp.fr +short
obtendrá0 0 43 whois.nic.fr.
lo que proporciona, además de los dos primeros números que no se usan (pero que podrían usarse para equilibrio de carga/conmutación por error), el número de puerto (43
) y el nombre del servidorwhois.nic.fr
al que contactar para obtenernicname
, es decir,whois
el servicio bajo su nombre registrado oficial (https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml), para elfr
dominio. No lo utilizan muchos registros, pero debería haberlo sido, los registros SRV proporcionan exactamente este mecanismo de descubrimiento automático distribuido que incluso funciona en cualquier nivel del árbol DNS para que funcione para registros y "sub" registros, etc. .
Tenga en cuenta que mucho de lo anterior cambiará una vez que RDAP, un protocolo más nuevo, reemplace a whois. Ya está definido por múltiples RFC y lo utilizan algunos registros (en producción para RIR, en experimentos para algunos registros de nombres de dominio), pero aún no está obligado contractualmente a ser utilizado por registros y registradores (por razones no técnicas) en el gTLD. mundo, y los registros de ccTLD parecen reacios a deshacerse de sus servidores whois actuales para instalar servidores RDAP.
Respuesta3
Su cliente de WHOIS pregunta a un servidor de WHOIS (en el puerto TCP 43) y este responde directamente.Cliente WHOIS de Debiantiene unlista codificada de servidoresdel cual selecciona automáticamente.La IANA también tiene un servicio de WHOIS.
Fuente:RFC 3912