Mitigação de custos de faturamento para nomes de host inexistentes no Route 53

Mitigação de custos de faturamento para nomes de host inexistentes no Route 53

Cinco dias após o início deste ciclo de faturamento, minha zona Route 53 recebeu mais de 33 milhões de solicitações para um host específico que excluí recentemente. E os registros DNS associados também foram excluídos.

Não pensei que seria cobrado por consultas a um registro de host inexistente, mas na verdade estou de acordo com o painel de faturamento. E o número de consultas dobrou desde que foi removido. Alguns registros e investigações de consultas iniciais sugerem que há clientes fazendo muitas solicitações redundantes para esse nome de host excluído.

Se você estiver interessado, este host estava operando como um servidor público aberto para o protocolo STUN para inicializar chamadas WebRTC e VOIP. Os custos de faturamento para operar esse servidor público estavam ficando fora de controle. Então mudei para um novo endereço IP e novo nome de host. Recentemente, tomei conhecimento de alguns outros serviços públicos bem conhecidos que codificaram o endereço DNS em seu código e documentação de amostra.

Esta noite, adicionei de volta um registro falso A e AAAA que resolve para 127.0.0.1 (ou ::1) com um TTL de 4 dias. Isso pode fazer com que qualquer código que esteja repetindo a solicitação pare de perguntar (tanto) e tenha a entrada armazenada em cache nos servidores DNS downstream. Mas consultas DNS excessivas e redundantes sempre foram um problema caro que nunca consegui resolver. Lidei e mitiguei ataques DDOS no serviço de host durante anos, mas nunca entendi como fazer com que os clientes do Route 53 fizessem solicitações redundantes com firewall.

A solução ideal seria que o Route 53 simplesmente ignorasse as solicitações do nome do host excluído (e não me cobrasse por isso).

Quais são minhas opções?

Responder1

Em vez de excluir um registro, sua solução atual de retornar uma resposta válida com um endereço IP de host local e um TTL muito longo é de fato uma solução.

A documentação oficial (atual) do Amazon Route 53afirma e sugereuma abordagem alternativa

Quando o Route 53 responde aConsultas DNS com uma resposta NXDOMAIN ou NODATA (uma resposta negativa), será cobrada a taxa para consultas padrão.(Consulte "Consultas" na definição de preço do Amazon Route 53). Se você está preocupado com o custo das respostas negativas:

  • Aumente o valor TTL do registro SOA (que é definido como 900 segundos por padrão)

  • Aumente o valor do tempo mínimo de vida (TTL) (86.400 segundos (= 24 horas) por padrão) no registro SOA

Isso deve aumentar o tempo que uma resposta DNS do Route 53 de que um determinado registro DNS não existe, uma resposta NXDOMAIN e/ou NODATA será armazenada em cache (em resolvedores adequados que suportam cache negativo). Isso deve reduzir o número de solicitações pelas quais você é cobrado.


Um registro SOA inclui os seguintes elementos:

O tempo mínimo de vida (TTL). Esse valor ajuda a definir por quanto tempo os resolvedores recursivos devem armazenar em cache as seguintes respostas do Route 53:

  • NXDOMAIN Não há registro de nenhum tipo com o nome especificado na consulta DNS, como exemplo.com. Também não há registros filhos do nome especificado na consulta DNS, como zenith.example.com.

  • NODADOSHá pelo menos um registro com o nome especificado na consulta DNS, mas nenhum desses registros tem o tipo (como A) especificado na consulta DNS.

Quando um resolvedor DNS armazena em cache uma resposta NXDOMAIN ou NODATA, isso é chamado de cache negativo.

A duração do cache negativo é o menor dos seguintes valores:

  • Este valor é o TTL mínimo no registro SOA. No exemplo, o valor é 86.400 (um dia).
  • O valor do TTL para o registro SOA.

Quando o Route 53 responde aConsultas DNS com uma resposta NXDOMAIN ou NODATA (uma resposta negativa), será cobrada a taxa para consultas padrão.(Consulte "Consultas" na definição de preço do Amazon Route 53). Se você estiver preocupado com o custo das respostas negativas, uma opção é alterar o TTL do registro SOA, o TTL mínimo no registro SOA (esse valor) ou ambos. Observe que aumentar esses TTLs, que se aplicam a respostas negativas para toda a zona hospedada, pode ter efeitos positivos e negativos:

...

informação relacionada