It-e.RU
Цифровой двигатель вашего бизнеса.

Ограничение скорости передачи данных в ipfw

Ограничение скорости передачи данных в ipfw

Ограничение скорости передачи данных в ipfw


Запретить открывать более 30 соединений с одного IP
Запретим более 30 коннектов для 80 порта сервера 1.2.3.4.
ipfw add allow tcp from any to 1.2.3.4 80 limit src-addr 30
ipfw add allow tcp from any to 1.2.3.4 80 via fxp0 setup limit src-addr 10
Вместо src-addr можно использовать src-port, dst-addr, dst-port
Распределение канала
Собираем ядро с опциями:
options DUMMYNET
options IPFIREWALL
Ограничиваем трафик для сеток 1.1.1.0/24 и 3.3.3.0/24 на 14000 кбит/с:
ipfw add pipe 50 tcp from any to 1.1.1.0/24 via fxp0
ipfw add pipe 50 tcp from any to 3.3.3.0/24 via fxp0
ipfw pipe 50 config bw 14Kbit/s
Для внесения задержки на N ms, используйте delay N после config. Для установки веса данного пайпа по отношению к другим пайпам используйте weight вес. Для WF2Q ограничения трафика используйте ipfw queue: (queue N config [pipe pipe_nr] [weight weight] [queue {slots | size}) Если возникает необходимость организовать “канал” для каждого пользователя из данной сети то пишем:
ipfw pipe 10 config mask dst-ip 0×000000ff bw 1024bit/s queue
ipfw add pipe 10 tcp from any to 1.1.1.0/24 via fxp0
Теперь каждый хост из сети 1.1.1.0/24 имеет свой канал 1024bit/s
Итого имеем: одну толстую трубу на 7К и 4 очереди в нее. У первой приоритет 75% канала. У остальных – по 50%
/sbin/ipfw pipe 1 config bw 7000Kbit/s
/sbin/ipfw queue 1 config pipe 1 weight 75 mask dst-ip 0×00000000
/sbin/ipfw queue 2 config pipe 1 weight 50 mask dst-ip 0×00000000
/sbin/ipfw queue 3 config pipe 1 weight 50 mask dst-ip 0×00000000
/sbin/ipfw queue 4 config pipe 1 weight 50 mask dst-ip 0×00000000
/sbin/ipfw add queue 1 ip from any to 192.168.0.0/24
/sbin/ipfw add queue 2 ip from any to 192.168.1.0/24
/sbin/ipfw add queue 3 ip from any to 192.168.2.0/24
/sbin/ipfw add queue 4 ip from any to 192.168.3.0/24

Пожалуйста, уважайте труд автора, при копировании материалов сохраняйте ссылку на источник!

Комментарии (0)







Разрешённые теги: <b><i><br>Добавить новый комментарий: