Биллинговая система Nodeny
13 Декабря 2024, 22:49:55 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 ... 4 5 [6]
  Печать  
Автор Тема: два провайдера 2 шлюза  (Прочитано 76030 раз)
Rico-X
NoDeny
Старожил
*

Карма: 7
Offline Offline

Сообщений: 349


Просмотр профиля
« Ответ #75 : 03 Июня 2013, 16:22:39 »

Возможно глупый вопрос, но спрошу.
При проверки дефолтного шлюза, чтобы это все работало, netstat должен выдавать 2 шлюза или один?
Дефолтным - один. Тут маршруты через второй интерфейс роутятся на уровне pf а не шлюзов.
Записан
kuhar
NoDeny
Постоялец
*

Карма: 0
Offline Offline

Сообщений: 128


Просмотр профиля
« Ответ #76 : 04 Июня 2013, 10:19:13 »

Без pass выдает синтаксическую ошибку, а так не работает.
Пробовал добавить
Код:
pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to any
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to any

Тоже не работает.
Криво но работает, если с конфигурацией, как я раньше писал, но добавить второй шлюз:
Код:
route add default ISP_GW2
После этого netstat выдает два шлюза.
Но тогда выходит следующая картина:
Через PS1 у клиента пинг идет стабильный на 8.8.8.8, но страницы не открываются, а через PS2 пинг на 8.8.8.8 идет один пакет проходит и 5-8 нет.
В rc.conf дефаулт роутер стоит ISP_GW1
Может я действительно, что-то не так делаю, помогите плизз..
Записан
Rico-X
NoDeny
Старожил
*

Карма: 7
Offline Offline

Сообщений: 349


Просмотр профиля
« Ответ #77 : 04 Июня 2013, 10:29:21 »

Вот реальный пример конфига, работающего через 2 провайдера

Код:
# cat /etc/pf.conf
set limit states 128000
set optimization aggressive
ext_if1="vlan100" #Kanal1
ext_if2="vlan200" #Kanal2

ext_gw1="192.168.88.1"
ext_gw2="192.168.89.1"

table <no_nat> const { 192.168.0.0/16 10.0.0.0/16 }
scrub in all
nat pass on $ext_if1 inet from 10.0.0.0/24 to 192.168.88.0/24 -> 192.168.88.99
nat pass on $ext_if2 inet from 10.0.0.0/24 to 192.168.89.0/24 -> 192.168.89.99
nat pass inet from 10.0.0.105 to 10.0.12.0/24 -> 10.0.12.1
nat pass inet from 10.0.0.0/16 to 10.0.0.100 port {137,138,139,445} -> 10.0.0.1
nat from 10.0.0.100 to !<no_nat> -> $ext_if2
nat pass from 10.0.0.105 to !<no_nat> -> $ext_if1
nat pass from 10.0.0.14 to !<no_nat> -> $ext_if1

nat from 10.0.0.0/20 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
nat from 10.0.100.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
nat from 10.0.99.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address

pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to !<no_nat>
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to !<no_nat>

Не забываем также поменять параметры IPFW, что надо менять:
Код:
${f} add 200 skipto 500 ip from any to any { via ${ifOut} or via ${ifOut2} }
${f} add 400 skipto 450 ip from any to any { recv ${ifOut} or recv ${ifOut2} }
${f} add 2050 deny ip from any to any { via ${ifOut} or via ${ifOut2} }

Ни какие дефаултоуты править не нужно.
Записан
kuhar
NoDeny
Постоялец
*

Карма: 0
Offline Offline

Сообщений: 128


Просмотр профиля
« Ответ #78 : 04 Июня 2013, 18:30:14 »

А можешь плизз описать чем являются подсети и ip:
192.168.0.0/16
10.0.0.0/16
192.168.88.99 на сколько я понял это ip ISP1
192.168.89.99 на сколько я понял это ip ISP2
10.0.0.105
10.0.12.0/24
10.0.12.1
10.0.0.100
10.0.0.1
10.0.0.14

Для меня будет достаточна следующая конфигурация?
Код:
set limit states 128000
set optimization aggressive

ext_if1="ip_PS1"
ext_if2="ip_PS2"
ext_gw1="GW_PS1"
ext_gw2="GW_PS2"

nat pass on $ext_if1 from 10.0.24.0/24 to any -> $ext_if1
nat pass on $ext_if2 from 10.0.25.0/24 to any -> $ext_if2

nat from 10.0.24.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
nat from 10.0.25.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address

pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to !<no_nat>
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to !<no_nat>

