Конфигурация:
Сервер PH 8.0, 3 сетевухи: 1 в локалку, две в интернет.
С одним каналом пользователи ходили в инет через маскарадинг (ipchains).
Сейчас задача разруливать пользователей на два канала. Как это сделать, если сервак использует только один шлюз по умолчанию?eth0: 192.168.1.222, 192.168.1.0/24 -- инет1, шлюз 192.168.1.221
eth1: 192.168.0.1, 192.168.0.0/24 -- локалка
eth2: 10.0.0.1, 10.0.0.0/24 -- инет2, шлюз 10.0.0.2с одним каналом правила простые:
-A forward -s 192.168.0.x -j MASQ
-A output -d 192.168.0.x -s ! 192.168.0.0/24 -l -- это для подсчёта траффикас двумя каналами логично было бы:
-A forward -i eth0 -s 192.168.0.x -j MASQ
-A forward -i eth2 -s 192.168.0.x -j MASQ
строчка для логов остаётся та же
...
НО
что делать с таблицей роутинга? в ней не шибко разбираюсь, но подозреваю что править надо её.
только не советуйте, пожалуйста, переходить на iptables или что-то менять кардинально! не охота переделывать биллинг...
iproute2 тебе поможет.
только вначале реши для себя по какому критерию ты будешь разруливать трафик на два канала.
всё напрямую зависит от того зачем тебе нужен второй шлюз.
я например ничего не делаю. указал маршрут (шлюз) по умолчанию через eth0 и всё. на eth1 у меня одна подсеть. eth2 - приватный.
в таблице маршрутизации присутствует маршрут через второй интерфейс и этого хватает. скорей всего у тебя то-же. два шлюза для выхода в одну точку (на mail.ru например) ты вряд-ли стал бы делать.
можно поднять gated для rip или ospf. у меня так было, но потом я gated убрал поскольку и без него работает.
если что-то не понравится можно написать статический маршрут -
routе add ... gw ... для выхода в некую сеть.
а трафик дальше будешь считать уже как получится.
Видимо не правильно объяснил... Мне не надо, чтобы один пользователь использовал одновременно два канала в инет. Мне нужно разбить пользователей на два канала. Чтоб одни ходили через один, другие - через другой. Кому куда - задаём по списку, с помощью файрвола.
Если это можно сделать в таблице маршрутизации - пожалуйста подробно, дятел я ;) Одной строчкой для всех, или для каждого пользователя делать запись?
>Видимо не правильно объяснил... Мне не надо, чтобы один пользователь использовал одновременно
>два канала в инет. Мне нужно разбить пользователей на два канала.
>Чтоб одни ходили через один, другие - через другой. Кому куда
>- задаём по списку, с помощью файрвола.
>Если это можно сделать в таблице маршрутизации - пожалуйста подробно, дятел я
>;) Одной строчкой для всех, или для каждого пользователя делать запись?
>iptables -t mangel -A PREROUTING -s одна_под_сеть/24 -j ROUTE -gw gw1_ip_add_ress
iptables -t mangel -A PREROUTING -s другая_под_сеть/24 -j ROUTE -gw gw2_ip_add_ress