ip_conntrack: таблиця заповнена, падіння пакета

linux shell

Час від часу на зайнятих серверах з великим обсягом мережевих з'єднань можна виявити, що ваш таблиця conntrack ядра повний, веб-сервери починають повільно йти, як і зображення та весь пов'язаний вміст. Якщо ви подивитеся на журнали, то можете знайти таку помилку ядра:

ip_conntrack: таблиця заповнена, падіння пакета

Ядро linux використовує ip_conntrack для відстеження стану кожної мережевого з'єднання, а якщо ваша активність у мережі велика, ви можете закінчити таблицю з повною кількістю записів, тобто коли виникає ця помилка.

Помилку можна знайти багатьма способами:

Пошук даних dmesg

dmesg | grep conntrack

Завантажте файл журналу повідомлень у реальному часі

хвіст -f / var / log / messages | grep conntrack

Зробіть гріп повсюди

grep conntrack / var / log / messages

У будь-якому випадку, коли ви виявите помилку, вам потрібно виконати деякі команди, щоб зрозуміти, чому це відбувається та як це виправити. Давайте почнемо:

wc -l / proc / net / ip_conntrack

Дасть вам знати, скільки з'єднань відкрито прямо зараз.

sysctl -a | grep conntrack_max

Виведе, що таке обмеження conntrack, наприклад:

net.ipv4.netfilter.ip_conntrack_max = 65536

Як я можу підвищити значення ip_conntrack?

nano -w /etc/sysctl.conf

На CentOS 6.x вам може знадобитися додати цю змінну:

net.nf_conntrack_max = 165536

На CentOS 5.x і попередній спробуйте з цим:

net.ipv4.netfilter.ip_conntrack_max = 165536

Збережіть файл і запустіть цю команду, щоб застосувати зміни:

sysctl -p

Якщо ви отримуєте такі помилки:

помилка: "net.nf_conntrack_max" - це невідома ключові помилки: "net.ipv4.ip_conntrack_max" - це невідома клавіша

Це означає, що модуль conntrack не завантажується у вашому ядрі, спробуйте завантажити його вручну, використовуючи modprobe, наприклад:

modprobe nf_conntrack

Потім застосуйте зміни:

sysctl -p

Не забудьте стежити за журналами системи та час від часу дивитися його, щоб побачити, чи існують нові ip_conntrack: таблиця заповнена, що скидають помилки пакету, то в деяких випадках може знадобитися поставити значення ще вище.

залишити коментар

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.