Problema de resolução de domínio afetando embeds de tópicos

Há possivelmente um problema de resolução de domínio afetando os embeds de tópicos.

  1. O sistema de embed de tópicos depende do FinalDestination para resolver os URLs de embed de tópicos (veja aqui).

  2. O FinalDestination resolve o nome do host de um URL para um IP via SSRFDetector (veja aqui)

  3. O FinalDestination então envia a URI para o Excon para a requisição real (veja aqui).

Isso significa que alguns URLs de embed de tópicos, por exemplo

"https://opensource.org/blog/osi-response-to-ntia"

acabam sendo enviados para o Excon para uma requisição GET da seguinte forma:

"https://[2604:a880:800:a1::2f0:a001]/blog/osi-response-to-ntia"

Esta requisição irá expirar. Um Excon.get do URL original não irá.

Parece que está tudo bem aqui no Meta:

Pela sua descrição, minha suposição seria que seu servidor está resolvendo registros ipv6 ao fazer consultas DNS (nós usamos getaddrinfo para isso). Mas então, ao tentar conectar-se a eles, falha.

Isso pode ser porque ele tenta o endereço ip6, falha e, em seguida, volta para o endereço ip4. Atualmente, não temos esse tipo de lógica de fallback em FinalDestination#resolve:

2 curtidas