[Sysadmins] Маршрутизация по признаку UID

Ivan Fedorov =?iso-8859-1?q?ns=5Falt=5Fsysadmins_=CE=C1_neural=2Eru?=
Сб Апр 28 19:45:44 MSD 2007


Olvin пишет:
> Есть на одной единственной машине несколько пользователей (включая всех
> системных). Один из этих пользователей - второстепенный. Хочется считать
> трафик по этому пользователю отдельно от остальных (как исходящий, так и
> входящий; с подсчётом исходящего трафика проблем нет - критерий
> --uid-owner), но с почти полноценным интернетом для него. Т.е. максимум
> NAT, но никаких прокси. Дополнительного компьютера нет, виртуальную
> машину для этих целей заводить стрёмно - памяти мало (256Mb) и процессор
> хиленький (Duron 900MHz)
> 
> Кто-нибудь сталкивался с такой задачей?
> 
> У меня пока идея такая: создать интерфейс (линк в терминах iproute2) и
> исходящий трафик от второстепенного пользователя пускать через него
> (т.е. персонально для этого пользователя в качестве default gw сделать
> адрес этого интерфейса), а весь входящий трафик автоматом будет через
> этот же интерфейс идти (martians go home при этом :) Трафиком DNS можно
> принебречь при подсчётах.
> 
> Как такой интерфейс проще всего создать?
> Есть ли другие идеи?

Можно как в vserver написать модуль ядра который "ловит" системные 
вызовы навроде bind и listen и вешает их на конкретный alias на обычном 
интерфейсе. У меня раньше был такой модуль, но IMHO это грязный хак.



Подробная информация о списке рассылки Sysadmins