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

Исходное сообщение
"natd. запрет изменения входящего IP"

Отправлено jackz , 19-Фев-09 14:55 
есть роутер, который при помощи ipfw+natd пробрасывает порты на внутренний сервер. все работает и настроено. но! нужно, чтобы на этом внутреннем сервере сохранялись реальные source ip входящих пакетов, а natd подставляет свой адресс. (нужно, чтобы в логах внутреннего сервера светился не внешний ip роутера, а адреса, с которых запросы пришли)

на данный момент это исправлено брутальным перебросом пакетов на внутренний сервер, а там, входящие пакеты при помощи iptables модифицирую ip, подставляя свой адресс как адресс назначения. но это костыли...


Содержание

Сообщения в этом обсуждении
"natd. запрет изменения входящего IP"
Отправлено Guest , 19-Фев-09 18:42 
>есть роутер, который при помощи ipfw+natd пробрасывает порты на внутренний сервер. все
>работает и настроено. но! нужно, чтобы на этом внутреннем сервере сохранялись
>реальные source ip входящих пакетов, а natd подставляет свой адресс

Нет, NAT не изменяет внешние адреса.


"natd. запрет изменения входящего IP"
Отправлено jackz , 19-Фев-09 23:16 
>>есть роутер, который при помощи ipfw+natd пробрасывает порты на внутренний сервер. все
>>работает и настроено. но! нужно, чтобы на этом внутреннем сервере сохранялись
>>реальные source ip входящих пакетов, а natd подставляет свой адресс
>
>Нет, NAT не изменяет внешние адреса.

тогда почем у меня в логах записывается внешний адрес моего роутера? все соединения идут от него...
даже в манах к natd написано:
  -redirect_proto proto localIP [publicIP [remoteIP]]
         Redirect incoming IP packets of protocol proto (see
         protocols(5)) destined for publicIP address to a localIP
         address and vice versa.

         If publicIP is not specified, then the default aliasing
         address is used.  If remoteIP is specified, then only packets
         coming from/to remoteIP will match the rule.
если я правильно понял, в любом случае в качестве исходящего ip подставляется или publicIP или aliasIP, что в любом случае не подходит...


"natd. запрет изменения входящего IP"
Отправлено Guest , 19-Фев-09 23:34 
>тогда почем у меня в логах записывается внешний адрес моего роутера? все
>соединения идут от него...

Надо думать потому что так настроили или не туда смотрите.

>если я правильно понял, в любом случае в качестве исходящего ip подставляется
>или publicIP или aliasIP, что в любом случае не подходит...

Нет. Меняются src IP исходящих пакетов и dst IP входящих пакетов. Для машины внутри сети всегда видны реальные адреса, а вот снаружи будет видно адрес гейта.

Это как же, интересно, что-либо работало бы, если бы я из внутренней сети постучался на внешний адрес, а пакеты обратно пошли бы с адреса гейта?


"natd. запрет изменения входящего IP"
Отправлено jackz , 19-Фев-09 23:52 
>[оверквотинг удален]
>>если я правильно понял, в любом случае в качестве исходящего ip подставляется
>>или publicIP или aliasIP, что в любом случае не подходит...
>
>Нет. Меняются src IP исходящих пакетов и dst IP входящих пакетов. Для
>машины внутри сети всегда видны реальные адреса, а вот снаружи будет
>видно адрес гейта.
>
>Это как же, интересно, что-либо работало бы, если бы я из внутренней
>сети постучался на внешний адрес, а пакеты обратно пошли бы с
>адреса гейта?

мои конфиги:
ipfw.config:
00010 allow ip from me to any via fxp0 keep-state
00100 allow ip from any to any via lo0
00150 divert 8668 ip from any to any
00160 allow ip from any to any
65535 deny ip from any to any

natd.config:
interface fxp0
use_sockets yes
same_ports yes

#### REDIRECTIONS ####
redirect_port tcp 10.0.0.1:25 x.x.x.x:25

