web-dev-qa-db-ja.com

エラー:getaddrinfo EAI_AGAIN

私のサーバーは今日これを投げました、これは私が今まで見たことがないnodejsエラーです。

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)

これが今日のShopifyや他の多くのサービスに影響を及ぼしていたDynDns DDOS攻撃に関連しているのではないかと思います。 これについての記事があります。

私の主な質問はdns.jsが何をするのですか?ノードのどの部分から離れていますか?別のドメインでこのエラーを再現できますか?

61
ThomasReggi

EAI_AGAINはDNSルックアップタイムアウトエラーであり、ネットワーク接続エラーまたはプロキシ関連エラーです。

私の主な質問はdns.jsは何をするのですか?

  • Dns.jsは、ノードがドメインのIPアドレスを取得するためのものです(簡単に説明)。

いくつかのより多くの情報: http://www.codingdefined.com/2015/06/nodejs-error-errno-eaiagain.html

68
xerq

Firebase Cloud Functionsでこのエラーが発生した場合、これは無料利用枠の制限によるものです(アウトバウンドネットワークはGoogleサービスにのみ許可されています)。

FlameまたはBlazeにアップグレードしてください。

enter image description here

12
bastien

OPのエラーがホスト(my-store.myshopify.com)を指定しています。私が遭遇したエラーはドメインが指定されていないことを除いてすべての点で同じです。

私の解決策は、 "Error:getaddrinfo EAI_AGAIN"というタイトルでここに描かれている他の人を助けるかもしれません。

コードが最初に開発された場所とは異なるVMからNodeJsおよびVueJsアプリを提供しようとしたときにエラーが発生しました。

ファイルvue.config.jsは次のように読み取ります。

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

元のマシンで処理したときの起動時の出力は次のとおりです。

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

VM tstvm07で同じ設定を使用すると、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)

まだ明らかでない場合は、vue.config.jsをreadに変更します。

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

... 問題を解決しました。

1
Martin Bramwell

これはhostsファイルの設定に関連する問題です。 Ububtuのhotsファイルに次の行を追加します。/ etc/hosts

127.0.0.1   localhost

Windowsの場合:c:¥windows¥System32¥drivers¥etc¥hosts

127.0.0.1   localhost
0
Radhe9254

@xerqは正しく指しています、ここでもう少し参考になります http://www.codingdefined.com/2015/06/nodejs-error-errno-eaiagain.html

私は同じエラーを得た、私は窓osのこの位置の下に存在する「hosts」ファイルを更新することによってそれを解決した

C:\ Windows\System32\drivers\etc

それが役に立てば幸い!!

0
Mateen