Добрый день.
Не так давно начал конфигурировать машинку, которая будет использоваться в качестве роутера-перемычки для контроля за загрузкой каналов и выслеживанием голодных на трафик пользователей.
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.0net.ipv4.ip_forward=1iptables -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.20310.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