iptables -j DNAT + REDIRECT
Гость 6 октября, 2005 - 18:40
Кто тут спец по iptables, подскажите!
Мне нужно пакеты с 23 порта внешнего IP адреса направить на 3306 порт внутреннего IP адреса. Не суть зачем, а суть - как?!
Сейчас делаю так:
$IPTABLES -t nat -A PREROUTING -m state --state NEW -p tcp -i $INET_IFACE -d $INET_IP --dport $MYSQL_INET_PORT \ -j mysql_packets $IPTABLES -t nat -A mysql_packets -p tcp -j DNAT --to-destination $LAN_MYSQL_SERV $IPTABLES -t nat -A mysql_packets -p tcp -j REDIRECT --to-ports $MYSQL_LAN_PORT
Но до второго правила в очереде НЕ ДОХОДИТ =((((
Chain mysql_packets (1 references) pkts bytes target prot opt in out source destination 3 144 DNAT tcp -- any any anywhere anywhere to:192.168.10.1 0 0 REDIRECT tcp -- any any anywhere anywhere redir ports 3306
Блин, не знаю что делать. В мануале по iptables написано, что после DNAT пакет идет далее по цепочке - врут =(
Еще хотел добавить, что пакет умирает в очереди INPUT.
»
- Для комментирования войдите или зарегистрируйтесь
Попробуй
Попробуй так:
$IPTABLES -t nat -A PREROUTING -p tcp -i $INET_IFACE -d $INET_IP --dport $MYSQL_INET_PORT -j DNAT \
--to-destination $LAN_MYSQL_SERV:$MYSQL_LAN_PORT
То есть не нужно создавать отдельные правила для изменения целевого адреса и целевого порта. Их можно указать через двоеточие.
Супер! Точно!!!
Супер! Точно!!! Спасибо!!
Я думал так сделать. Но всеж DNAT и REJECT - две отдельные команды...
СПАСИБО!