¿Cómo sabe "Cloud Files" de Rackspace acerca de mi registro CNAME?

¿Cómo sabe "Cloud Files" de Rackspace acerca de mi registro CNAME?

TLDR: cuando hago este registro DNS:

whatever.mydomain.com.  IN CNAME biglongjibberstring.r89.cf2.rackcdn.com.

¿Cómo sabe Rackspace que este nombre de host aleatorio que elegí debe ir a mi contenedor/cuenta de Cloud Files y no a otro cliente?


Acabo de probar un ejemplo sencillo del uso de Cloud Files con Rackspace. Creé un "Contenedor" de Cloud Files y habilité la opción "Sitio web estático". Subí una imagen de ejemplo y un archivo index.html de ejemplo. Estos archivos en este contenedor ahora están disponibles en esta URL increíblemente larga, que la interfaz de usuario me dice que puedo usar como CNAME para mi dominio:

Configuración del contenedor de archivos en la nube

Y efectivamente, agregando un registro CNAME como:

lo que sea.midominio.com. EN CNAME biglongjibberstring.r89.cf2.rackcdn.com.

Navegando ahttp://lo que sea.midominio.com/Funciona (probé la página de inicio y la imagen). Pero, ¿cómo podría saber que cuando ve una solicitud de "lo que sea.midominio.com" (en el encabezado del host HTTP) está destinada a mi contenedor de archivos en la nube en particular?

Parece tener algo que ver con DNS, ya que si simplemente pongo "blah.example.com" en mi archivo de hosts con la dirección IP biglongjibberstring.r89.cf2.rackcdn.com. se resuelve: eso no funciona (da un error sobre URL no válida; parece provenir de Akamai). La única forma en que podría ver que esto funcione es si de alguna manera la búsqueda de DNS para lo que sea.midominio.com estuviera transmitiendo de alguna manera a los servidores DNS de Rackspace/Akamai esta relación entre "lo que sea.midominio.com" y "biglongjibberstring.r89.cf2.rackcdn .com." Pero nunca he visto este enfoque y ni siquiera creo que la búsqueda de DNS que se remonta a Rackspace/Akamai contenga realmente la información necesaria para esto (aunque podría estar equivocado en eso).

¿Alguien sabe qué tipo de magia negra está pasando aquí?

Respuesta1

Después de observar el comportamiento, mi mejor suposición de lo que podrían estar haciendo razonablemente es la siguiente:

Cuando llega una solicitud HTTP a uno de los nodos CDN y la solicitud tiene un Hostencabezado desconocido, ellos mismos buscan el nombre en el Hostencabezado.

Si este nombre resulta ser una CNAMEreferencia a un nombre conocido (en el formulario <identifyinginformation>.rackcdn.com.), asocian el nombre del Hostencabezado con el recurso apropiado; de lo contrario, devuelven un error.


Esto es especulativo, pero eso es lo que se me ocurre que se ajusta a lo que es técnicamente viable y al comportamiento observado. Eldocumentación en RackspaceNo especifica cómo funciona realmente, pero es de esperar que su apoyo pueda ayudar.

Si alguien quiere experimentar más por su cuenta, un empleado de Rackspace menciona la URL.http://124f4d373d9886355285-0dddf6f52a326dca397d3ae1202a22fd.r49.cf2.rackcdn.com/1_logs_dir.pngcomo ejemplo en los comentarios en la página de documentación vinculada anteriormente. Simplemente agregue un CNAMEa la parte del host de esa URL, modifique la URL en consecuencia y pruébelo.

información relacionada