IPFW именно так и настроен у меня, и еще у меня сейчас в rc.conf закоменчен defaultrouter, так как оба прова соединяются по dhcp, но по какой-то причине постоянно в netstat светится GW второго прова, может нужно defaultrouter прописать какой-то локальный ip?
Записан
Rico-X
NoDeny
Старожил
*

Карма: 7
Offline Offline

Сообщений: 349


Просмотр профиля
« Ответ #79 : 05 Июня 2013, 06:53:13 »

А можешь плизз описать чем являются подсети и ip:
192.168.0.0/16 - Вся серая подсеть 192.168 - на нее не натим
10.0.0.0/8 - тоже с 10.
192.168.88.99 - Айпишка самого маршрутизатора, смотрящая в сторону ISP1
192.168.89.99  - Айпишка самого маршрутизатора, смотрящая в сторону ISP2
10.0.0.105 - Сервак помойка, просто ему разрешаем попадать в приватный вилан 12
10.0.12.0/24 - Приватный вилан для сотрудников
10.0.12.1 - Айпишка самого маршрутизатора для вилана 12
10.0.0.100 - Сервачек, который всегда должен ходить через 1 интерфейс
10.0.0.1 - Айпишка самого маршрутизатора на вилане 1
10.0.0.14 - аналогично со 105
То-есть в принципе эти значения исключительно для сетки, откуда я их выдрал. Основное

Для меня будет достаточна следующая конфигурация?
Код:
set limit states 128000
set optimization aggressive

ext_if1="ip_PS1"
ext_if2="ip_PS2"
ext_gw1="GW_PS1"
ext_gw2="GW_PS2"

nat pass on $ext_if1 from 10.0.24.0/24 to any -> $ext_if1
nat pass on $ext_if2 from 10.0.25.0/24 to any -> $ext_if2

nat from 10.0.24.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
nat from 10.0.25.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address

pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to !<no_nat>
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to !<no_nat>


Можно без:
Код:
nat from 10.0.24.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
nat from 10.0.25.0/24 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
Эти строки для динамической балансировки нагрузки


Цитировать
IPFW именно так и настроен у меня, и еще у меня сейчас в rc.conf закоменчен defaultrouter, так как оба прова соединяются по dhcp, но по какой-то причине постоянно в netstat светится GW второго прова, может нужно defaultrouter прописать какой-то локальный ip?

Нет ничего прописывать не надо, если не выйдет - дайте ssh или тимвивер - посмотрим что не так.
Записан
SeMant
NoDeny
Старожил
*

Карма: 4
Offline Offline

Сообщений: 266



Просмотр профиля Email
« Ответ #80 : 09 Февраля 2014, 13:47:39 »

  Что -то у меня ничего не получается.
 У меня два канала, один Я получаю по рррое второй по дхцп.
Код:
root@vento:/etc#cat pf.conf
set limit states 128000
set optimization aggressive

ext_if1="em1" # dhcp
ext_if2="re0" # pppoe
ext_gw1="GW_PS1"
ext_gw2="GW_PS2"

nat pass on $ext_if1 from 10.10.0.0/16 to any -> $ext_if1
nat pass on $ext_if2 from 10.10.0.0/16 to any -> $ext_if2

nat from 10.10.0.0/16 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address
# nat from 10.0.0.0/8 to !<no_nat> -> { ($ext_if1) ($ext_if2) } round-robin sticky-address

pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to !<no_nat>
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to !<no_nat>

абоненты ходят только туда, куда стоит маршрут по default. меняю по ходу работы маршрут, работаем через другого прова.
И ещё, Я же правильно понимаю, больше нигде ничего настраивать не надо, чтобы сервер мог работать одновременно на два шлюза ?
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #81 : 02 Августа 2014, 23:53:57 »

Решили проблему?
Записан
SeMant
NoDeny
Старожил
*

Карма: 4
Offline Offline

Сообщений: 266



Просмотр профиля Email
« Ответ #82 : 08 Октября 2014, 06:34:43 »

Решили проблему?
Скорее нет чем да. Если к серверу подключаться по ip (всегда онлайн), то трафик балансируется. Но дело в том, что абоненты у меня подключаются по пппое и тунели ходят только по дефолту.
 Как балансировать трафик пппое пока не знаю. Гле-то читал, что народ с помощью PF балансироваал пппое тунели на кол-во шлюзов.
 Проблема пока открыта, если только не поставить перед насом сервер для балансирования.
Записан
Animancorda
Новичок
*

Карма: 0
Offline Offline

Сообщений: 4


Просмотр профиля Email
« Ответ #83 : 10 Декабря 2015, 09:28:36 »

Попробуйте создать VLAN для каждого сервиса в отдельности со своим Service ID и Vlan ID. И пускай трафик по каждому гоняет там где вам надо
Записан
Страниц: 1 ... 4 5 [6]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!