Tăng ip_conntrack_max một cách an toàn?


9

Tôi thường thấy những điều sau đây trong nhật ký của mình thường xuyên:

kernel: ip_conntrack: bảng đầy, thả gói.

Hiện tại, tôi có ip_conntrack_max được đặt thành 65536 (mặc định, RHEL5).

Giữ cho việc sử dụng bộ nhớ trong tâm trí, tôi có thể tăng giá trị này một cách an toàn bao nhiêu? Tôi đã có 4GB ram trên hộp này. Một trong những chức năng mà máy này phục vụ là máy chủ nội dung tĩnh, có thể giải thích số lượng kết nối cao và cũng có nghĩa là tôi muốn giữ càng nhiều bộ nhớ hệ điều hành được sử dụng để lưu trữ càng tốt.

Ngoài ra, sự khác biệt giữa hai sau đây là gì? / Proc / sys / net / ipv4 / netfilter / ip_conntrack_max / Proc / sys / net / ipv4 / ip_conntrack_max

Tôi nên chỉnh sửa cái nào?

Cảm ơn!

Câu trả lời:


9

Trước tiên, hãy tự hỏi mình một câu hỏi: thiết lập của bạn có yêu cầu theo dõi kết nối không? Nếu nó chỉ là một máy chủ và tường lửa / NAT được thực hiện ở một nơi khác, thì có lẽ bạn có thể vô hiệu hóa tất cả cùng nhau.

Thứ hai, kiểm tra xem các mục conntrack của bạn có ý nghĩa. Đôi khi các bảng conntrack chứa đầy rác do một số cấu hình sai của mạng hoặc tường lửa. Thông thường đó là các mục cho các kết nối chưa bao giờ được thiết lập đầy đủ. Điều đó có thể xảy ra, ví dụ như khi máy chủ nhận được các gói SYN kết nối đến, nhưng các phản hồi của máy chủ luôn bị mất ở đâu đó trên mạng.

Các máy duy nhất tôi có thông báo 'ip_conntrack: bảng full' và cần tăng ip_conntrack_max (thay vì sửa cấu hình), trong đó các bộ định tuyến thực hiện NAT cho các mạng khá lớn (hàng nghìn điểm cuối).

Nếu bạn biết bạn cần conntrack và nó thực sự cần phải lớn hơn nó, hãy tăng số lượng cho đến khi bạn không nhận được thêm tin nhắn 'bảng đầy đủ'. Và xem việc sử dụng bộ nhớ.

Một số thống kê về cấp phát bộ nhớ cho các đối tượng conntrack có thể được tìm thấy trong tệp / Proc / slabinfo.


6

Đường dẫn với "netfilter" là cách cũ để chỉ cùng một cài đặt. Bạn có thể chỉnh sửa một trong hai tập tin.

# mèo / Proc / sys / net / ipv4 / ip_conntrack_max  
655360
# mèo / Proc / sys / net / ipv4 / netfilter / ip_conntrack_max
655360
# echo 655361> / Proc / sys / net / ipv4 / ip_conntrack_max
# mèo / Proc / sys / net / ipv4 / netfilter / ip_conntrack_max
655361

Trong máy chủ Ubuntu 10.04 / 2.6.32-45, chỉ tồn tại ipv4 / netfilter / ip_conntrack_max
okwap

Câu trả lời của bạn không phù hợp với antmeetspenguin.blogspot.tw/2011/01/ Cách
okwap
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.