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

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1] 2
  Печать  
Автор Тема: Два шлюза в Internet  (Прочитано 12661 раз)
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« : 28 Июля 2009, 23:40:12 »

Скажите например я настроил на freebsd шлюз в интернет, прописал тарифы добавил пользователей. Через время взял второй канал интернет. Можно настроить второй шлюз на freebsd или mikrotik чтобы использовалась общая база? Возможно на одном сервере с freebsd и nodeny раздавать два канала и выдавать белые ip адреса?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #1 : 29 Июля 2009, 00:11:29 »

все это можно
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #2 : 29 Июля 2009, 13:21:49 »

Есть описание как с помощью nodeny поделить два канал? Нать лучше pfnat ?
Записан
Unix
Гость
« Ответ #3 : 29 Июля 2009, 13:36:48 »

/etc/pf.conf
# Внешний интерфейс и шлюз для канала A (WAN_1).#
ext_if_a        = "em0"
ext_gw_a        = "x.x.x.x"
# Внешний интерфейс и шлюз для канала B (WAN_2).#
ext_if_b        = "em2"
ext_gw_b        = "x.x.x.x"
# Внешний интерфейс и шлюз для канала C (WAN_3).#
ext_if_c        = "fxp0"
ext_gw_c        = "x.x.x.x"
# Внутренний интерфейс (LAN).#
int_if          = "em1"
# Обслуживаемые TCP и UDP сервисы.
tcp_svc         = "22 25 21 35000:35100"
# TCP сервисы, обслуживаемые сервером из внутренней сети, и адрес сервера.
# 3389
tcp_svc_lan_terminal    = "3389"
tcp_rdr_lan_terminal    = "192.168.1.3"
# Не фильтровать трафик на lo интерфейсах.#
set skip on lo0
# Нормализовать весь входящий трафик.#
scrub in
# Включить трансляцию адресов на внешних интерфейсах.#
nat on $ext_if_a inet from !(self) -> $ext_if_a:0
nat on $ext_if_b inet from !(self) -> $ext_if_b:0
nat on $ext_if_c inet from !(self) -> $ext_if_c:0
# Переадресовать TCP сессии для сервисов, обслуживаемых локальным сервером.
# Правила rdr здесь НЕ должны содержать слова pass.
rdr on $ext_if_a inet proto tcp to $ext_if_a:0 port { $tcp_svc_lan_terminal\
 } tag EXT_IF_A -> $tcp_rdr_lan_terminal
rdr on $ext_if_b inet proto tcp to $ext_if_b:0 port { $tcp_svc_lan_terminal\
 } tag EXT_IF_B -> $tcp_rdr_lan_terminal
rdr on $ext_if_c inet proto tcp to $ext_if_c:0 port { $tcp_svc_lan_terminal\
 } tag EXT_IF_C -> $tcp_rdr_lan_terminal
# Разрешить подключение к переадресованным сервисам из локальной сети по
# внешним адресам.
rdr pass on $int_if inet proto tcp to { $ext_if_a:0 $ext_if_b:0 $ext_if_c:0\
 } port { $tcp_svc_lan_terminal } tag INT_IF_RDR -> $tcp_rdr_lan_terminal
nat on $int_if tagged INT_IF_RDR -> $int_if:0
# По умолчанию блокировать весь трафик на всех интерфейсах. Для входящих TCP
# соединений возвращать RST.
block on { $ext_if_a $ext_if_b $ext_if_c $int_if}
block return on { $ext_if_a $ext_if_b $ext_if_c $int_if} inet proto tcp
#Разрешить доступ через лок интерфейс к терминал серверу
pass out quick on $int_if inet proto tcp from any to $tcp_rdr_lan_terminal\
 port $tcp_svc_lan_terminal keep state
