The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"2 канала в интернет"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"2 канала в интернет"  
Сообщение от Vsiliy (ok) on 29-Ноя-06, 11:03 
Имеется 2 канала от разных провов, и стоит цель чтобы каналы работали одновременно (один для почтовика и второй для сёрфинга в инет)
проблема в том что 2 дефолтовых шлюза быть неможет как прописать таблицу маршрутизации чтоб каналы не конфликтовали м\у собой

вот таблица маршрутизации для одно канала
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.3.0.6        *               255.255.255.255 UH    0      0        0 tun0
ХХХ01-L4.ov     *               255.255.255.255 UH    0      0        0 ppp0
195.ххх.ххх.120 *               255.255.255.252 U     0      0        0 eth2
192.168.2.0     *               255.255.255.0   U     0      0        0 eth0
192.168.0.0     10.3.0.6        255.255.255.0   UG    0      0        0 tun0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth2
default         ХХХ01-L4.ov     0.0.0.0         UG    0      0        0 ppp0

второй канал висит на интерфейсе eth2

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "2 канала в интернет"  
Сообщение от _KAV_ (ok) on 29-Ноя-06, 11:06 
Здесь , раздел документации, LARTC (можно смотреть в переводе Киселева)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "2 канала в интернет"  
Сообщение от Syava (ok) on 29-Ноя-06, 11:50 
копай файрвол
ipfw add fwd ИП_Шлюз_ed2 from any to any 80
только не забудь пронатировать
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "2 канала в интернет"  
Сообщение от Vsiliy (??) on 29-Ноя-06, 18:04 
Короче настроил маршрутизацию подобным образом:
Раздельный доступ

Первый вопрос заключается в том, как организовать маршрутизацию таким образом, чтобы ответы на запросы, приходящие через определенного провайдера, скажем ровайдера 1, уходили через того же провайдера.

Давайте определим некоторые переменные. Пусть $IF1 будет именем первого интерфейса (if1 на рисунке), а $IF2 -- именем второго. Тогда $IP1 будет IP адресом $IF1 , а $IP2 -- IP адресом $IF2 . Далее, $P1 это IP-адрес шлюза провайдера 1, а $P2 -- IP адрес шлюза провайдера 2. Наконец, $P1_NET это IP сеть, к которой принадлежит $P1 , а $P2_NET -- сеть, к которой принадлежит $P2 .

Создадим две дополнительные таблицы маршрутизации, скажем T1 и T2. Добавим их в файл /etc/iproute2/rt_tables. Теперь можно настроить эти таблицы следующими командами:
ip route add $P1_NET dev $IF1 src $IP1 table T1
ip route add default via $P1 table T1
ip route add $P2_NET dev $IF2 src $IP2 table T2
ip route add default via $P2 table T2
        
Ничего особо эффектного, маршрут к шлюзу и маршрут по-умолчанию через этот шлюз. Точно так же, как и в случае одного провайдера, но по таблице на каждого провайдера. Заметьте, что маршрута к сети, в которой находится шлюз достаточно, потому что он определяет как найти все хосты в этой сети, включая сам шлюз.

Теперь нужно настроить главную таблицу маршрутизации. Хорошо бы маршрутизировать пакеты для сетей провайдеров через соответствующие интерфейсы. Обратите внимание на аргумент `src', который обеспечивает правильный выбор исходного IP-адреса.
ip route add $P1_NET dev $IF1 src $IP1
ip route add $P2_NET dev $IF2 src $IP2        
        
Теперь задаем маршрут по умолчанию:
ip route add default via $P1      
        
Зададим правила маршрутизации. Они будут отвечать за то, какая таблица будет использоваться при маршрутизации. Вы хотите, чтобы пакет с определенным адресом источника маршрутизировался через соответствующий интерфейс:
ip rule add from $IP1 table T1
ip rule add from $IP2 table T2        
        
Этот набор команд обеспечивает маршрутизацию ответов через интерфейс, на котором был получен запрос.
    
Заметка читателя Рода Роака (Rod Roark): ' если $P0_NET это локальная сеть, а $IF0 -- соответствующий ей интерфейс, желательно задать следующие команды:
ip route add $P0_NET     dev $IF0 table T1
ip route add $P2_NET     dev $IF2 table T1
ip route add 127.0.0.0/8 dev lo   table T1
ip route add $P0_NET     dev $IF0 table T2
ip route add $P1_NET     dev $IF1 table T2
ip route add 127.0.0.0/8 dev lo   table T2
          

Итак, мы рассмотрели очень простой пример. Он будет работать для всех процессов, выполняющихся на маршрутизаторе и для локальной сети, если настроено преобразование адресов (NAT/masquerading). В противном случае, вам будет необходим диапазон IP адресов обоих провайдеров, или выполнять маскирование для одного из провайдеров. В любом случае, вы можете задать правила выбора провайдера для каждого конкретного адреса вашей локальной сети.


пометил пакеты при помощи iptables
создал правило:
ip rule add fwmark 2 table T2
пакеты помеченные 2 попадают в таблицу 2 и отправляются через шлюз для этой таблицы


теперь косяк: пакеты отправляются с нужного интерфеса, но в заголовке у них стоит IP сетевухи с дефолтовым шлюзом и соответственно возвращатся всё пытается на него, подскажите где копать??


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "2 канала в интернет"  
Сообщение от GByte (??) on 29-Ноя-06, 21:29 
А не проще будет почтовик посадить на прямую на отдельный канал, остальное на другой? - и отказоустойчивость повышается и гемороя с файером меньше. файер конечно нужен, но в такой конфигурации получится все гораздо проще :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "2 канала в интернет"  
Сообщение от Vsiliy (??) on 30-Ноя-06, 09:18 
>А не проще будет почтовик посадить на прямую на отдельный канал, остальное
>на другой? - и отказоустойчивость повышается и гемороя с файером меньше.
>файер конечно нужен, но в такой конфигурации получится все гораздо проще
>:)


Проблема в том что разделить нужно гораздо больше не только почту и впн

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "2 канала в интернет"  
Сообщение от _KAV_ (ok) on 30-Ноя-06, 10:39 
>Итак, мы рассмотрели очень простой пример. Он будет работать для всех процессов,
>выполняющихся на маршрутизаторе и для локальной сети, если настроено преобразование адресов
>(NAT/masquerading).
Вот это выполнни
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "2 канала в интернет"  
Сообщение от Vsiliy (??) on 30-Ноя-06, 15:38 
>>Итак, мы рассмотрели очень простой пример. Он будет работать для всех процессов,
>>выполняющихся на маршрутизаторе и для локальной сети, если настроено преобразование адресов
>>(NAT/masquerading).
>Вот это выполнни

всё сделано косяк теперь в том что те пакеты которые идут с компов в локальной сети рулятся нормально, а то что с локального интерфейса на раутере нивкакую.
например:
помечаю: iptables -A PREROUTING -i eth0 -t mangle -p tcp --dport 80 -j MARK --set-mark 180
и всё помеченное идёт через нужный шлюз
а проблема в том что мне нужно рулить например трафик openvpn
делаю: iptables -t mangle -A OUTPUT -p tcp --dport 80 -j MARK --set-mark 180
пакеты метятся но идут по старому

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "2 канала в интернет"  
Сообщение от _KAV_ (ok) on 01-Дек-06, 11:02 
Дык _внимательно_  посмотри Iptables Tutorial, рисунок структуры фильтра - ты метишь пакеты _после_ маршрутизации.
Здесь в конференции проскакивали примеры как работать с этим
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру