Помогите разобраться с маршрутизацией (Появился второй канал в Интернет)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

beerdrinker
Сообщения: 1

Помогите разобраться с маршрутизацией

Сообщение beerdrinker »

Не пинайте сильно, а лучше помогите кто чем сможет (сижу на больничном и пишу по памяти).
Нигде не смог найти решения своей задачи (видно она слишком проста).

Был собран шлюз для выхода конторы в Интернет.
Собран на CentOS 5.0.

Внешний интерфейс eth0:
IP-адрес . . . . . . . : 10.1.1.2
Маска подсети . . : 255.255.255.252

Внутренний интерфейс eth1:
IP-адрес . . . . . . . : 192.168.1.1
Маска подсети . . : 255.255.255.0

Шлюз у провайдера - 10.1.1.1

route -n
Destination. . . .Gateway. . . . . .Genmask. . . . . . . . Flags. . Metric. . Ref. . Use. . .Iface
10.1.1.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth0
192.168.1.0. . . 0.0.0.0. . . . . . . 255.255.255.0. . . . U. . . . . 0. . . . . .0. . . .0. . . . .eth1
0.0.0.0. . . . . . . 10.1.1.1. . . . . . 0.0.0.0. . . . . . . . . . UG. . . . 0. . . . . .0. . . .0. . . . .eth0

NAT:
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j SNAT --to-source 10.1.1.2

Все прекрасно работает.

-----------------------------------------------

Теперь появился второй канал в Интернет (планируется для VIP доступа).

Подскажите как правильно настроить маршрутизацию, чтобы все корректно работало.
(используя route и iptables)

Второй внешний интерфейс eth2:
IP-адрес . . . . . . . : 10.1.2.2
Маска подсети . . : 255.255.255.252

Шлюз 2-го провайдера - 10.1.2.1

После добавления второго интерфейса - eth2
route -n
Destination. . . .Gateway. . . . . .Genmask. . . . . . . . Flags. . Metric. . Ref. . Use. . .Iface
10.1.1.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth0
10.1.2.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth2
192.168.1.0. . . 0.0.0.0. . . . . . . 255.255.255.0. . . . U. . . . . 0. . . . . .0. . . .0. . . . .eth1
0.0.0.0. . . . . . . 10.1.1.1. . . . . . 0.0.0.0. . . . . . . . . . UG. . . . 0. . . . . .0. . . .0. . . . .eth0

Выполняем
route add -net 10.1.2.0 netmask 255.255.255.252 gw 10.1.2.1

Имеем
route -n
Destination. . . .Gateway. . . . . .Genmask. . . . . . . . Flags. . Metric. . Ref. . Use. . .Iface
10.1.1.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth0
10.1.2.0. . . . . . 10.1.2.1. . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth2
10.1.2.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth2
192.168.1.0. . . 0.0.0.0. . . . . . . 255.255.255.0. . . . U. . . . . 0. . . . . .0. . . .0. . . . .eth1
0.0.0.0. . . . . . . 10.1.1.1. . . . . . 0.0.0.0. . . . . . . . . . UG. . . . 0. . . . . .0. . . .0. . . . .eth0


Удалить дефолтный маршрут для 10.1.2.0 (3-я строка) не получается (а может и не нужно его удалять).
Или все-таки нужно? Что скажет мировое сообщество.

Еще наверное требуется добавить в NAT:
iptables -t nat -A POSTROUTING -o eth2 -s 192.168.1.0/24 -j SNAT --to-source 10.1.2.2

-----------------------------------------------

Или даже наверное лучше так:

Добавить
Второй внутренний интерфейс eth1:0
IP-адрес . . . . . . . : 192.168.2.1
Маска подсети . . : 255.255.255.0

Тогда
route -n
Destination. . . .Gateway. . . . . .Genmask. . . . . . . . Flags. . Metric. . Ref. . Use. . .Iface
10.1.1.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth0
10.1.2.0. . . . . . 10.1.2.1. . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth2
10.1.2.0. . . . . . 0.0.0.0. . . . . . . 255.255.255.252. . U. . . . . 0. . . . . .0. . . .0. . . . .eth2
192.168.2.0. . . 0.0.0.0. . . . . . . 255.255.255.0. . . . U. . . . . 0. . . . . .0. . . .0. . . . .eth1
192.168.1.0. . . 0.0.0.0. . . . . . . 255.255.255.0. . . . U. . . . . 0. . . . . .0. . . .0. . . . .eth1
0.0.0.0. . . . . . . 10.1.1.1. . . . . . 0.0.0.0. . . . . . . . . . UG. . . . 0. . . . . .0. . . .0. . . . .eth0


И привести NAT к виду:
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j SNAT --to-source 10.1.1.2
iptables -t nat -A POSTROUTING -o eth2 -s 192.168.2.0/24 -j SNAT --to-source 10.1.2.2

А уже в LANe шлюзовать: VIP-канал на 192.168.2.1, а всех остальных на 192.168.1.1

-----------------------------------------------

Работоспособно ли все это, или я заблуждаюсь.
Укажите пожалуйста на ошибки и подскажите работоспособную конфигурацию.


P.S. Вопрос к знатокам RH подобных систем.
________________________________________

Не удалось добавить маршрут через /etc/sysconfig/network-scripts/route-eth2
Может кто-то знает формат этого файла (в инете попадались два различных написания).
И где вообще поискать инфу по этим скриптам и файлам.
По-моему раньше было что-то типа /etc/sysconfig/static-route, но сейчас там ничего нет.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: Помогите разобраться с маршрутизацией

Сообщение pelmen »

Надо тебе с помощью iproute2 адвансед маршрутизацию строить.
Спасибо сказали:
Venegance
Сообщения: 119
ОС: Debian

Re: Помогите разобраться с маршрутизацией

Сообщение Venegance »

В таблице маршрутизации одному префиксу соответствует только одна запись -> невозможно иметь в таблице маршрутизации несколько маршрутов по-умолчанию, активным будет последний добавленый. Но никто не запрещает иметь несколько таблиц маршрутизации. Поэтому, используя lartc, создайте две таблицы маршрутизации, в каждой по разному шлюзу по умолчанию, и, при помощи меток, пускайте одних пользователей(или определенный вид сервисов) через одну таблицу, других - через другую.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: Помогите разобраться с маршрутизацией

Сообщение pelmen »

а вот это
route add -net 10.1.2.0 netmask 255.255.255.252 gw 10.1.2.1
полный бред :)
Спасибо сказали:
ALexhha
Сообщения: 109

Re: Помогите разобраться с маршрутизацией

Сообщение ALexhha »

Может кто-то знает формат этого файла (в инете попадались два различных написания).

прочитать Deployment Guide (yum install Deployment_Guide-ru-RU). Раздел - "1.4. Configuring Static Routes"
Спасибо сказали: