Hi All,
 
I have encountered a wiered (or maybe a stupid) problem with iptables NAT forwarding.
 
----------------------------------------------------------------------------------------------------------------------------------------------------------
Settings:
----------------------------------------------------------------------------------------------------------------------------------------------------------
I have four machines in the setting:
    Machine A:             192.168.1.81                 RedHat 7.3
    Machine B:             192.168.1.17                 RedHat 7.3
    Machine C:             192.168.1.101               Microsoft XP
    Machine D:             An public IP address      RedHat 7.3
 
On Machine A, I have just one Rule:
 
    iptables -t nat -A PREROUTING -d 192.168.1.81 -j DNAT --to-destination 192.168.1.17
 
On Machine A, B, and D, ipchains were disabled, iptables were enabled. Running rpm -q iptables gave me:
 
                iptables-1.2.5-3
 
On Machine B/D, no rules were set, defauled to accept all.
-----------------------------------------------------------------------------------------------------------------------------------------------------------
 
 
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Problems:
-----------------------------------------------------------------------------------------------------------------------------------------------------------
    pings:
    1. Machine C to ping 192.168.1.81:         OK (should actually ping 192.168.1.17)
    2. Machine C to ping 192.168.1.17:         OK
    3. Machine A to pring 192.168.1.17:        OK
 
    telnet:
    1. Machine C to telnet 192.168.1.17:       OK
    2. Machine A to telnet 192.168.1.17:       OK
    3. Machine C to telnet 192.168.1.81:       No response
 
According to the rule, when Machine C telneting Machine A, Machine A should forward packets to Machine B, resulting in telneting Machine B. If use netstat, it did tell us that Machine A forwarded several packets.
 
However, if I change the rule on Machine A to forward all packets to Machine D, everything works just fine. Machine C can telnet Machine A, which ends up telneting Machine D.
-----------------------------------------------------------------------------------------------------------------------------------------------------------
 
 
 
Having struggled for several days, I am desperate!!!!!!!!!  Your help is GREATLY appreciated!
 
My questions are:
    1. Is there anything wrong in my understanding of iptables?
    2. Anything wrong in the setting?
 
 
Thanks!
 
Chen Ding