Фильтрация ICMP-пакетов в современных операционных системах, например в Linux, работает с помощью брандмауэров — программ, которые анализируют входящие или исходящие сетевые пакеты и пропускают только те, которые соответствуют конкретным предопределённым условиям. 4
Процесс фильтрации включает следующие этапы: 1
- Ядро запускается с тремя встроенными цепочками правил фильтрации: входной (input), выходной (output) и пересылочной (forward). 1 В дополнение к встроенным можно создавать новые цепочки правил. 1
- Каждое правило содержит условие и, возможно, действие, которое надо произвести с пакетом, если его заголовок соответствует условию. 1
- Если заголовок пакета не соответствует условию, то проверяется следующее правило в цепочке. 1
- Если заголовок пакета не удовлетворяет ни одному условию, используется политика самой цепочки. 1 В защищённых системах эта политика обычно требует уничтожить или отвергнуть пакет. 1
Некоторые действия, которые могут выполняться с пакетом:
- REJECT — отклонить пакет с помощью пакета ошибок протокола управляющих сообщений в интернете (ICMP). 45
- DROP — удалить (игнорировать) пакет. 45
- LOG — записать в журнал сообщение с описанием пакета. 5
- ULOG — записать сообщение в журнал посредством команды, которая может быть более эффективна и адаптируема, чем syslogd, для обработки большого количества сообщений. 5
ICMP (протокол межсетевых управляющих сообщений) используется для передачи дополнительной информации о соединении. 5 Он применяется, например, для теста соединений в сети командой ping, для сообщения при блокировании пакета межсетевым экраном, для сообщений о переполнении буфера приёма и т. п.. 5