Điểm:0

Cách gỡ lỗi Squid ERR_DNS_FAIL

lá cờ bd

Tôi đang quản lý một số proxy web chạy Squid 4.10 trên Ubuntu 20.04LTS ở một số địa điểm được phân phối trên toàn thế giới. Một trong số họ đã phát triển một thói quen khó chịu là thỉnh thoảng không truy cập được một trang web. Thay vào đó, người dùng nhận được một trang lỗi có nội dung:

Hừm... không vào được trang này
Có vẻ như trang web tại <URL> có thể đang gặp sự cố,
hoặc nó có thể đã di chuyển vĩnh viễn đến một địa chỉ web mới.
ERR_TUNNEL_CONNECTION_FAILED

Sau khi thêm %err_code/%err_detail đến cuối phần liên quan định dạng nhật ký như được đề xuất trên bài danh sách gửi thư này, Các mục truy cập Squid.log dành cho các lần truy cập không thành công trông như thế này:

1635169354.239 171 10.72.1.103 KHÔNG/503 0 KẾT NỐI ad.360yield.com:443 - HIER_
KHÔNG/- - ERR_DNS_FAIL/-

Trạng thái mực là KHÔNG CÓ/503, và mã lỗi và chi tiết luôn ERR_DNS_FAIL/-. Tất nhiên, dấu thời gian, địa chỉ IP của máy khách và URL được yêu cầu sẽ khác nhau.

Mỗi lần xảy ra sự cố đều ảnh hưởng đến một FQDN đơn lẻ hoặc một số lượng rất nhỏ FQDN, thường là tất cả từ cùng một tổ chức (ví dụ:lm.licenses.adobe.com và cc-api-data.adobe.io, cả hai đều từ Adobe.) Tất cả các truy cập khác tiếp tục hoạt động bình thường. Một lần xuất hiện thường kéo dài từ năm đến mười phút. Trong thời gian đó, tất cả các máy khách cố gắng truy cập FQDN đó đều bị ảnh hưởng. Trước và sau đó, cùng một FQDN hoạt động mà không gặp sự cố. Không có quy luật rõ ràng trong các FQDN bị ảnh hưởng.

Một số sự cố được kèm theo một thông báo như:

25/10/2021 15:42:34 kid1| ipcacheParse Không có bản ghi Địa chỉ để phản hồi lại 'ad.360yield.com'

Trong /var/log/squid/cache.log nhưng trong phần lớn các trường hợp không có gì được ghi lại ở đó.

Làm thế nào tôi có thể tìm ra những gì đi sai ở đó?

Điểm:0
lá cờ bd

Tăng loglevel cho tra cứu DNS lên 6 bằng cách đặt lệnh

debug_options TẤT CẢ,1 78,6

vào trong /etc/squid/squid.conf làm cho Squid đăng nhập /var/log/squid/cache.log máy chủ tên nào đã được sử dụng cho các truy vấn không thành công, ví dụ:

26/10/2021 16:16:43.088 kid1| 78,3| dns_internal.cc(1369) idnsRead: idnsRead: FD 17: đã nhận 32 byte từ 127.0.0.1:53
26/10/2021 16:16:43.088 kid1| 78,3| dns_internal.cc(1176) idnsGrokReply: idnsGrokReply: QID 0x376f, 0 câu trả lời

Các lỗi sau đó có thể được điều tra thêm trên máy chủ định danh đó.

Trong trường hợp của tôi, điều này chỉ ra một dnsmasq Máy chủ proxy DNS chạy trên cùng một máy. Kích hoạt đăng nhập truy vấn dnsmasq tiết lộ rằng một trong bốn máy chủ tên bên ngoài được định cấu hình chịu trách nhiệm cho các lỗi. Các truy vấn được gửi đến máy chủ định danh đó không thành công, trong khi các truy vấn được gửi đến một trong ba máy chủ còn lại đã thành công. Vì vậy, giải pháp là loại bỏ máy chủ định danh bên ngoài bị lỗi khỏi cấu hình.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.