Mijn server heeft dit vandaag gedaan, wat een Node.js-fout is die ik nog nooit eerder heb gezien:
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)
Ik vraag me af of dit verband houdt met de DynDns DDOS-aanval die Shopify en vele andere services vandaag trof. Hier is een artikel daarover.
Mijn belangrijkste vraag is wat doet dns.js
? Van welk deel van het knooppunt is het een onderdeel? Hoe kan ik deze fout opnieuw maken met een ander domein?
Antwoord 1, autoriteit 100%
Als u deze foutmelding krijgt bij Firebase Cloud Functions, komt dit door de beperkingen van de gratis laag (uitgaande netwerken alleen toegestaan voor Google-services).
Upgrade naar de plannen Flameof Blazeom het te laten werken.
Antwoord 2, autoriteit 78%
EAI_AGAIN is een time-outfout bij DNS-lookup, wat betekent dat het een netwerkverbindingsfout of proxy-gerelateerde fout is.
Mijn belangrijkste vraag is wat doet dns.js?
- De dns.js is er voor node om het IP-adres van het domein te krijgen (in het kort).
Wat meer informatie:
http://www.codingdefined.com/2015/06/nodejs -error-errno-eaiaagain.html
Antwoord 3, autoriteit 9%
Als u deze fout vanuit een docker-containerkrijgt, b.v. bij het uitvoeren van npm install
in een alpine container, kan de oorzaak zijn dat het netwerk is gewijzigd sinds de container is gestart.
Om dit op te lossen, stop en herstart de container
docker-compose down
docker-compose up
Bron: https://github.com/moby/moby/issues/ 32106#issuecomment-578725551
Antwoord 4, autoriteit 2%
Zoals het uitstekende antwoord van xerquitlegt, is dit een DNS-time-outprobleem.
Ik wilde een ander mogelijk antwoord geven voor degenen onder u die Windows-subsysteem voor Linux gebruiken – er zijn enkele gevallen waarin iets scheef lijkt te staan in het client-besturingssysteem nadat Windows uit de slaapstand is gehaald. Het herstarten van het host-besturingssysteem lost deze problemen op (waarschijnlijk zal het opnieuw opstarten van de WSL-service hetzelfde doen).
Antwoord 5, autoriteit 2%
De OP-fout specificeert een host (my-store.myshopify.com
).
De fout die ik tegenkwam is in alle opzichten hetzelfde, behalve dat er geen domein is opgegeven.
Mijn oplossing kan anderen helpen die hier getekend zijn door de titel “Fout: getaddrinfo EAI_AGAIN”
Ik ben de fout tegengekomen bij het bedienen van een NodeJs & VueJs-app van een andere VM waarop de code oorspronkelijk is ontwikkeld.
Het bestand vue.config.js
lees:
module.exports = {
devServer: {
host: 'tstvm01',
port: 3030,
},
};
Wanneer geserveerd op de originele machine, is de opstartoutput:
App running at:
- Local: http://tstvm01:3030/
- Network: http://tstvm01:3030/
Het gebruik van dezelfde instellingen op een VM tstvm07
leverde me een zeer vergelijkbare fout op als degene die de OP beschrijft:
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)
Als het nog niet duidelijk is, verander dan vue.config.js
om te lezen …
module.exports = {
devServer: {
host: 'tstvm07',
port: 3030,
},
};
… het probleem is opgelost.
Antwoord 6
Dit is het probleem met betrekking tot het instellen van hosts-bestanden.
Voeg de volgende regel toe aan je hots-bestand:
In Ububtu: /etc/hosts
127.0.0.1 localhost
In Windows: c:\windows\System32\drivers\etc\hosts
127.0.0.1 localhost
Antwoord 7
Ik kreeg deze fout (andere stacktracering echter) na een triviale update van mijn GraphQL API-toepassing die wordt uitgevoerd in een docker-container. Om welke reden dan ook, de container had problemen met het oplossen van een back-endservice die door de API wordt gebruikt.
Na wat rondgekeken te hebben om te zien of er een wijziging was aangebracht in de docker-basisafbeelding waarvan ik aan het bouwen was (node:13-alpine, overigens), besloot ik de oudste computerwetenschappelijke truc van rebooten te proberen… Ik stopte en startte de docker-container en alles ging weer normaal.
Dit is duidelijk geen zinvolle oplossing voor het onderliggende probleem – ik plaats dit alleen omdat het het probleem voor mij heeft opgelost zonder te diep in konijnenholen te gaan.
Antwoord 8
@xerq wees correct, hier is wat meer referentie
http://www.codingdefined.com/2015/06/ nodejs-error-errno-eaiaagain.html
ik kreeg dezelfde fout, ik heb het opgelost door het “hosts”-bestand dat aanwezig is op deze locatie in Windows os bij te werken
C:\Windows\System32\drivers\etc
Hopelijk helpt het!!
Antwoord 9
Ik had hetzelfde probleem met AWS en Serverless. Ik heb het geprobeerd met de regio eu-central-1
en het werkte niet, dus ik moest het voor het voorbeeld wijzigen in us-east-2
.
Antwoord 10
In mijn geval was het probleem het ip-toewijzingsbereik van docker-netwerken, zie dit berichtvoor details
Antwoord 11
Blaze ingeschakeld en het werkt nog steeds niet?
Hoogstwaarschijnlijk moet u .env
instellen vanaf het juiste pad, require('dotenv').config({ path: __dirname + './../.env' });
werkt niet(of enig ander pad). Plaats eenvoudig het bestand .env
in de directory functions
, van waaruit u implementeert naar Firebase
.
Antwoord 12
het updaten van de npm naar de nieuwste verhelpt dit probleem voor mij.
npm install npm@latest
dit probleem heeft te maken met uw netwerkverbinding. kan daarom tijdelijk zijn. op een stabiele internetverbinding werd dit probleem nauwelijks waargenomen.