Qual é a fonte do Erro: getaddrinfo EAI_AGAIN?


133

Meu servidor lançou isso hoje, que é um erro do Node.js que eu nunca tinha visto antes:

Error: getaddrinfo EAI_AGAIN my-store.myshopify.com:443
    at Object.exports._errnoException (util.js:870:11)
    at errnoException (dns.js:32:15)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:78:26)

Gostaria de saber se isso está relacionado ao ataque DynDns DDOS que afetou o Shopify e muitos outros serviços hoje. Aqui está um artigo sobre isso.

Minha principal pergunta é o que dns.jsfaz? De que parte do nó ele faz parte? Como posso recriar esse erro com um domínio diferente?

Respostas:


160

Se você receber esse erro com o Firebase Cloud Functions, isso se deve às limitações do nível gratuito (a rede de saída é permitida apenas para os serviços do Google) ).

Atualize para os planos Flame ou Blaze para que funcione.

insira a descrição da imagem aqui


28
Você acabou de me salvar horas de pesquisa. Kudos
David Chopin

1
É isso mesmo, acabei de atualizar para pay per use plano de fogo para o custo zero (o reporte de dados nível gratuito de faísca)
JerryGoyal

Você pode @NullPointer, elaborar a solução, ainda estou recebendo erros 'Erro: não foi possível processar a solicitação'
Alam

Tenho o mesmo problema e atualizei para a conta Blaze, mas ainda assim o problema é o mesmo. Estou tentando usar carteiro.
Devendra Singh


4

Esse é o problema relacionado à configuração do arquivo hosts. Adicione a seguinte linha ao seu arquivo de hots No Ububtu: / etc / hosts

127.0.0.1   localhost

No Windows: c: \ windows \ System32 \ drivers \ etc \ hosts

127.0.0.1   localhost

2

O erro do OP especifica um host ( my-store.myshopify.com). O erro que encontrei é o mesmo em todos os aspectos, exceto que nenhum domínio foi especificado.

Minha solução pode ajudar outras pessoas que são atraídas aqui pelo título "Erro: getaddrinfo EAI_AGAIN"

Encontrei o erro ao tentar veicular um aplicativo NodeJs & VueJs de uma VM diferente de onde o código foi desenvolvido originalmente.

O arquivo vue.config.jsdizia:

 module.exports = {
   devServer: {
     host: 'tstvm01',
     port: 3030,
   },
 };

Quando servido na máquina original, a saída de inicialização é:

App running at:
- Local:   http://tstvm01:3030/ 
- Network: http://tstvm01:3030/

Usar as mesmas configurações em uma VM tstvm07gerou um erro muito semelhante ao descrito pelo OP:

 INFO  Starting development server...
 10% building modules 1/1 modules 0 activeevents.js:183                              
      throw er; // Unhandled 'error' event
      ^

Error: getaddrinfo EAI_AGAIN
    at Object._errnoException (util.js:1022:11)
    at errnoException (dns.js:55:15)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:92:26)

Se ainda não é óbvio, mudar vue.config.jspara ler ...

 module.exports = {
   devServer: {
     host: 'tstvm07',
     port: 3030,
   },
 };

... resolveu o problema.



1

Comecei a receber esse erro (rastreamento de pilha diferente) depois de fazer uma atualização trivial no meu aplicativo da API GraphQL que é operado dentro de um contêiner do docker. Por qualquer motivo, o contêiner estava com dificuldades para resolver um serviço de back-end sendo usado pela API.

Depois de bisbilhotar para ver se alguma alteração foi feita na imagem base do docker de que eu estava construindo (nó: 13 alpinos, aliás), decidi tentar o truque mais antigo de ciência da computação da reinicialização ... Parei e iniciei o docker recipiente e tudo voltou ao normal.

Claramente, essa não é uma solução significativa para o problema subjacente - estou apenas postando isso, pois ele esclareceu o problema para mim sem ir muito fundo nos buracos dos coelhos.



0

Eu tive um mesmo problema com a AWS e sem servidor. Eu tentei com a eu-central-1região e não funcionou, então tive que mudar us-east-2para o exemplo.


-3

Se você não conseguir isso no host local, quer na produção, isso significa que você deve atualizar seu plano devido às limitações do nível gratuito


-15

atualizar o npm para as mais recentes corrige esse problema para mim.

npm install npm@latest

esse problema está relacionado à sua conectividade de rede. portanto, pode ser temporário. em uma conexão estável à Internet, esse problema quase não foi observado.


24
Como a atualização do gerenciador de pacotes pode corrigir um erro não relacionado ao gerenciador de pacotes?
FF_Dev 31/08/19

3
Na defesa de @ anerjan, isso pode ocorrer durante a execução npm installe eu imagino o tempo que levou para parar de atualizar e reiniciar ele se conectou novamente à Internet.
Rambatino
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.