Вот в чем проблема есть две подсети:
1. 192.168.0.0 - Первая сеть
в ней есть шлюз для доступа в интернет - eth1 192.168.0.1
eth0 x.x.x.x(внешний ip)
на шлюзе стоит firewall - iptables v1.2.3.
2. 194.190.67.0 - Вторая сеть.
В этой сети на машине с адресом 194.190.67.118 стоит ftp - сервер.
Эти две подсети соединены роутером, его я настраивал
вот как
route add -net 194.190.67.0 netmask 255.255.255.0 gw 194.190.67.10 eth1
route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.10 eth0
На шлюзе 192.168.0.1 настроено вот так
route add -net 194.190.67.0 netmask 255.255.255.0 gw 192.168.0.10 eth1
На машине с ftp 194.190.67.118 тоже добавлен route add ...
На 194.190.67.118 заходит свободно из сети 192.168.0.0.
Мне нужно настроить, так чтобы когда из интернета заходили на на x.x.x.x (внешний ip), то редиректом запрос перенаправлялся на машину 194.190.67.118. Это у меня никак не получается. Помогите плиз.
Вот ниже приведена настройка iptables на шлюзе. Посмотрите как мне правильно настроить. Это вариант настройки я переделал из документации по iptables.
more /etc/rc.d/init.d/firewall
#!/bin/bash
IPTABLES="/sbin/iptables"
INET_IP="x.x.x.x"
INET_IFACE="eth0"
LAN_IP="192.168.0.1"
LAN_IP_RANGE="192.168.0.0/24"
LAN_IP_RANGE2="194.190.67.0/24"
LAN_BCAST_ADRESS="192.168.0.255"
LAN_BCAST_ADRESS2="194.190.67.255"
LAN_IFACE="eth1"
LO_IFACE="lo"
LO_IP="127.0.0.1"
echo "1">/proc/sys/net/ipv4/ip_forward
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -N bad_tcp_packets
$IPTABLES -N allowed
$IPTABLES -N tcp_packets
$IPTABLES -N icmp_packets
$IPTABLES -N udpincoming_packets
$IPTABLES -A INPUT -p all -i $LAN_IFACE -d $LAN_BCAST_ADRESS -j ACCEPT
$IPTABLES -A INPUT -p all -i $LAN_IFACE -d $LAN_BCAST_ADRESS2 -j ACCEPT
$IPTABLES -A INPUT -p all -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p all -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p all -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPTABLES -A INPUT -p all -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A INPUT -p all -i $LAN_IFACE -s $LAN_IP_RANGE2 -j ACCEPT
$IPTABLES -A INPUT -p all -i $INET_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
$IPTABLES -A INPUT -p tcp -i $INET_IFACE -j tcp_packets
$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 113 -j allowed
#----
#$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 80 -j allowed
#$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 3128 -j allowed
$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 22 -j allowed
$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 20 -j allowed
$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 21 -j allowed
#----
$IPTABLES -A tcp_packets -p tcp -s 0/0 --dport 6660:6669 -j allowed
$IPTABLES -A allowed -p tcp --syn -j ACCEPT
$IPTABLES -A allowed -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p tcp -j DROP
$IPTABLES -A INPUT -p udp -i $INET_IFACE -j udpincoming_packets
$IPTABLES -A udpincoming_packets -p udp -s 0/0 --source-port 53 -j ACCEPT
$IPTABLES -A INPUT -p icmp -i $INET_IFACE -j icmp_packets
$IPTABLES -A icmp_packets -p icmp -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p icmp -s 0/0 --icmp-type 11 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets
$IPTABLES -A FORWARD -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -p all -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p all -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p all -s $INET_IP -j ACCEPT
$IPTABLES -t nat -A PREROUTING -i $INET_IFACE -p tcp -d $INET_IP --dport 20 -j DNAT --to-destination 194.190.67.118:20
$IPTABLES -t nat -A PREROUTING -i $INET_IFACE -p tcp -d $INET_IP --dport 21 -j DNAT --to-destination 194.190.67.118:21
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s 192.168.0.201 -j SNAT --to-source $INET_IP
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -s 192.168.0.190 -j SNAT --to-source $INET_IP