Ограничить ежемесячный трафик на интерфейс
Я пытаюсь развернуть приложение для ограниченного ежемесячного трафика. Подскажите пожалуйста, как мне это сделать? Мне нужно ограничить трафик на интерфейс под Linux.
1 ответ
Вы можете взглянуть на расширение квоты iptables:
http://ipset.netfilter.org/iptables-extensions.man.html
Идея может заключаться в том, чтобы маркировать пакеты на основе их ip/ порта назначения и использовать модуль сопоставления квот и цель MARK.
Затем эту отметку можно использовать для отбрасывания трафика или, что еще лучше, для перенаправления его в другую службу, предупреждающую пользователя о достигнутой квоте.
В качестве примера представим службу telnet, подобную этой:
iptables -t mangle -I PREROUTING --dport 23 -d 1.2.3.4 -m отметка -m квота! --quota 1000000 -j MARK - set-mark 0xa
iptables -t mangle -I PREROUTING --sport 23 -s 1.2.3.4 -m mark -m quota! --quota 1000000 -j MARK - set-mark 0xa
iptables -t nat -I PREROUTING -m mark --mark 0xa -j REDIRECT --to-ports 2323
В этом случае пользователь woulb будет перенаправлен на фиктивную службу telnet, в которой будет указана квота службы на порте 2323.
Другой подход может быть