NAT и PF

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-26 21:29:00

Есть у меня два сервера один смотрит в инет второй подключен локально к первому серверу, чтобы инет был на второй машине я ставил на первую natd и в ipfw писал правила dicert natd для маршрутизации адресов. Щас написал правила для PF и решил все переводить на PF, но после этого пропал инет на второй машинке, погуглив понял что можно сделать NAT и через PF, вот пример правил для NAT который я набросал, но что то не работает

Код: Выделить всё

ext_if = " bce0 " ## внешка 
int_if = " bce1 " ## локалка

set block-policy drop ##сбрасываем соединение грубо
set skip on lo0 ## полностью пропускаем проверку на петле 
set skip on $int_if ## полностью пропускаем проверку на интерфейсе,
set loginterface $ext_if ## включаем логирование на интерфейсе
set optimization normal ## оптимизация

scrub in all ## нормализуем все входящие пакеты на всех интерфейсах
scrub on $ext_if all reassemble tcp

block in log all ## блокируем нахрен

nat on $ext_if from $int_if  to any -> $ext_if ## проброс NAT
pass in on $int_if from $ext_if to any #разрешаем всё из локальной сети 
pass out on $ext_if from $int_if to any keep state  #разрешаем серверу доступ в интернет
но как то не хочет работать....

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

mak_v_
проходил мимо

Re: NAT и PF

Непрочитанное сообщение mak_v_ » 2011-10-26 23:35:59

Код: Выделить всё

nat on $ext_if from $int_if  to any -> $ext_if ## проброс NAT
чуток не туды, чуть поменяйте, например

Код: Выделить всё

nat on $ext_if from $int_if:network  to any -> $ext_if

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-27 0:44:08

Ошибку свою нашел

Код: Выделить всё

nat on $ext_if from $lan to any -> $ext_if ## проброс NAT
где from не интерфейс нужно указыать, а ip ну или подсеть, с этим разобрался все работает

есть еще вопрос по пробросу портов

Код: Выделить всё

rdr on $ext_if proto { tcp, udp } from any to $ext_if port 3306 -> 192.168.0.2 ## редирект 3306 на внутрисетевой сервер с БД
Обьясню что оно делает, на второй машине (та что локальна подключена к шлюзу) стоит MYSQL сервер, вот нужно чтоб к нему подключилась через ip первой машины! Это я сделал

Код: Выделить всё

rdr on $ext_if proto { tcp, udp } from any to $ext_if port 3306 -> 192.168.0.2 ## редирект 3306 на внутрисетевой сервер с БД
nat on $ext_if from $lan to any -> $ext_if ## проброс NAT
Тоесть когда я удаленно подключаюсь к mysql по ip первого сервера pf сам редиректит в локальную машину на нужный сервер! Но есть проблема! я создал доме db1.sitename.com и указал внешний ip первого сервера! Если я через инет лежу к mysql по этому домену то все нормально редиректит, но если я по этому домену буду заходит с первого сервера (шлюза, где стоит сам pf) то почему то редирект не происходит...

mak_v_
проходил мимо

Re: NAT и PF

Непрочитанное сообщение mak_v_ » 2011-10-27 8:40:18

ээ батенька, вам бы книжку умную почитать.....вам правило готовое подсовывают, а вы "нашёл".
по поводу "я создал доме", так у вас правило редиректа работает на внешнем интерфейсе а к своей (или своему наверное) доме вы лезите с какого интерфейса.
Тут уже не пройдет "нашёл" - либо на NS настраивать view internal\external , либо правила pf накручивать .

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-27 11:22:22

Не дописал одну букву! Я говорил за домен

mak_v_
проходил мимо

Re: NAT и PF

Непрочитанное сообщение mak_v_ » 2011-10-27 19:04:27

я вам "за домен" и ответил, но даже спасибы не пачул

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-27 19:18:12

mak_v_ писал(а):я вам "за домен" и ответил, но даже спасибы не пачул
Я вам благодарен! Спасибо! Но целый день провозился но не так и не решил проблему...
должно что то подобное быть, но что то не как не дойдет до меня.
rdr on $ext_if proto { tcp, udp } from any to $ext_if port 3306 -> 192.168.0.2
rdr on $int_if proto { tcp, udp } from 91.204.122.8 to 192.168.0.1 port 3306 -> 192.168.0.2

mak_v_
проходил мимо

Re: NAT и PF

Непрочитанное сообщение mak_v_ » 2011-10-27 19:40:27

а у вас с локальной машины с какого интерфейса идет запрос и через какой интерфейс проходит?
from ??? on??? to????
Настройте bind и не стройте граблей...ИМХО, редирект локального трафика кажется каким-то извращением. Чем вас по IP не устраивает? Почему домен и хостнеймі нельзя нормально настроить?

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-27 19:43:57

mak_v_ писал(а):а у вас с локальной машины с какого интерфейса идет запрос и через какой интерфейс проходит?
from ??? on??? to????
Настройте bind и не стройте граблей...ИМХО, редирект локального трафика кажется каким-то извращением. Чем вас по IP не устраивает? Почему домен и хостнеймі нельзя нормально настроить?
ext_inf уходит в инет, а int_if локальный интерфейс, да мне тоже кажется что локальный редирект это лишняя нагрузка, подскажите на счет bind в какую сторону копать, я так понимаю должно быть две записи типа A, но оно же должно выбирать по какому то правилу что локал, что инет... Заранее спасибо


VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-27 20:25:00

Благодарю! уже читаю я так понял это split DNS

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-29 22:36:41

Да с помощью split DNS все получилось только в resolv.conf пришлось указать DNS этой же машинки, так как он брал инфу с DNS провайдера... тоесть получало ip инетовский...

VVereVVolf
рядовой
Сообщения: 30
Зарегистрирован: 2010-04-26 15:51:14

Re: NAT и PF

Непрочитанное сообщение VVereVVolf » 2011-10-29 23:46:21

А вообще с доменом можно было сделать на много проще.... только что дошло) можно было на DNS указать внешний ip а в файле hosts сего сервера ip сервера БД и делов то... А я извратом занимался...