Блокирование трафика от клиента на хост

Автор Дух системы, 09 июля 2013, 13:05:42

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Дух системы

Добрый день.
Не так давно начал конфигурировать машинку, которая будет использоваться в качестве роутера-перемычки для контроля за загрузкой каналов и выслеживанием голодных на трафик пользователей.

debian 5 lenny

eth0
ip 192.168.1.2
sm 255.255.255.0
gw 192.168.1.1

eth0:1
ip 192.168.1.3
sm 255.255.255.0

net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

внутри сети есть три канала связи, которые дают связь к нескольким серврерам за ними
route add -host 10.1.1.1 gw 192.168.1.1
route add -host 10.1.1.2 gw 192.168.1.202
route add -host 10.1.1.3 gw 192.168.1.203

10.1.1.1 это прокси сервер, который принимает подключение на 8080 порту, ну и раздает доступ в интернет соответственно, покрутить его возможности нету

цель: отслеживать нагрузку трех гейтвеев с помощью darkstat, и вносить изменения в маршрутизацию по мере сильной активности пользоватлеей.

на данный момент придумал пока только такую реализацию:
скрипт пингует внешние сервера, и если задержки превышают разумные пределы, перенаправляет весь трафик, что идет на прокси, вникуда
route del -host 10.3.1.1
route add -host 10.3.1.1 gw 10.3.1.255//вникуда

таким образом все мои пользователи будут отключены от прокси, чего делать можно только в экстренных случаях.
вопрос:
как можно реализовать возможность смены маршрута или полное блокирование (возможно с помощью iptables) только какого-то определенного клиента, а не всех?

конфиг ip tables
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE