Добрый день!подскажите... что-то никак понять н емогу как решить. Хочется сделать чтобы пакет посланный на порт 4406 приходил на 3306 (пусть к примеру на том же IP).
Делал так:
rc.conf:
firewall_enable="YES"
firewall_type="/etc/ipfw.conf"
natd_enable="YES"
natd_interface="nfe0"
natd_flags="-f /etc/natd.conf"
natd.conflog yes
same_ports yes
use_sockets yes
redirect_port tcp 127.0.0.1:3306 4406
ipfw.conf
00020 0 0 divert 8668 ip from any to me dst-port 4406
00050 9106 44615426 allow ip from any to me established
00060 0 0 deny tcp from not me to me dst-port 3306 in
00100 102 6120 allow ip from any to any via lo0
00240 0 0 allow ip from any to me
00250 31738 68877147 allow ip from me to any
и не работает ( ...в /var/log/alias.log
PacketAlias/InitPacketAliasLog: Packet alias logging enabled.
icmp=0, udp=0, tcp=1, pptp=0, proto=0, frag_id=0 frag_ptr=0 / tot=1 (sock=0)
icmp=0, udp=0, tcp=2, pptp=0, proto=0, frag_id=0 frag_ptr=0 / tot=2 (sock=0)то есть пакету до ната добираются... а вот что дальше происходит непонятно.
# telnet 127.0.0.1 4406
Trying 127.0.0.1...и дальше нет ответа...
Как у вас всё интересно :-)1) natd_interface="nfe0" и redirect_port tcp 127.0.0.1:3306 4406 и "пусть к примеру на том же айпи"
2) оригинальнейшее содержимое ipfw.conf. Положим, это вывод ipfw show, но тогда в нем очень явно видно
00020 0 0 divert 8668 ip from any to me dst-port 44063) Это не iptables, здесь надо мыслить совершенно по-другому. Забудьте про iptables/pf.
Здесь нужно четко понимать прохождение пакета, и в ту, и в обратную сторону.
В ваших правилах этого понимания не видно. (на natd надо заворачивать и ответные пакеты)
Структурируйте ваши мысли. Следите за прохождением пакетов через ipfw, добавляйте правила-счетчики с вашими условиями совпадения, и проверяйте, есть ли такие пакеты или нет. Получите понимание прохождения пакетов, получите работоспособность системы.
Закроем глаза на то, что Вы делаете с loopback.1) Разрешите пакету приходить к Вам на внешний интерфейс
2) Сделайте divert (NAT) пакета на внутренний интерфейс (а Вы думали, зачем людям NAT?) и обратно.
3) Разрешите отNATеному пакету "гулять" до нужного IP:port и обратно.Суть: пакет попадает в IPFW дважды, если только one_pass не включен (вроде). lissyara в свое время очень подробно жевал про пакеты.