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

Исходное сообщение
"ipfw в связке с natd не пускает пакеты на alias сетевого if"

Отправлено Alex , 21-Май-08 09:14 
Исходные данные:
сервер с OS FreeBSD 6.3 должен работать как шлюз меджу ЛВС и интернет  со следующими сервисами:

squid
apache
natd
ipfw

postfix
courier-imap
и т.д. далее не важно

Железо:
1 (!) сетевая карта

Особенности:
Для одного физического интерфейса в rc.conf
прописан реальный адрес и алиас
Код:
ifconfig_em0="inet x.y.z.7 netmask 255.255.255.0"
ifconfig_em0_alias0="x.y.z.3 netmask 255.255.255.255"
  

это сделано для того чтобы снаружи сервер был доступен по двум адресам - почтовому (mail.domain.ru соответствует x.y.z.7) и веб сервер (www.domain.ru соответствует x.y.z.3)

при этом изнутри должен работать прокси и NAT.

Суть проблемы.
при включенном IPFW нет доступа извне к веб серверу, но зато работает NAT
при отключенном IPFW все работает кроме NAT

сервисы запускаются через rc.conf

для простоты в IPFW все разрешено

Код:
add 90  divert 8668 ip from x.y.z.0/24 to any via em0
add 100 divert 8668 ip from any to x.y.z.7 via em0
add 65535 allow ip from any to any
  


1. NAT без IPFW как я понимаю не работает в моем случае, но как их развязать - не знаю
2. Как то перенаправить входящие подключения по 80 порту tcp снаружи на x.y.z.3, но при этом чтобы работали исходящие по 80 порту от squid тоже никак не соображу.

вариант с втыканием в сервер еще одного сетевого интерфейса работать наверняка будет, но сейчас невозможен



Содержание

Сообщения в этом обсуждении
"ipfw в связке с natd не пускает пакеты на alias сетевого if"
Отправлено nwton , 22-Май-08 11:34 
>[оверквотинг удален]
>ifconfig_em0="inet x.y.z.7 netmask 255.255.255.0"
>ifconfig_em0_alias0="x.y.z.3 netmask 255.255.255.255"
>
>
>это сделано для того чтобы снаружи сервер был доступен по двум адресам
>- почтовому (mail.domain.ru соответствует x.y.z.7) и веб сервер (www.domain.ru соответствует x.y.z.3)
>
>
>при этом изнутри должен работать прокси и NAT.
>

...
>Код:
>add 90  divert 8668 ip from x.y.z.0/24 to any via em0
>
>add 100 divert 8668 ip from any to x.y.z.7 via em0
>add 65535 allow ip from any to any
>
>

Читать man natd на предмет опций -unregistered_only, -alias_address и добавить их в rc.conf.
Дальше при необходимости - подкрутить ipfw и разрулить отправку в natd только трафика от локальных пользователей, которые идут в интернет.


"ipfw в связке с natd не пускает пакеты на alias сетевого if"
Отправлено lykich99 , 23-Май-08 11:21 
>[оверквотинг удален]
>1. NAT без IPFW как я понимаю не работает в моем случае,
>но как их развязать - не знаю
>2. Как то перенаправить входящие подключения по 80 порту tcp снаружи на
>x.y.z.3, но при этом чтобы работали исходящие по 80 порту от
>squid тоже никак не соображу.
>
>вариант с втыканием в сервер еще одного сетевого интерфейса работать наверняка будет,
>но сейчас невозможен
>
>

Попробуй так
rc.conf
natd_enable="YES"
natd_interface="x.y.z.3 "

В IPFW
divert 8668 ip4 from any to any via x.y.z.3