The server is behind nat with port 21 forwarded to the server. If I do a ping or go to the website with an external computer not on the same LAN as the server everything works out right. Except when using an FTP client. It will make the initial connection saying the password was right but then as soon as the client goes to do a list I see that the server is giving the client the internal IP (behind the NAT) instead of the external one so that it can finish the connection. I am using SmartFTP. It is trying to do passive mode also. [01:57:16] LIST -aL [01:57:37] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. Tried looking around on the forums, sorry if it has already been asked.
Did you try to use both active and passive FTP? It might be a problem with your router that not all needed ports are forwarded to your server.