त्रुटि का स्रोत क्या है: getaddrinfo EAI_AGAIN?


133

मेरे सर्वर ने आज इसे फेंक दिया, जो कि एक Node.js त्रुटि है जिसे मैंने पहले कभी नहीं देखा है:

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)

मैं सोच रहा था कि क्या यह डीएनडीएन डीडीओएस हमले से संबंधित है, जो आज शोपि और कई अन्य सेवाओं को प्रभावित करता है। यहाँ उस के बारे में एक लेख है।

मेरा मुख्य सवाल यह है कि क्या करता dns.jsहै? नोड का क्या हिस्सा है? मैं एक अलग डोमेन के साथ इस त्रुटि को कैसे बना सकता हूं?

जवाबों:


160

यदि आपको यह त्रुटि फायरबेस क्लाउड फ़ंक्शंस के साथ मिलती है, तो यह मुफ्त स्तरीय ( केवल Google सेवाओं के लिए आउटबाउंड नेटवर्किंग ) की सीमाओं के कारण है ।

इसे काम करने के लिए ज्वाला या ब्लेज़ योजनाओं में अपग्रेड करें ।

यहाँ छवि विवरण दर्ज करें


28
आपने मुझे घंटों रिसर्च करने से बचाया । कुडोस
डेविड चोपिन

1
यह सही है, बस शून्य लागत के लिए उपयोग के लिए
धमाकेदार

क्या आप @NullPointer, समाधान को विस्तृत कर सकते हैं, मुझे अभी भी त्रुटियाँ हो रही हैं `त्रुटि: अनुरोध को संभाल नहीं सका`
आलम

मेरे पास एक ही मुद्दा है और ब्लेज़ खाते में अपग्रेड किया गया है लेकिन अभी भी समस्या समान है। मैं पोस्टमैन का उपयोग करने की कोशिश कर रहा हूं।
देवेंद्र सिंह

106

EAI_AGAIN एक DNS लुकअप टाइम आउट त्रुटि है, इसका मतलब है कि यह नेटवर्क कनेक्टिविटी त्रुटि या प्रॉक्सी संबंधित त्रुटि है।

मेरा मुख्य प्रश्न यह है कि dns.js क्या करता है?

  • Dns.js नोड के लिए डोमेन का आईपी पता प्राप्त करने के लिए है (संक्षेप में)।

कुछ और जानकारी: http://www.codingdefined.com/2015/06/nodejs-error-errno-eaiagain.html


4

यह होस्ट फ़ाइल सेटअप से संबंधित समस्या है। अपनी हॉट्स फ़ाइल में निम्न पंक्ति को Ububtu में जोड़ें: / etc / मेजबान

127.0.0.1   localhost

विंडोज़ में: c: \ windows \ System32 \ driver \ etc \ मेजबान

127.0.0.1   localhost

2

ओपी की त्रुटि एक होस्ट ( my-store.myshopify.com) निर्दिष्ट करती है । मेरे द्वारा की गई त्रुटि सभी प्रकार से समान है, सिवाय इसके कि कोई डोमेन निर्दिष्ट नहीं है।

मेरा समाधान अन्य लोगों की मदद कर सकता है जो "त्रुटि: 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/

एक वीएम पर समान सेटिंग्स का उपयोग करने tstvm07से मुझे ओपी का वर्णन करने के लिए बहुत ही समान त्रुटि मिली:

 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पढ़ने के लिए बदल रहा है ...

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

... समस्या का हल किया।


1

@xerq ने सही ढंग से बताया, यहाँ कुछ और संदर्भ है http://www.codingdefined.com/2015/06/nodejs-error-errno-eaiagain.html

मुझे वही त्रुटि मिली, मैंने इसे विंडोज़ ओएस में इस स्थान के तहत मौजूद "होस्ट" फ़ाइल को अपडेट करके हल किया

C: \ Windows \ System32 \ drivers \ etc

आशा करता हूँ की ये काम करेगा!!


1

मुझे यह त्रुटि (अलग-अलग स्टैक ट्रेस हालांकि) मिलनी शुरू हो गई, मेरे ग्राफकॉल एपीआई एप्लिकेशन को एक तुच्छ अपडेट करने के बाद जो डॉकटर कंटेनर के अंदर संचालित है। जो भी कारण के लिए, कंटेनर को एपीआई द्वारा उपयोग किए जा रहे बैक-एंड सेवा को हल करने में कठिनाई हो रही थी।

यह देखने के लिए इधर-उधर देखने के बाद कि क्या docker की आधार छवि में कुछ बदलाव किया गया था (नोड: 13-अल्पाइन, संयोग से), मैंने रिबूट करने के सबसे पुराने कंप्यूटर साइंस ट्रिक को आजमाने का फैसला किया ... मैंने रोका और docker को शुरू किया कंटेनर और सभी वापस सामान्य हो गए।

स्पष्ट रूप से, यह अंतर्निहित समस्या का एक सार्थक समाधान नहीं है - मैं इसे केवल इसलिए पोस्ट कर रहा हूं क्योंकि इसने मेरे लिए समस्या को साफ कर दिया है बिना खरगोश के छेद के बहुत गहरे नीचे जाए।


1

यदि आपको यह त्रुटि डॉकटर कंटेनर के भीतर से प्राप्त होती है , जैसे कि npm installअल्पाइन कंटेनर के अंदर चलाते समय , इसका कारण यह हो सकता है कि कंटेनर शुरू होने के बाद से नेटवर्क बदल गया।

इसे हल करने के लिए, बस रोकें और कंटेनर को पुनरारंभ करें

docker-compose down
docker-compose up

स्रोत: https://github.com/moby/moby/issues/32106#issuecomment-578725551


0

मुझे AWS और सर्वरहीन के साथ एक ही समस्या थी। मैंने eu-central-1क्षेत्र के साथ कोशिश की और यह काम नहीं किया इसलिए मुझे इसे us-east-2उदाहरण के लिए बदलना पड़ा ।


-3

अगर आपको लोकलहोस्ट में या तो उत्पादन नहीं मिलता है, तो इसका मतलब है कि आपको मुफ्त टियर की सीमाओं के कारण अपनी योजना को अपग्रेड करना होगा


-15

एनपीएम को नवीनतम रूप से अपडेट करने से मेरे लिए यह समस्या ठीक हो गई है।

npm install npm@latest

यह समस्या आपके नेटवर्क कनेक्टिविटी से संबंधित है। इसलिए अस्थायी हो सकता है। एक स्थिर इंटरनेट कनेक्शन पर यह समस्या शायद ही देखी गई थी।


24
पैकेज प्रबंधक को अपडेट करने से कोई त्रुटि कैसे ठीक हो सकती है जो पैकेज प्रबंधक से संबंधित नहीं है?
FF_Dev

3
@ Anerjan के बचाव में, यह दौड़ने के दौरान हो सकता है npm installऔर मुझे लगता है कि इसने अपडेट को रोकने और फिर से इंटरनेट से जुड़ने में लगने वाले समय की कल्पना की।
रामबेटिनो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.