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

Ограничение скорости пакетов udp, предназначенных для Linux-машины

Есть ли способ ratelimit udp-пакетов, предназначенных для моей Linux-машины? Я чувствую отбрасывание пакетов UDP, предназначенных для моей машины.

Было ли в Linux конфигурирование ограничения скорости UDP по умолчанию? Я видел конфигурирование ограничения скорости icmp в /proc/sys/net/ipv4/icmp_ratelimit.

Да, это возможно с recent модуль iptables. Для Вот:

iptables -I INPUT -p udp -i eth0 -m state --state NEW -m recent \
    --update --seconds 60 --hitcount 10 -j DROP

Или, если вы хотите ограничить количество пакетов ICMP, вы можете сделать это с помощью

iptables -I INPUT -p icmp -i eth0 -m state --state NEW -m recent \
    --update --seconds 60 --hitcount 10 -j DROP

Ограничитель пакетов (который является recent iptables-module) не зависят от условий, при которых пакеты должны работать.

Вы можете указать временной интервал и порог пакетов. В этом примере будет разрешено только 10 пакетов UDP за 1 минуту.

Вероятно, вы хотите ограничить не соединение udp в целом, а только порт назначения. Например, это может быть полезно, если вы хотите остановить не очень жесткую DNS-DDOS-атаку. В этом случае вы также должны указать номер порта с флагом --dport 53.

В /proc файл, который вы упомянули, касается пакетов icmp. Это не имеет ничего общего с udp.

Удачи!