# Пропускаем входящие пакеты для переадресованых сервисов. Устанавливаем
# для них симметричную маршрутизацию (если пакет пришел
# из канала A, ответ пойдет через канал A независимо от default route). 
pass in quick reply-to ($ext_if_a $ext_gw_a) tagged EXT_IF_A keep state
pass in quick reply-to ($ext_if_b $ext_gw_b) tagged EXT_IF_B keep state
pass in quick reply-to ($ext_if_c $ext_gw_c) tagged EXT_IF_C keep state
# Выпускать исходящие пакеты. Установить маршрутизацию в зависимости от
# адреса источника. Пакеты с адресом интерфейса A уходят в канал A,
# с адресом интерфейса B - в канал B.
pass out route-to ( $ext_if_a $ext_gw_a ) inet from $ext_if_a:0 keep state
pass out route-to ( $ext_if_b $ext_gw_b ) inet from $ext_if_b:0 keep state
pass out route-to ( $ext_if_c $ext_gw_c ) inet from $ext_if_c:0 keep state
# Разрешить входящие ICMP PING пакеты.#
pass in on $ext_if_a reply-to ($ext_if_a $ext_gw_a) inet proto icmp\
 to $ext_if_a:0 icmp-type echoreq code 0 keep state
pass in on $ext_if_b reply-to ($ext_if_b $ext_gw_b) inet proto icmp\
 to $ext_if_b:0 icmp-type echoreq code 0 keep state
pass in on $ext_if_c reply-to ($ext_if_c $ext_gw_c) inet proto icmp\
 to $ext_if_c:0 icmp-type echoreq code 0 keep state

# Разрешить входящие TCP сессии для обслуживаемых сервисов.#
pass in on $ext_if_a reply-to ($ext_if_a $ext_gw_a) inet proto tcp\
 to $ext_if_a:0 port { $tcp_svc } flags S/SA keep state
pass in on $ext_if_b reply-to ($ext_if_b $ext_gw_b) inet proto tcp\
 to $ext_if_b:0 port { $tcp_svc } flags S/SA keep state
pass in on $ext_if_c reply-to ($ext_if_c $ext_gw_c) inet proto tcp\
 to $ext_if_c:0 port { $tcp_svc} flags S/SA keep state
#Разрешим туннели на интерфейсе WAN_2 и WAN3
pass in on $ext_if_b reply-to ($ext_if_b $ext_gw_b) inet proto tcp\
 from x.x.x.x to $ext_if_b:0 port 5000 flags S/SA keep state
pass in on $ext_if_c reply-to ($ext_if_c $ext_gw_c) inet proto tcp\
 from x.x.x.x to $ext_if_c:0 port 5000 flags S/SA keep state
pass quick on tun0 all
pass quick on tun1 all
#Разрешить в локалку пакеты от внутреннего интерфейса, из локальных сетей
# туннелей
pass out on $int_if inet from { $int_if:0, 192.168.3.0/24,\
 192.168.4.0/24 } to $int_if:network:0 keep state
#Разрешить из локалки пакеты на внутренний интерфейс, в локальные сети
# туннелей
pass in on $int_if inet from $int_if:network:0 to { $int_if:0,\
 192.168.3.0/24, 192.168.4.0/24 } keep state
#Разрешить из локалки пинг
pass in on $int_if inet proto icmp from $int_if:network:0 to any\
 icmp-type echoreq code 0 keep state
#Разрешить из локалки 110, 3389, 53
pass in on $int_if inet proto tcp from $int_if:network:0 to any port\
 { 110, 3389 } flags S/SA keep state
pass in on $int_if inet proto udp from $int_if:network:0 to any port\
 53 keep state
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #4 : 06 Августа 2009, 01:07:55 »

Пытаюсь установить NODENY на одну машину а сервер mysql находится на другой. Вот такая ошибка после того как ввожу пароль root
BI connect('database=mysql;host=192.168.5.1;mysql_connect_timeout=3;','root',...) failed: Can't connect to MySQL server on '192.168.5.1' (4) at install.pl line 200
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #5 : 06 Августа 2009, 01:46:07 »

