I mess w/ this at most once per year. Long enough to forget everything.<br><br>I have a machine w/ one internet interface and one private network interface. There are three IPs on the internet interface. I have a virtual machine on the private interface w/ IP 192.168.99.100. I want to be able to FTP to the internet interface at 69.60.125.100 and connect to the ftp server running on the VM.<br>
<br>I had this working before but that server died. The rule that I used (modified for the correct IPs) is below, but it&#39;s not working. Can anyone give a hand?<br><br>iptables -t nat -A PREROUTING -p tcp -i eth0 -d 69.60.125.100 --dport 21 --sport 1024:65535 -j DNAT --to <a href="http://192.168.99.100:21">192.168.99.100:21</a><br>
<br>I&#39;m using similar rules for http, smtp and pop3 and they work fine. I suspect there is something I forgot to make note of. <br><br>When I try to login via FTP I can connect but I can&#39;t list any files. It sits and does nothing for a long time using command line ftp client, using filezilla (which tries passive mode) it says:<br>
<br>Server sent passive reply with unroutable address. Using server address instead.<br>Command: LIST<br>Error: Connection timed out<br>Error: failed to retrieve directory listing<br><br>Here are the other rules I have at the top of my iptables script:<br>
<br># enable nat/forwarding<br>echo &quot;1&quot; &gt; /proc/sys/net/ipv4/ip_forward<br>iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE<br><br># is this necessary?<br>iptables --append FORWARD --in-interface eth1 -j ACCEPT<br>
<br clear="all"><br>-- <br>Matthew Nuzum<br>newz2000 on freenode, skype, linkedin, <a href="http://identi.ca">identi.ca</a> and twitter<br>