رفع خطای nf_conntrack: table full, dropping packet در لینوکس

خطای nf_conntrack table full

خطای kernel: nf_conntrack: table full, dropping packet در لاگ سیستم (/var/log/messages) ثبت می‌شود و نشان‌دهنده پر شدن جدول ردیابی اتصالات (Connection Tracking Table) فایروال لینوکس است.

وقتی این جدول پر شود، سرور اتصالات جدید را رد می‌کند و سایت‌ها از دسترس خارج می‌شوند.

دلایل

ترافیک بسیار بالا، حمله DDoS، تعداد زیاد اتصالات همزمان، و مقدار پیش‌فرض پایین nf_conntrack_max.

بررسی وضعیت

# مقدار فعلی maximum
cat /proc/sys/net/netfilter/nf_conntrack_max

# تعداد اتصالات فعلی
cat /proc/sys/net/netfilter/nf_conntrack_count

# درصد استفاده
echo "$(cat /proc/sys/net/netfilter/nf_conntrack_count) / $(cat /proc/sys/net/netfilter/nf_conntrack_max)" | bc -l

رفع فوری

افزایش nf_conntrack_max

sysctl -w net.netfilter.nf_conntrack_max=500000

دائمی کردن

در /etc/sysctl.conf:

net.netfilter.nf_conntrack_max = 500000
net.netfilter.nf_conntrack_tcp_timeout_established = 600
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 30
sysctl -p

کاهش Timeout

کاهش timeout اتصالات غیرفعال باعث آزاد شدن جدول می‌شود:

net.netfilter.nf_conntrack_tcp_timeout_established = 600
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 30
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 30
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 30

تنظیم CSF

در فایروال CSF، تنظیمات conntrack:

nano /etc/csf/csf.conf
# CONNLIMIT و CT_LIMIT را بررسی کنید

مانیتورینگ

# مانیتورینگ زنده
watch -n 1 "cat /proc/sys/net/netfilter/nf_conntrack_count"

اگر مرتباً با این خطا مواجه هستید، سرور مجازی با RAM بیشتر یا بهینه‌سازی فایروال لازم است. کانفیگ سرور شامل بهینه‌سازی conntrack و CSF. هاست وردپرس مدیریت‌شده بدون نیاز به تنظیم فایروال.

🛡️ بهینه‌سازی فایروال

تنظیم conntrack و CSF برای ترافیک بالا.

سفارش کانفیگ سرور ←

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

متن نظر
نام*:
رایانامه*:
وب سایت / وبلاگ: