вот начитался здесь про редирект порта, да не заработало у меня... может поможете чайнику с настройками.имеем на серваке:
1.
ipfw add 45 divert 8667 tcp from any to 212.45.13.42 24554 via rl1
ipfw add 46 divert 8667 tcp from 192.168.20.204 24554 to any via rl1
ipfw add 65535 allow ip from any to any2.
natd -n rl1 -p 8667 -m -v -s -log -redirect_port tcp 192.168.20.204:24554 245543. natd выдает следующее на консоль:
in [tcp] [tcp] [incoming-ip]:3130 -> 212.45.13.42:24554 aliased to
[tcp] [incoming-ip]:3130 -> 192.168.20.204:245544. ядро GENERIC перекомпилял с опциями:
IPFIREWALL
IPFIREWALL_VERBOSE
IPSTEALTH
IPDIVERT
IPFIREWALL_FORWARDна клиент 192.168.20.204:24554 ничего не приходит.
вроде сделал как советовали гуру, но никак не пойму, где собака порылась.
где я не прав ?
1.
ipfw add 45 divert 8667 tcp from any to 212.45.13.42 24554 via rl1
ipfw add 46 divert 8667 tcp from 212.45.13.42 24554 to you_out_addr via rl1
ipfw add 65535 allow ip from any to any2.
natd -n rl1 -p 8667you_out_add - IP твоего сервака смотрящее в мир
>1.
>ipfw add 45 divert 8667 tcp
>from any to 212.45.13.42 24554
>via rl1
>ipfw add 46 divert 8667 tcp
>from 212.45.13.42 24554 to you_out_addr
>via rl1
>ipfw add 65535 allow ip from
> any to any
>
>2.
>natd -n rl1 -p 8667
>
>you_out_add - IP твоего сервака смотрящее
>в мир
ты предлагаешь
ipfw add 46 divert 8667 tcp from 212.45.13.42 24554 to 212.45.13.42 via rl1
?
тогда я вообще ничего не понимаю...
да, я попробовал, все равно не работает.
второе правило (46) и в моем и в твоем случае никогда не срабатывает.
У меня работает
Тачка с двумя сетевухами rl0 10.0.0.1/24 rl1 10.0.1.1/24
Предположем машину с 10.0.0.2 надо перенаправить на почтовый сервак 10.0.1.2
Маршрутизации нет, приходится рэдирект
natd -n rl1
ipfw add divert natd tcp from 10.0.0.2 to 10.0.1.2 25
ipfw add divert natd tcp from 10.0.1.2 25 to 10.0.1.1ВОТ ЭТО 100% работает
>У меня работает
>Тачка с двумя сетевухами rl0 10.0.0.1/24
>rl1 10.0.1.1/24
>Предположем машину с 10.0.0.2 надо перенаправить
>на почтовый сервак 10.0.1.2
>Маршрутизации нет, приходится рэдирект
>natd -n rl1
>ipfw add divert natd tcp from
>10.0.0.2 to 10.0.1.2 25
>ipfw add divert natd tcp from
>10.0.1.2 25 to 10.0.1.1
>
>ВОТ ЭТО 100% работает
ты ядро с какими опциями компилил ?
1)
ipfw add divert natd all from any to any via rl1
ipfw add pass all from any to any
2)
natd -f /etc/natd.conf -n rl1
3)
/etc/natd.conf
redirect_port tcp 192.168.20.204:24554 24554И больше ничего.Снаружи кто будет ломится к тебе
на порт 24554 попадет на 192.168.20.204 порт 24554тут только man ipfw,natd
>1)
>ipfw add divert natd all from
>any to any via rl1
>
>ipfw add pass all from any
>to any
>2)
>natd -f /etc/natd.conf -n rl1
>3)
>/etc/natd.conf
>redirect_port tcp 192.168.20.204:24554 24554
>
>И больше ничего.Снаружи кто будет ломится
>к тебе
>на порт 24554 попадет на 192.168.20.204
>порт 24554
>
>тут только man ipfw,natd
попробовал. НЕ ПАШЕТ !
то есть диверт работает, нат обрабатывает, но пакеты не доходят.
да, в статистике ната присутствуют только записи IN, нет соответствующих OUT. они ведь должны быть, насколько я понимаю ? что здесь не так ?
>вот начитался здесь про редирект порта,
>да не заработало у меня...
>может поможете чайнику с настройками.
>
>
>имеем на серваке:
>1.
>ipfw add 45 divert 8667 tcp
>from any to 212.45.13.42 24554
>via rl1
>ipfw add 46 divert 8667 tcp
>from 192.168.20.204 24554 to any
>via rl1
>ipfw add 65535 allow ip from
>any to any
>
>2.
>natd -n rl1 -p 8667 -m
>-v -s -log -redirect_port tcp
>192.168.20.204:24554 24554
>
>3. natd выдает следующее на консоль:
>
>in [tcp] [tcp] [incoming-ip]:3130 -> 212.45.13.42:24554 aliased to
> [tcp] [incoming-ip]:3130 -> 192.168.20.204:24554
>
>4. ядро GENERIC перекомпилял с опциями:
>
>IPFIREWALL
>IPFIREWALL_VERBOSE
>IPSTEALTH
>IPDIVERT
>IPFIREWALL_FORWARD
>
>на клиент 192.168.20.204:24554 ничего не приходит.
>
>вроде сделал как советовали гуру, но
>никак не пойму, где собака
>порылась.
>где я не прав ?
все замечательно, но вот только нат отправляет пакеты не на внутренный интерфейс, а на внешний.
где поковырять етот нат ?
Вместо вступления ссылки:
http://www.opennet.me/base/net/redirect.txt.html автор:<stalker@allegro.express-3.org>
http://www.opennet.me/base/net/natf.txt.html
автор:Vladimir Sharun <sharun@univest-group.com>Им большое спасибо за то, что все заработало.
1. Настройки из первой статьи:
#!/bin/sh
outip="здесь мой И-нет адрес"
httpserver="здесь адрес моего внутреннего WWW сервера"# for HTTP redirect
ipfw add 1000 divert 8888 tcp from any to ${outip} 80 via cx0
ipfw add 2000 divert 8888 ip from ${httpserver} to any via cx0#run natd
natd -p 8888 -n cx0 -redirect_port tcp ${httpserver}:80 80
ipfw add 2500 allow tcp from any to ${httpserver} 80 via any
--------------------------------------------------------------------------------
cx0 это мой внешний интерфейс.2. В данной конфигурации не работало, поэтому правила я немного подправил в соответствии со второй статьей.
interface="внешний интерфейс"
ipfw add 1000 divert 8888 tcp from any to ${outip} dst-port 80 in recv ${interface}
ipfw add 1100 divert 8888 tcp from ${httpserver} 80 to any out xmit ${interface}#Запуск нат оставил такимже
natd -p 8888 -n ${interface} -redirect_port tcp ${httpserver}:80 80
#Последнее правило для открытия доступа, если он конечно еще не открыт.
ipfw add 1300 allow tcp from any to ${httpserver} 80 via any
3. Но.
Теперь у меня висит два natd - один для маскарада, второй для редиректа. Кто-нибудь пробовал скрещивать это все на одном natd ? Если да, то хотелось бы посмотреть на примеры :)
>вот начитался здесь про редирект порта, да не заработало у меня... может
>поможете чайнику с настройками.
>
>имеем на серваке:
>1.
>ipfw add 45 divert 8667 tcp from any to 212.45.13.42 24554 via
>rl1
>ipfw add 46 divert 8667 tcp from 192.168.20.204 24554 to any via
>rl1
>ipfw add 65535 allow ip from any to any
>
>2.
>natd -n rl1 -p 8667 -m -v -s -log -redirect_port tcp 192.168.20.204:24554
>24554
>
>3. natd выдает следующее на консоль:
>in [tcp] [tcp] [incoming-ip]:3130 -> 212.45.13.42:24554 aliased to
> [tcp] [incoming-ip]:3130 -> 192.168.20.204:24554
>
>4. ядро GENERIC перекомпилял с опциями:
>IPFIREWALL
>IPFIREWALL_VERBOSE
>IPSTEALTH
>IPDIVERT
>IPFIREWALL_FORWARD
>
>на клиент 192.168.20.204:24554 ничего не приходит.
>вроде сделал как советовали гуру, но никак не пойму, где собака порылась.
>
>где я не прав ?