Назад | Перейти на главную страницу

tcpdump: невозможно создать кольцо rx на пакетном сокете: невозможно выделить память

Я без проблем использовал tcpdump до появления этой ошибки. Я использую следующие две команды с различными вариантами, как только мой сервер подвергается атаке, поэтому пакеты автоматически сбрасываются, если скорость передачи пакетов высока.

tcpdump -i eth0 -p -nn -s0 -c 2000 -w $dumpdir/dump.`date +"%Y%m%d-%H%M%S"`.cap
tcpdump -nn -s0 -c 2000 -w $dumpdir/dump.`date +"%Y%m%d-%H%M%S"`.cap

Как только меня атакуют, в консоли появляется следующая ошибка:

tcpdump: can't create rx ring on packet socket: Cannot allocate memory

Использование команды вручную работает, поэтому я предполагаю, что что-то перегружается в случае атаки. Вот мое использование ОЗУ:

root@x:~# free -m
             total       used       free     shared    buffers     cached
Mem:          2004       1255        749          0          1         29
-/+ buffers/cache:       1225        779
Swap:         2047       1095        952

И сейчас он намного ниже, чем был, когда команда работала.

Итак, у кого-нибудь есть ответ на этот вопрос?

Вероятно, это вызвано тем, что системе не хватает памяти. Я заметил, что это работает, когда присутствует большой объем оперативной памяти.