LINUX.ORG.RU

iptables


0

0

Не подскажите как зарезать скорость на конкретный порт с помощью iptables? вот например чтобы с :80 порта больше 64к не сосали.

Заранее спасибо.

★★★

А можно конкретный пример?

gfh ★★★
()

Хотелось бы конкретней, то, что --limit мало о чем говорит.

FreeBSD ★★★
() автор топика

И все-таки можно конкретней? Лично у меня ничего не вышло :( Плиз.

anonymous
()

В этом руководстве, даже переводчик не понял про параметр --limit-burst, а про --limit - по умолчанию limit 3/hour, т.е. принимается 3 пакета за час?, если пакет например 4096 байт, то как работает сеть при пропускной способности 12288 байт в час? :(

gfh ★★★
()

Я так понял 64К в час?
Попробуй так:

iptables -A OUTPUT -p tcp --sport 80 -m limit --limit 16/hour --limit-burst 16 -j DROP


1.  Расширение -m limit  подразумевает наличие ключей
--limit и --limit-burst.
Если не указывать эти ключи (iptables -A <цепочка> -m limit -j DROP),
то они принимают значение по-умолчанию.

2. Ключ --limit-burst - это максимальное значение счетчика пакетов,
при котором срабатывает ограничение.

3. Ключ --limit - это скорость, с которой счетчик
burst limit "откручивается назад".

andrey-x
()

Вот еще один примерчик

iptables -P OUTPUT DROP
iptables -A OUTPUT -p tcp -d xx.xx.xx.xx -m limit --limit 10/sec \
--limit-burst 1 -j ACCEPT
iptables -A OUTPUT -p tcp ! -d xx.xx.xx.xx -m limit --limit 10/sec \
--limit-burst 1 -j ACCEPT

Таким набором правил я "зарубил" скорость до 6 kb/sec
Увеличив --burst-limit до 8 "поднял" скорость до 12 kb/sec
Вобщем, смотри, проверяй, пробуй, все в твоих руках!

andrey-x
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.