Eu acho que essa pergunta pode ser entendida, como o CDN funciona no nível DNS, mas o verdadeiro problema que tenho é que minha empresa possui datacenters em três continentes e temos que ter europe.example.com us.example.com e asia.example .com
As CDN normalmente o enviam para o datacenter local que imagino, dependendo do seu endereço IP. Deve ser uma coisa de DNS em que o servidor DNS nos EUA o envia para um datacenter dos EUA para a mesma pesquisa de DNS example.com?
Estou errado? Se eu estiver errado sobre isso, como eu faria isso de forma eficaz e, se possível, sem servidores centrais (não DNS)?
domain-name-system
cdn
Stewart Robinson
fonte
fonte
Respostas:
O problema com as CDNs é que elas não o direcionam com base no seu próprio endereço IP - elas o direcionam com base no endereço IP do seu servidor DNS ... Isso pode estar completamente errado. E leia o artigo de Paul Vixie no ACM , é uma questão de dinheiro.
De qualquer forma, se você já tem
region.example.com
configurado e funcionando, você pode considerar fazer um redirecionamento HTTP a partirexample.com
do servidor web relevante, com base no endereço IP do cliente.Isso é basicamente o que o Google faz, é como acabo
google.co.uk
digitandogoogle.com
.Além disso, garanta que você forneça meios para que os clientes cheguem às outras variações. Os clientes não gostam quando são forçados a um site específico, seja por erros nos bancos de dados geográficos ou simplesmente porque precisam realmente ver o site de outra região.
fonte
CDNs mais recentes (Cloudflare, MaxCDN, fast.ly) usam anycast para servidores de conteúdo DNS e reais. Isso é um pouco melhor do que tentar usar o IP de origem de uma consulta DNS e um banco de dados de mapeamento em constante mudança.
Em teoria, o uso de anycast para os servidores DNS e de conteúdo permite que a própria rede encontre os servidores "mais próximos" do cliente. Na prática, isso é verdade, mas existem casos estranhos em que as pessoas em Cingapura atingem servidores de ponta na Califórnia, em vez de Hong Kong, devido às constantes mudanças nos relacionamentos entre os ISPs.
Anycast é difícil de fazer bem .
CDNs mais antigos, como Akamai e Limelight, geralmente usam anycast para levá-lo ao servidor DNS mais próximo, mas depois adotam a abordagem de IP baseada em suposição. Isso não funciona tão bem na minha experiência, especialmente se um cliente estiver usando servidores de DNS que não estão realmente próximos em termos de topologia de rede. No entanto, uma enorme CDN estabelecida como a Akamai possui centenas de locais de servidores de conteúdo, portanto, retornar uma resposta "suficientemente próxima" resulta em uma experiência decente para o usuário. Obviamente, ter centenas de sites é muito caro, e é por isso que nenhum dos CDNs all-anycast escolheu essa rota. Consequentemente, eles também não cobram muito pelo serviço equivalente.
fonte
Existem várias maneiras de lidar com isso, mas todas se resumem a descobrir onde está um endereço IP e apontá-lo de acordo. Por exemplo, você pode especificar um intervalo de IPs para a América do Norte e um para a Europa. Se o IP que está solicitando as informações (do DNS, do servidor da web, do servidor de conteúdo etc.) cai no intervalo europeu, seus servidores europeus devem receber os pedidos.
fonte
Você pode configurar uma página principal padrão em example.com. Na primeira vez que alguém visita, seleciona para qual região deseja ser direcionada. É da mesma maneira que www.ups.com funciona.
O usuário pode marcar uma caixa de seleção para fazer sua escolha padrão a partir desse momento, armazenando a seleção em um cookie.
Isso permite que você se beneficie do uso do DNS da maneira como foi projetado de acordo com Paul Vixie, enquanto permite que o usuário tome a decisão mais precisa em qual data center ele deve ser direcionado.
fonte
Se você tem um site hospedado em várias regiões, não precisa fazer nada no nível DNS. Você pode usar uma API como http://ipinfo.io para obter o país do visitante e, em seguida, redirecioná-lo para o URL apropriado.
Se não estamos falando de um site ou de qualquer protocolo que lida com redirecionamentos, existem algumas opções no nível do DNS. Você pode fazer a mesma pesquisa de país IP e retornar um registro que corresponda à região (DNS baseado em localização geográfica) ou pode ter um mapa da latência entre redes diferentes e retornar um registro que represente a menor latência para o usuário (latência baseado em DNS). O serviço DNS Route53 da Amazon oferece ambos.
fonte