Hi,

I think you should try the following, it works fine form me:

iptables -t nat -A PREROUTING -p tcp -d $IPADDR --dport 80 -j DNAT --to $PORTFWIP:80
iptables -A FORWARD -i $EXTERNAL_INTERFACE -m state --state NEW,ESTABLISHED,RELATED -j 
ACCEPT
iptables -A FORWARD -p tcp -d $PORTFWIP --dport 80 -i $INTERNAL_INTERFACE -j ACCEPT

you have to enable forwarding for your internal interface too, because it 
will be blocked if your default policies are set to drop.

Best Regards,
MfG.

Stefan Walther
[EMAIL PROTECTED]
[EMAIL PROTECTED]
dienst.: +4930/89786448
Funk: +49172/3943961




"Scott Adamson" <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]
25.02.2002 13:37

 
        To:     <[EMAIL PROTECTED]>
        cc: 
        Subject:        Trying to forward port 80 to a different ip address


My setup is as follows:
 
eth0 - 
address     203.89.239.135
broadcast  203.89.239.255
mask        255.255.255.0
 
eth1 - 
address    192.168.0.81
broadcast 192.168.0.255
mask        255.255.255.0
 
 
eth1 is connected via a crossover cable to 192.168.0.51, which is the web 
server. 
I'm trying to get iptables to forward www requests coming in to 
203.89.239.135 to 
this second machine at 192.168.0.51. I have read the howto on linuxdoc, 
plus the one on the netfilter site, they say to add something like
 
 
EXTERNAL_INTERFACE="eth0"
INTERNAL_INTERFACE="eth1"
IPADDR="203.89.239.135"
IPADDR_INT="192.168.0.81"
 
PORTFWIP="192.168.0.51"
 
    $IPTABLES -A FORWARD -i $EXTERNAL_INTERFACE -o $INTERNAL_INTERFACE -p 
tcp --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
    $IPTABLES -A PREROUTING -t nat -p tcp -d $IPADDR --dport 80 -j DNAT 
--to $PORTFWIP:80
The packets seem to get redirected, as they don't go to the server at 
203.89.239.135, they go nowhere. Can someone assist
with this, I have have found little information on the web except for 
'just put in this PREROUTING line and it works great!' kind 
of useless information. What else  is required to get this to work ? 



Reply via email to