URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 41738
[ Назад ]

Исходное сообщение
"Возможно ли одновременно использовать два шлюза на Линуксе?"

Отправлено IVANidze , 17-Мрт-04 01:31 
Конфигурация:
Сервер 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 или что-то менять кардинально! не охота переделывать биллинг...


Содержание

Сообщения в этом обсуждении
"Возможно ли одновременно использовать два шлюза на Линуксе?"
Отправлено ovax , 17-Мрт-04 02:01 
iproute2 тебе поможет.
только вначале реши для себя по какому критерию ты будешь разруливать трафик на два канала.

"Возможно ли одновременно использовать два шлюза на Линуксе?"
Отправлено игорь , 17-Мрт-04 08:33 
всё напрямую зависит от того зачем тебе нужен второй шлюз.
я например ничего не делаю. указал маршрут (шлюз) по умолчанию через eth0 и всё. на eth1 у меня одна подсеть. eth2 - приватный.
в таблице маршрутизации присутствует маршрут через второй интерфейс и этого хватает. скорей всего у тебя то-же. два шлюза для выхода в одну точку (на mail.ru например) ты вряд-ли стал бы делать.
можно поднять gated для rip или ospf. у меня так было, но потом я gated убрал поскольку и без него работает.
если что-то не понравится можно написать статический маршрут -
routе add ... gw ... для выхода в некую сеть.
а трафик дальше будешь считать уже как получится.

"Возможно ли одновременно использовать два шлюза на Линуксе?"
Отправлено IVANidze , 17-Мрт-04 09:06 
Видимо не правильно объяснил... Мне не надо, чтобы один пользователь использовал одновременно два канала в инет. Мне нужно разбить пользователей на два канала. Чтоб одни ходили через один, другие - через другой. Кому куда - задаём по списку, с помощью файрвола.
Если это можно сделать в таблице маршрутизации - пожалуйста подробно, дятел я ;) Одной строчкой для всех, или для каждого пользователя делать запись?

"Возможно ли одновременно использовать два шлюза на Линуксе?"
Отправлено Xela , 17-Мрт-04 09:59 
>Видимо не правильно объяснил... Мне не надо, чтобы один пользователь использовал одновременно
>два канала в инет. Мне нужно разбить пользователей на два канала.
>Чтоб одни ходили через один, другие - через другой. Кому куда
>- задаём по списку, с помощью файрвола.
>Если это можно сделать в таблице маршрутизации - пожалуйста подробно, дятел я
>;) Одной строчкой для всех, или для каждого пользователя делать запись?
>

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