Como o "Cloud Files" da Rackspace sabe sobre meu registro CNAME?

Como o "Cloud Files" da Rackspace sabe sobre meu registro CNAME?

TLDR: quando faço esse registro DNS:

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

Como a Rackspace sabe que esse nome de host aleatório que escolhi deve ir para meu contêiner/conta do Cloud Files e não para outro cliente?


Acabei de testar um exemplo simples de uso de Cloud Files com Rackspace. Criei um "Container" de Cloud Files e habilitei a opção "Site Estático". Carreguei uma imagem de exemplo e um arquivo index.html de exemplo. Esses arquivos neste contêiner agora estão disponíveis neste URL muito longo, que a IU me diz que posso usar como CNAME para meu domínio:

Configurações do contêiner de arquivos na nuvem

E com certeza, adicionando um registro CNAME como:

tanto faz.meudominio.com. EM CNAME biglongjibberstring.r89.cf2.rackcdn.com.

Navegando parahttp://qualquer.meudominio.com/funciona (testei a página inicial e a imagem). Mas como ele poderia saber que, ao ver uma solicitação para "whatever.mydomain.com" (no cabeçalho do host HTTP), ele se destina ao meu contêiner de arquivos em nuvem específico?

Parece ter algo a ver com DNS, já que se eu apenas colocar "blah.example.com" em meu arquivo hosts com o endereço IP biglongjibberstring.r89.cf2.rackcdn.com. resolve - isso não funciona (dá um erro sobre URL inválido - parece vir da Akamai). A única maneira de ver isso funcionando é se de alguma forma a pesquisa de DNS para qualquer que seja.mydomain.com estivesse de alguma forma transmitindo de volta aos servidores DNS da Rackspace/Akamai esse relacionamento entre "whatever.mydomain.com" e "biglongjibberstring.r89.cf2.rackcdn .com.". Mas nunca vi essa abordagem e nem acho que a pesquisa de DNS que remonta à Rackspace/Akamai realmente contenha as informações necessárias para isso (embora eu possa estar errado sobre isso).

Alguém sabe que tipo de magia negra está acontecendo aqui?

Responder1

Depois de observar o comportamento, meu melhor palpite sobre o que eles poderiam estar fazendo razoavelmente é o seguinte:

Quando uma solicitação HTTP chega a um dos nós CDN e a solicitação tem um Hostcabeçalho desconhecido, eles próprios procuram o nome no Hostcabeçalho.

Se esse nome for uma CNAMEreferência a um nome conhecido (no formulário <identifyinginformation>.rackcdn.com.), eles associam o nome do Hostcabeçalho ao recurso apropriado, caso contrário, retornam um erro.


Isso é especulativo, mas é o que consigo pensar que se ajusta ao que é tecnicamente viável, bem como ao comportamento observado. Odocumentação na Rackspacenão especifica como realmente funciona, mas esperamos que o apoio deles possa ajudar.

Se alguém quiser experimentar mais por conta própria, um funcionário da Rackspace menciona o URLhttp://124f4d373d9886355285-0dddf6f52a326dca397d3ae1202a22fd.r49.cf2.rackcdn.com/1_logs_dir.pngcomo exemplo nos comentários na página de documentação vinculada acima. Basta adicionar um CNAMEà parte host desse URL, modificar o URL de acordo e experimentá-lo.

informação relacionada