Nguồn lỗi là gì: getaddrinfo EAI_AGAIN?


133

Máy chủ của tôi đã ném cái này hôm nay, đó là lỗi Node.js tôi chưa từng thấy trước đây:

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)

Tôi tự hỏi liệu điều này có liên quan đến cuộc tấn công DOSDns DDOS đã ảnh hưởng đến Shopify và nhiều dịch vụ khác hiện nay không. Đây là một bài viết về điều đó.

Câu hỏi chính của tôi là dns.jslàm gì? Phần nào của nút là một phần của? Làm cách nào để tạo lại lỗi này với một tên miền khác?

Câu trả lời:


160

Nếu bạn gặp lỗi này với Firebase Cloud Function, điều này là do các giới hạn của tầng miễn phí ( mạng ngoài chỉ được phép cho các dịch vụ của Google ).

Nâng cấp lên các kế hoạch Flame hoặc Blaze để nó hoạt động.

nhập mô tả hình ảnh ở đây


28
Bạn vừa tiết kiệm cho tôi hàng giờ nghiên cứu. Kudos
David Chopin

1
đúng vậy, chỉ cần nâng cấp để trả tiền cho mỗi lần sử dụng gói lửa với chi phí bằng 0 (dữ liệu tầng miễn phí chuyển tiếp này từ tia lửa)
JerryGidel

Bạn có thể @NullPulum không, giải thích chi tiết về giải pháp, tôi vẫn gặp lỗi `Lỗi: không thể xử lý yêu cầu`
Alam

Tôi có cùng một vấn đề và đã nâng cấp lên tài khoản Blaze nhưng vấn đề vẫn như vậy. Tôi đang cố gắng sử dụng người đưa thư.
Devendra Singh


4

Đây là vấn đề liên quan đến thiết lập tập tin máy chủ. Thêm dòng sau vào tệp hots của bạn Trong Ububtu: / etc / hosts

127.0.0.1   localhost

Trong windows: c: \ windows \ System32 \ driver \ etc \ hosts

127.0.0.1   localhost

2

Lỗi của OP chỉ định máy chủ ( my-store.myshopify.com). Lỗi tôi gặp là giống nhau ở tất cả các khía cạnh ngoại trừ không có tên miền nào được chỉ định.

Giải pháp của tôi có thể giúp những người khác được vẽ ở đây bằng tiêu đề "Lỗi: getaddrinfo EAI_AGAIN"

Tôi đã gặp lỗi khi cố gắng phân phát ứng dụng NodeJs & VueJs từ một VM khác từ nơi mã được phát triển ban đầu.

Các tập tin vue.config.jsđọc:

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

Khi được phục vụ trên máy ban đầu, đầu ra khởi động là:

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

Việc sử dụng cùng các cài đặt trên máy ảo tstvm07đã khiến tôi gặp một lỗi rất giống với lỗi mà OP mô tả:

 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)

Nếu nó không rõ ràng, thay đổi vue.config.jsđể đọc ...

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

... Đã giải quyết vấn đề.



1

Tôi đã bắt đầu gặp lỗi này (mặc dù theo dõi ngăn xếp khác nhau) sau khi thực hiện một bản cập nhật nhỏ cho ứng dụng API GraphQL của tôi được vận hành bên trong một thùng chứa docker. Vì bất kỳ lý do gì, container gặp khó khăn khi giải quyết dịch vụ back-end đang được API sử dụng.

Sau khi tìm hiểu xem có một số thay đổi đã được thực hiện trong hình ảnh cơ sở của docker mà tôi đang xây dựng (nút: 13-alpine, tình cờ), tôi quyết định thử mẹo khởi động lại khoa học máy tính lâu đời nhất ... Tôi dừng lại và khởi động docker container và tất cả đã trở lại bình thường.

Rõ ràng, đây không phải là một giải pháp có ý nghĩa cho vấn đề tiềm ẩn - Tôi chỉ đăng bài này vì nó đã làm sáng tỏ vấn đề cho tôi mà không đi quá sâu vào lỗ thỏ.


0

Tôi gặp vấn đề tương tự với AWS và Serverless. Tôi đã thử với eu-central-1khu vực và nó không hoạt động nên tôi phải thay đổi nó us-east-2thành ví dụ.


0

Nếu bạn gặp lỗi này từ bên trong một container docker , ví dụ như khi chạy npm installbên trong một container trên núi cao, nguyên nhân có thể là do mạng đã thay đổi kể từ khi container được khởi động.

Để giải quyết điều này, chỉ cần dừng và khởi động lại container

docker-compose down
docker-compose up

Nguồn: https://github.com/moby/moby/issues/32106#issuecomment-578725551


-3

Nếu bạn không nhận được điều đó tại localhost, điều đó có nghĩa là bạn phải nâng cấp gói của mình do những hạn chế của tầng miễn phí


-15

cập nhật npm để sửa lỗi mới nhất cho tôi.

npm install npm@latest

vấn đề này liên quan đến kết nối mạng của bạn. do đó có thể là tạm thời. trên một kết nối internet ổn định, vấn đề này hầu như không được quan sát.


24
Làm thế nào để cập nhật trình quản lý gói có thể sửa một lỗi không liên quan đến trình quản lý gói?
FF_Dev

3
Trong phòng thủ của @ anerjan, nó có thể xảy ra khi chạy npm installvà tôi tưởng tượng thời gian cần dừng cập nhật và khởi động lại anh ấy đã kết nối lại với internet.
Rambatino
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.