x.x.x.x - мой внешний ip
10.0.0.1 - внутренний сервер
fxp0 - внешний интерфейс

и логи на машине 10.0.0.1:
Feb 19 22:45:13 www postfix/smtpd[17078]: connect from yyy.zzz[x.x.x.x]
вместо того, чтобы показать мне, кто же подключился, он пишет, что это мой роутер. (естественно, для этого пример, я подключался с удаленной машины, за пределами моей сети)


"natd. запрет изменения входящего IP"
Отправлено Guest , 20-Фев-09 16:37 
> redirect_port tcp 10.0.0.1:25 x.x.x.x:25
> connect from yyy.zzz[x.x.x.x]

Я вот не понимаю, как вообще вопросы могут быть? Сами написали aliasIP, сами видите его в логах, при том что в man natd написан пример обычного редиректа, в соответствии с которым все нормалньные люди и настраивают проброс портов. И мыслей не появилось, да?

redirect_port tcp 10.0.0.1:25 25


"natd. запрет изменения входящего IP"
Отправлено jackz , 20-Фев-09 16:52 
>> redirect_port tcp 10.0.0.1:25 x.x.x.x:25
>> connect from yyy.zzz[x.x.x.x]
>
>Я вот не понимаю, как вообще вопросы могут быть? Сами написали aliasIP,
>сами видите его в логах, при том что в man natd
>написан пример обычного редиректа, в соответствии с которым все нормалньные люди
>и настраивают проброс портов. И мыслей не появилось, да?
>
>redirect_port tcp 10.0.0.1:25 25

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


"natd. запрет изменения входящего IP"
Отправлено Guest , 20-Фев-09 16:55 
>нет, я изначально делал так как написали Вы, но оно не работало.решил
>попробовать вот так. тоже не помогло. но оставил так, и начал
>искать другое решение...

Ну значит не судьба :)


"natd. запрет изменения входящего IP"
Отправлено jackz , 20-Фев-09 17:03 
>>нет, я изначально делал так как написали Вы, но оно не работало.решил
>>попробовать вот так. тоже не помогло. но оставил так, и начал
>>искать другое решение...
>
>Ну значит не судьба :)

быть может ))
сейчас попробую pf. там вроде возможностей побольше, да и опыт работы с iptables пригодиться... удобней, когда все в одном файле...


"natd. запрет изменения входящего IP"
Отправлено reader , 19-Фев-09 21:49 
не делайте SNAT для пакетов, идущих на внутренний сервер

"natd. запрет изменения входящего IP"
Отправлено jackz , 19-Фев-09 22:47 
>не делайте SNAT для пакетов, идущих на внутренний сервер

какой SNAT? я же говорю про FreeBSD - про ipfw+natd.
SNAT - это в iptables - там все просто и понятно. а меня интересует именно ipfw, natd.


"natd. запрет изменения входящего IP"
Отправлено reader , 20-Фев-09 00:54 
>>не делайте SNAT для пакетов, идущих на внутренний сервер
>
>какой SNAT? я же говорю про FreeBSD - про ipfw+natd.
>SNAT - это в iptables - там все просто и понятно. а
>меня интересует именно ipfw, natd.

какая разница, SNAT - подмена адреса источника, DNAT - адреса назначения, вот и не пихай в divert, то что идет на 10.0.0.1.
что-то типа

00150 divert 8668 ip from any to not 10.0.0.1


"natd. запрет изменения входящего IP"
Отправлено Kos , 20-Фев-09 23:02 
>[оверквотинг удален]
>>
>>какой SNAT? я же говорю про FreeBSD - про ipfw+natd.
>>SNAT - это в iptables - там все просто и понятно. а
>>меня интересует именно ipfw, natd.
>
>какая разница, SNAT - подмена адреса источника, DNAT - адреса назначения, вот
>и не пихай в divert, то что идет на 10.0.0.1.
>что-то типа
>
>00150 divert 8668 ip from any to not 10.0.0.1

проще
00150 divert 8668 ip from any to any via fxp0