ну а если с консоли:
mysql -p -u root -h 192.168.5.1
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #6 : 06 Августа 2009, 14:56:50 »

Если так то подключается.
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #7 : 06 Августа 2009, 22:51:26 »

Сервер MYSQL был за wi-fi линком. Перенес его на кабель NODENY установил. Почему в админке показывает авторизированных пользователе?  На сервере NODENY 192.168.5.1 показывает 5 авторизированных а на вновь установленном 3 хотя к нему никто не подключен.
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #8 : 07 Августа 2009, 10:02:53 »

Убирает авторизацию ядро. Если оно не запущено либо не может соединиться с БД - будет такой результат
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #9 : 11 Августа 2009, 20:27:22 »

Два канала в инет. Ниже пример пока сложноват для меня. У меня
1.re0 - 192.168.1.2 на нем поднимается pppoe tun0 ip получает внешний динамический.
2.rl0 - 192.168.4.1 смотрит в локалку. и на нем PPPoE сервер выдает адреса 172.16.1.0/24
3.rl1 - 192.168.6.2 смотрит на шлюз 192.168.6.1
Нужно чтоб 192.168.4.1 ходили в инет через pppoe соединение которое поднимается на re0, а 172.16.1.0/24 через rl1.

правила для nat
nat on tun0 from 192.168.4.0/24 to any -> (tun0)
nat on rl1 from 172.16.1.0/24 to any -> (rl1)

Правильно я нат настроил или нужно еще что то?
Записан
elite
Начальник планеты
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1227

In LAN we trust!

358714596
Просмотр профиля
« Ответ #10 : 11 Августа 2009, 21:04:33 »

Два канала в инет. Ниже пример пока сложноват для меня. У меня
1.re0 - 192.168.1.2 на нем поднимается pppoe tun0 ip получает внешний динамический.
2.rl0 - 192.168.4.1 смотрит в локалку. и на нем PPPoE сервер выдает адреса 172.16.1.0/24
3.rl1 - 192.168.6.2 смотрит на шлюз 192.168.6.1
Нужно чтоб 192.168.4.1 ходили в инет через pppoe соединение которое поднимается на re0, а 172.16.1.0/24 через rl1.

правила для nat
nat on tun0 from 192.168.4.0/24 to any -> (tun0)
nat on rl1 from 172.16.1.0/24 to any -> (rl1)

Правильно я нат настроил или нужно еще что то?
нат ты правильно сделал, но надо еще форвардить пакеты в соответствующий интерфейс, ну или использовать альтернативные таблицы маршрутизации
искать в гугле по PBR, ipfw fwd, setfib
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #11 : 11 Августа 2009, 21:36:17 »

А NODENY сам не добавит нужные правила IPFW?
Записан
elite
Начальник планеты
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1227

In LAN we trust!

358714596
Просмотр профиля
« Ответ #12 : 11 Августа 2009, 21:48:27 »

А NODENY сам не добавит нужные правила IPFW?
нет
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #13 : 12 Августа 2009, 22:43:34 »

А NODENY сам не добавит нужные правила IPFW?
NoDeny управляет доступом, а не роутингом.
Записан
tramX
NoDeny
Постоялец
*

Карма: 1
Offline Offline

Сообщений: 108


Просмотр профиля Email
« Ответ #14 : 18 Августа 2009, 01:59:45 »

Возможно чтобы было два сервера MySQL, на них одинакавая база. С целью если один сервер не доступен то сателиты подключаются ко второму. А между серверами MySQL происходил обмен данными о последних изменениях?
Как быть с настройкой PF для двух каналов если один соединяется по pppoe и IP адрес и шлюз постоянно меняются?
« Последнее редактирование: 18 Августа 2009, 05:25:41 от tramX » Записан
Страниц: [1] 2
  Печать  
 
Перейти в:  

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