Jump to content

Аномалия CentOS+iptables

Доброе время суток

 

Есть проблема. Возможно кто-то уже сталкивался с чем-то подобным или знает как продиагностировать.

 

Сервер, работает под CentOS 6, NAT - iptables.

Обслуживает 1-1.5к клиентов,

максимальная загрузка процессора была (до недавнего времени) - 18%,

количество сессий - до 92к.

И вот, в один момент, сессий становится 524к, процессор пригружается до 31% (но, вскоре, возвращается в норму),

Трафик на интерфейсах до 700M-rx/100M-tx почти не изменился.

а количество сессий остается на уровне 524к

 

Что это может быть и как найти причину аномалии?

post-128258-052601600 1434743058_thumb.jpg

Edited by entwine

Share this post


Link to post
Share on other sites

При появлении флуда возрос бы трафик на интерфейсе.

И Flow-control настроен на порту каждого клиент, так-что маловероятно.

 

Понятно, что какой-то хост мог создать такое количество малоактивных сессий,

но инструмента, который мог бы его выявить, я пока не нашел.

post-128258-084772200 1434781034_thumb.jpg

Edited by entwine

Share this post


Link to post
Share on other sites

При появлении флуда возрос бы трафик на интерфейсе.

И Flow-control настроен на порту каждого клиент, так-что маловероятно.

 

Понятно, что какой-то хост мог создать такое количество малоактивных сессий,

но инструмента, который мог бы его выявить, я пока не нашел.

 

 

egrep -i established /proc/net/ip_conntrack

Share this post


Link to post
Share on other sites

egrep -i established /proc/net/ip_conntrack

 

conntrack -L лучше. Еще можно netflow глянуть в момент когда нагрузка возрастает (если есть).

Share this post


Link to post
Share on other sites

В коде драйвера тоже немногословное описание:

IXGBE_EICR_ECC		0x10000000 /* ECC Error */

 

Полистайте дата щит: http://www.intel.com/content/dam/www/public/us/en/documents/datasheets/82598-10-gbe-controller-datasheet.pdf

Share this post


Link to post
Share on other sites

Спасибо за подсказки, буду копать.

 

В ipnat была полезная команда:

ipnat -l | awk '{print $2}' | sort | uniq -c | sort -r | grep "10.0." | less

которая показывала топ клиентов, у который максимальное колличество активных сессий.

 

Возможно в iptabes есть чтото подобное?

Тогда можно было бы найти IP, который создал "лишние" 500к сессий.

Share this post


Link to post
Share on other sites

При появлении флуда возрос бы трафик на интерфейсе.

 

Не верно, наоборот бы упал. Выросло бы PPS.

 

И Flow-control настроен на порту каждого клиент, так-что маловероятно.

 

От unicast dos оно никак не спасет, не тешьте себя мнимой надеждой.

 

Понятно, что какой-то хост мог создать такое количество малоактивных сессий,

 

Мог, вполне мог. Вы статистику не ведете? netflow не собираете?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.