Khai báo proxy cha trong Squid không tự nó có nghĩa mọi yêu cầu chuyển tiếp đều phải dùng proxy đó. Nếu đường trực tiếp vi phạm chính sách, hãy đặt yêu cầu này rõ ràng và thử tình huống proxy cha không sẵn sàng.

Với Squid 6.13, ví dụ này đặt tên một proxy cha và cấm chuyển tiếp trực tiếp tới nguồn cho một nguồn máy khách:

cache_peer 192.0.2.20 parent 3128 0 no-query default name=upstream
acl routed_client src 198.51.100.27/32
never_direct allow routed_client

Cả hai địa chỉ đều là giá trị giữ chỗ. Với thử nghiệm upstream có kiểm soát cho phép proxy cha HTTP công khai, chọn địa chỉ từ danh sách proxy HTTP. Giữ chính sách http_access riêng chỉ cho các máy khách mong muốn. Quy tắc định tuyến không cấp quyền dùng proxy cho máy khách.

Kiểm tra các quy tắc định tuyến hiện có

no-query tắt truy vấn ICP tới peer này. Số không là cổng truy vấn của peer, không phải bộ lắng nghe HTTP. Bộ lắng nghe phía máy khách và quy tắc truy cập vẫn riêng biệt.

Xem thiết lập always_direct hiện có và cách chọn peer khác trước khi thêm khối này. Từ chối một kết quả khớp trong always_direct không tự nó bắt buộc dùng proxy cha. Quy tắc never-direct rõ ràng thể hiện yêu cầu đó cho máy khách được chọn.

Điều này quản lý các giao dịch cần chuyển tiếp. Mục bộ nhớ đệm cục bộ còn dùng được có thể phục vụ mà không liên hệ proxy cha, nên thiếu kết nối mới tới proxy cha không tự động là vi phạm định tuyến.

Kiểm tra đường đi và cách xử lý lỗi

Dùng đích có kiểm soát và đối chiếu thông tin phân cấp trong nhật ký truy cập với quan sát ở đích. Chỉ trạng thái HTTP cuối không cho biết Squid dùng proxy cha hay đường trực tiếp.

Trong thử nghiệm bảo trì, làm proxy cha không sẵn sàng rồi lặp lại cùng yêu cầu chưa lưu đệm. Nếu chính sách cấm chuyển tiếp trực tiếp, giao dịch phải thất bại thay vì tới nguồn qua đường khác. Chỉ làm trên dịch vụ bạn kiểm soát và khôi phục cấu hình mong muốn sau đó.

Bài viết liên quan