Ребята! Если можете подскажите! Ситуация - есть роутер freeBSD 4.5 на нем подключение на 2х провайдеров - ed0 и rl0. И есть 2е локальные сети 10.0.0.0/24 и 10.0.2.0/24 .Задача - сделать так чтобы одна из подсетей в интернет шла через первого провайдера и !!! видела локальные ресурсы второго!!!! и соответственно вторая сеть шла в инет через второго и видела локальные ресурсы первого. Под локальными ресурсами понимаются mp3 итд доступные только для клиентов этого провайдера. Помогите плз!!! Уже неделю мучусь!!!
>Ребята! Если можете подскажите! Ситуация - есть роутер freeBSD 4.5 на нем
>подключение на 2х провайдеров - ed0 и rl0. И есть 2е
>локальные сети 10.0.0.0/24 и 10.0.2.0/24 .Задача - сделать так чтобы одна
>из подсетей в интернет шла через первого провайдера и !!! видела
>локальные ресурсы второго!!!! и соответственно вторая сеть шла в инет через
>второго и видела локальные ресурсы первого. Под локальными ресурсами понимаются mp3
>итд доступные только для клиентов этого провайдера. Помогите плз!!! Уже неделю
>мучусь!!!Ну, ёлки...
ipfw все это решает.
Извини, лениво мне наборы правил для тебя рисовать, но во всяком случае, это возможно.
не забудь пересобрать ядро с опцией
options IPFIREWALL_FORWARD
ipfw fwd будет раскидывать пакеты на провайдеров исходя из адреса источника
>Ну, ёлки...
>ipfw все это решает.
>Извини, лениво мне наборы правил для тебя рисовать, но во всяком случае,
>это возможно.Доброе время суток! Все понятно, но....
ipfw 3 add divert 8668 ip from 10.0.2.0/24 to (локальные ресурсы второго
прова)
ipfw 3 add divert 8778 ip from 10.0.2.0/24 to any out
ipfw 3 add divert 8778 ip from 10.0.0.0/24 to (локальные ресурсы первого
прова)
ipfw 3 add divert 8668 ip from 10.0.0.0/24 to any out
ipfw 3 add divert 8778 ip from any to (ip rl1)
ipfw 3 add divert 8668 ip from any to (ip rl0)
ipfw 3 add fwd (ip ISP2) ip from (ip rl1) to any
ipfw 3 add fwd (ip ISP1) ip from (ip rl0) to anydefault route ip ISP1
Вот эта конструкция не работает. Для сети 10.0.0.0 все нормально а для
10.0.2.0 -нет инета. Потому как какого то черта продиверченные xthtp 8778
пакеты с src ip = (ip rl1) проходят на карточке rl0 и там у прова рубятся.
Вот моя истинная проблема. В это случае мне кто нить может помочь?
>>Ну, ёлки...
>>ipfw все это решает.
>>Извини, лениво мне наборы правил для тебя рисовать, но во всяком случае,
>>это возможно.
>
>Доброе время суток! Все понятно, но....
>ipfw 3 add divert 8668 ip from 10.0.2.0/24 to (локальные ресурсы второго
>
>прова)
>ipfw 3 add divert 8778 ip from 10.0.2.0/24 to any out
>ipfw 3 add divert 8778 ip from 10.0.0.0/24 to (локальные ресурсы первого
>
>прова)
>ipfw 3 add divert 8668 ip from 10.0.0.0/24 to any out
>ipfw 3 add divert 8778 ip from any to (ip rl1)
>ipfw 3 add divert 8668 ip from any to (ip rl0)
>ipfw 3 add fwd (ip ISP2) ip from (ip rl1) to any
>
>ipfw 3 add fwd (ip ISP1) ip from (ip rl0) to any
>
>
>default route ip ISP1
>Вот эта конструкция не работает. Для сети 10.0.0.0 все нормально а для
>
>10.0.2.0 -нет инета. Потому как какого то черта продиверченные xthtp 8778
>пакеты с src ip = (ip rl1) проходят на карточке rl0
>и там у прова рубятся.
>Вот моя истинная проблема. В это случае мне кто нить может помочь?Не понял, а что в этой схеме rl1 ? У тебя есть, как ты писал в оригинальном постинге, ed0 (один ISP) и rl0 (второй ISP), а rl1 - это твой внутренний интерфейс? или что?
сори всем сейчас rl0 - первый провайдер, rl1 - второй
>сори всем сейчас rl0 - первый провайдер, rl1 - второйК какому адресу или интерфейсу прикручен natd, слушающий 8668, и к какому - 8778 ?
8668 -rl0
8778 -rl1
смотри! rl0 -195.24.*.*
rl1 -212.86.*.*
после вставки правил, которые я привел выше, пакеты с адресом источника 212.86.*.* идут на выход по карточке rl0 ,которая имеет адрес 195.24.*.*
В чем тут грабли могут быть? т.е. пакет проходит и диверт и фвд(счетчик растет) но routed(видимо) пихает его по default route
>8668 -rl0
>8778 -rl1На первый взгляд всё верно...
Попробуй включить verbose mode на обоих natd, и погонять тестовые пакеты. Помедитировать над выводом. Не знаю даже, что тут ещё можно посоветовать :(
>На первый взгляд всё верно...
>Попробуй включить verbose mode на обоих natd, и погонять тестовые пакеты. Помедитировать
>над выводом. Не знаю даже, что тут ещё можно посоветовать :(
>смотри! rl0 -195.24.*.*
rl1 -212.86.*.*
после вставки правил, которые я привел выше, пакеты с адресом источника 212.86.*.* идут на выход по карточке rl0 ,которая имеет адрес 195.24.*.*
В чем тут грабли могут быть? т.е. пакет проходит и диверт и фвд(счетчик растет) но routed(видимо) пихает его по default route
>>На первый взгляд всё верно...
>>Попробуй включить verbose mode на обоих natd, и погонять тестовые пакеты. Помедитировать
>>над выводом. Не знаю даже, что тут ещё можно посоветовать :(
>>
>
>смотри! rl0 -195.24.*.*
> rl1 -212.86.*.*
>после вставки правил, которые я привел выше, пакеты с адресом источника 212.86.*.*
>идут на выход по карточке rl0 ,которая имеет адрес 195.24.*.*
>В чем тут грабли могут быть? т.е. пакет проходит и диверт
>и фвд(счетчик растет) но routed(видимо) пихает его по default routeТам что, ещё и routed запущен? Впрочем, неважно. Сам по себе routed никого никуда не пихает, как и другие демоны маршрутизации - он всего лишь удаляет/прописывает маршруты в таблицу. Ну хорошо, попробуй для проверки оставить всё, как есть, но default gateway укажи через rl1. И посмотри, что получится. Если твоё предположение верно, у пользователей одной локалки доступ появится, а у другой пропадёт.
>Там что, ещё и routed запущен? Впрочем, неважно. Сам по себе routed
>никого никуда не пихает, как и другие демоны маршрутизации - он
>всего лишь удаляет/прописывает маршруты в таблицу. Ну хорошо, попробуй для проверки
>оставить всё, как есть, но default gateway укажи через rl1. И
>посмотри, что получится. Если твоё предположение верно, у пользователей одной локалки
>доступ появится, а у другой пропадёт.
так и случается (пробовал я уже менять дефаулт роут)у одних появляется у других пропадает
У меня та же задача с успехом решена.
Правила идут следующим образом:
1. divert на все специфические (местные) ресурсы;
2. диверт всех остальных пакетов для определенной внутренней сети через альтернативного прова (не defaulrouter) - у тебя - ipfw 3 add divert 8778 ip from 10.0.2.0/24 to any out (попробуй без out на конце);
3. диверт всех остальных пакетов на прова по-умолчанию (без out на конце)
4. Правила fwd:
add fwd $g_rl1 ip from $ip_rl1 to any out
add fwd $g_rl2 ip from $ip_rl2 to any out
Обрати внимение на out.
5. Обратный диверт:
add divert $port_for_rl1 ip from any to $ip_rl1
add divert $port_for_rl1 ip from any to $ip_rl2И все работает. Даже с 3 провами.
P.S. если не заработает - для эксперимента выключи routed.
>У меня та же задача с успехом решена.
>Правила идут следующим образом:
>1. divert на все специфические (местные) ресурсы;
>2. диверт всех остальных пакетов для определенной внутренней сети через альтернативного прова
>(не defaulrouter) - у тебя - ipfw 3 add divert
>8778 ip from 10.0.2.0/24 to any out (попробуй без out на
>конце);
>3. диверт всех остальных пакетов на прова по-умолчанию (без out на конце)
>
>4. Правила fwd:
>add fwd $g_rl1 ip from $ip_rl1 to any out
>add fwd $g_rl2 ip from $ip_rl2 to any out
>Обрати внимение на out.
>5. Обратный диверт:
> add divert $port_for_rl1 ip from any to $ip_rl1
> add divert $port_for_rl1 ip from any to $ip_rl2
>
>И все работает. Даже с 3 провами.
>
>P.S. если не заработает - для эксперимента выключи routed.Это все ясно...я уже стал гуру в вопросах policy routing)) Проблема у меня оказалась в другом(( Что то глючит...У меня пакет после диверта больше не попадает в файрвольные правила а сразу передается по default route. Вот что оказалось истинной проблемой...второй раз в правила файрвола на фвд он не попадает..Кто мне может подсказать, что это может быть?
P.S.Кстати я наверное не прав про routed... никаких дополнительных программ маршрутизатизации дополнительно не ставилось..там то что ставит фря по умолчанию(извините не знаю что во фрибсд отвечает за маршрутизацию)
1 - Последовательность правил, которую я тебе указал рабочая.
2 - Используй сквозную нумерацию правил.
3 - Опиши, пожалуйста, как ты считаешь, как пакет от твоего клиента должен идти на альтернативного провайдера. Только подробно.
4 - Опиши также как пакет идет на шлюз по умолчанию через НАТ. тоже подробно.Если ты правильно все понимаешь и правильно написал правила - все должно работать.
1 - Последовательность правил, которую я тебе указал рабочая.
2 - Используй сквозную нумерацию правил.
3 - Опиши, пожалуйста, как ты считаешь, как пакет от твоего клиента должен идти на альтернативного провайдера. Только подробно.
4 - Опиши также как пакет идет на шлюз по умолчанию через НАТ. тоже подробно.Если ты правильно все понимаешь и правильно написал правила - все должно работать.
Если что - оставь как с тобой связаться. Чем смогу - помогу.
>Ребята! Если можете подскажите! Ситуация - есть роутер freeBSD 4.5 на нем
>подключение на 2х провайдеров - ed0 и rl0. И есть 2е
>локальные сети 10.0.0.0/24 и 10.0.2.0/24 .Задача - сделать так чтобы одна
>из подсетей в интернет шла через первого провайдера и !!! видела
>локальные ресурсы второго!!!! и соответственно вторая сеть шла в инет через
>второго и видела локальные ресурсы первого. Под локальными ресурсами понимаются mp3
>итд доступные только для клиентов этого провайдера. Помогите плз!!! Уже неделю
>мучусь!!!http://www.artifact.spb.ru/labs/short/2-channels-managment-F...
>>Ребята! Если можете подскажите! Ситуация - есть роутер freeBSD 4.5 на нем
>>подключение на 2х провайдеров - ed0 и rl0. И есть 2е
>>локальные сети 10.0.0.0/24 и 10.0.2.0/24 .Задача - сделать так чтобы одна
>>из подсетей в интернет шла через первого провайдера и !!! видела
>>локальные ресурсы второго!!!! и соответственно вторая сеть шла в инет через
>>второго и видела локальные ресурсы первого. Под локальными ресурсами понимаются mp3
>>итд доступные только для клиентов этого провайдера. Помогите плз!!! Уже неделю
>>мучусь!!!>http://www.artifact.spb.ru/labs/short/2-channels-managment-F...
Это и ежу понятно. У него задача, к сожалению, более сложная (см. самый первый постинг).
"Ведь решить проблему распределения трафика между каналами можно решить с помощью связки системы NAT и Source Routing (маршрутизация по источнику)."...и к тому же, у этих ребят проблемы с терминами - это называется "policy routing".
>"Ведь решить проблему распределения трафика между каналами можно решить с помощью связки
>системы NAT и Source Routing (маршрутизация по источнику)."
>
>...и к тому же, у этих ребят проблемы с терминами - это
>называется "policy routing".И к стати что описано в статье по поводу реальных адресов не работает
ipfw add fwd 212.1.1.254 ip from 212.1.2.0/24 to any -- этого правила недостаточночерез natd все прекрасно