URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 67914
[ Назад ]

Исходное сообщение
"freebsd natd redirect masquerade"

Отправлено kostil , 29-Июл-06 23:23 
задача такая, есть роутер на базе freebsd 6.1
на нем два интерфейса, rl0 - внешний и rl1 внутренний.
внутренняя сеть 192.168.0.0/24 - подключена к rl1
rl0 - реальный ip 80.80.80.80
локальная сеть работает в интернет через natd маскарад

нужно сделать так что бы rl0 имел два ip один реальны 80.80.80.80 второй серый 192.168.1.1 для доступа к роутеру из домашней сети 192.168.1.0/24.
локальная сеть работала с домашней без маскарада, а из домашней сети был доступ к внутреннему серверу 192.168.0.5 через port redirect

как это можно организовать, нужно ли запускать несколько natd?
ткните носом если есть статья с подобными настройками, я не нашел.


Содержание

Сообщения в этом обсуждении
"freebsd natd redirect masquerade"
Отправлено dodger , 31-Июл-06 09:51 
>rl0 - внешний и rl1 внутренний.
>внутренняя сеть 192.168.0.0/24 - подключена к rl1
>rl0 - реальный ip 80.80.80.80
>локальная сеть работает в интернет через natd маскарад
>
>нужно сделать так что бы rl0 имел два ip один реальны 80.80.80.80
>второй серый 192.168.1.1 для доступа к роутеру из домашней сети 192.168.1.0/24.
>
>локальная сеть работала с домашней без маскарада, а из домашней сети был
>доступ к внутреннему серверу 192.168.0.5 через port redirect

Куда подключена "домашняя сеть"? Конкретно пожалуйста. А то создается впечатление, что она подключена вместе с Fbsd к внешнему каналу (иначе зачем хотеть клеить внутренний адрес к внешнему интерфейсу?).


"freebsd natd redirect masquerade"
Отправлено kostil , 01-Авг-06 22:34 
>>rl0 - внешний и rl1 внутренний.
>>внутренняя сеть 192.168.0.0/24 - подключена к rl1
>>rl0 - реальный ip 80.80.80.80
>>локальная сеть работает в интернет через natd маскарад
>>
>>нужно сделать так что бы rl0 имел два ip один реальны 80.80.80.80
>>второй серый 192.168.1.1 для доступа к роутеру из домашней сети 192.168.1.0/24.
>>
>>локальная сеть работала с домашней без маскарада, а из домашней сети был
>>доступ к внутреннему серверу 192.168.0.5 через port redirect
>
>Куда подключена "домашняя сеть"? Конкретно пожалуйста. А то создается впечатление, что она
>подключена вместе с Fbsd к внешнему каналу (иначе зачем хотеть клеить
>внутренний адрес к внешнему интерфейсу?).

internet
    |
    |
биллинг домашней сети
    |
    |
+-----------------+
| домашняя сеть   |
|                 |
|                 |
+-----------------+
    |
    |
    rl0
freebsd
    rl1
    |
    |
+----------------------+
| внутренняя локальная |
| сеть                 |
+----------------------+


"freebsd natd redirect masquerade"
Отправлено dodger , 02-Авг-06 10:22 
>
>нужно сделать так что бы rl0 имел два ip один реальны 80.80.80.80
>второй серый 192.168.1.1 для доступа к роутеру из домашней сети 192.168.1.0/24.
>
>как это можно организовать, нужно ли запускать несколько natd?
>ткните носом если есть статья с подобными настройками, я не нашел.
Тут надо ткнуть носом в ликбез по работе NAT и косвенной маршрутизации IP. Основы! :)

Но тыкать носом, не наша задача.

Я не понимаю, зачем на rl0 внешний интерфейс, но раз такова задача:
# ifconfig rl0 inet 192.168.1.1 netmask 0xffffff00
# ifconfig rl0 inet 80.80.80.80 netmask 0xffff???? alias

В этой части задачи я смысл уловить не могу, но предположения судя по схеме см. ниже:
>локальная сеть работала с домашней без маскарада, а из домашней сети был
>доступ к внутреннему серверу 192.168.0.5 через port redirect
Если локальная сеть (192.168.0.0/24) подключенная к rl1 должна работать с домашней (192.168.1.0/24) в обход nat, и при этом нужен доступ к серверу 192.168.0.5 из домашней сети - убери nat и разреши косвенную маршрутизацию из одной сети в другую. Нахера нужен redirect_port?

В /etc/rc.conf:
gateway_enable=yes

В правилах ipfw:
allow ip from 192.168.1.0/24 to 192.168.0.5
allow ip from 192.168.0.5 to 192.168.1.0/24
Или ЧТО конкретно ты хочешь разрешить?


"freebsd natd redirect masquerade"
Отправлено kostil , 10-Сен-06 15:56 
а можно как то сделать что бы нат для 192.168.0.0/24 срабатывал только когда пользователь обращается к адресам не относящимся к домашней сети, тоесть в интернет? в домашней сети несколько подсетей, допустим 192.168.1.0/24 и 192.168.2.0/24.

"freebsd natd redirect masquerade"
Отправлено dodger , 11-Сен-06 04:51 
>а можно как то сделать что бы нат для 192.168.0.0/24 срабатывал только
>когда пользователь обращается к адресам не относящимся к домашней сети, тоесть
>в интернет? в домашней сети несколько подсетей, допустим 192.168.1.0/24 и 192.168.2.0/24.
>
Вместо
divert natd all from any to any via ${oif}
пиши
divert natd all from 192.168.0.0/16 to not 192.168.0.0/16 via ${oif}
divert natd all from not 192.168.0.0/16 to 192.168.0.0/16 via ${oif}