PASV 227 Entering Passive Mode fails consistantly

This is the resulting log when I try to connect to a server I use:

Resolving host name ###.###.###.###...
Connecting to (###.###.###.###).
Connected to () -> IP: ###.###.###.### PORT: 21.
Socket connected waiting for login sequence.
220-=(<*>)=-.:. (( Welcome to PureFTPd 1.0.12 )) .:.-=(<*>)=-
220-You are user number 3 of 50 allowed.
220-Local time is now 07:40 and the load is 0.13. Server port: 21.
220 You will be disconnected after 15 minutes of inactivity.
USER username
331 User username OK. Password required
PASS (hidden)
230-User username has group access to: username
230 OK. Current restricted directory is /
SYST
215 UNIX Type: L8
FEAT
211-Extensions supported:
EPRT
IDLE
MDTM
SIZE
ESTA
ESTP
REST STREAM
MLST type*;size*;sizd*;modify*;UNIX.mode*;UNIX.uid*;UNIX.gid*;unique*;
MLSD
PASV
EPSV
SPSV
211 End.
Detected Server Software: PureFTPd
REST 100
350 Restarting at 100. But we're in ASCII mode
REST 0
350 Restarting at 0
PWD
257 "/" is your current location
TYPE A
200 TYPE is now ASCII
PASV
227 Entering Passive Mode (###,###,###,###,168,131)
Opening data connection IP: ###.###.###.### PORT: 43139.
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.
PORT ###,###,###,###,4,34
200 PORT command successful
Opening data connection IP: ###.###.###.### PORT: 1058.
LIST -aL

The two numbers at the end of the 227 message change, thus the PORT changes and it always hangs there and then gives me the time out message. This is frustrating. I was one update behind and this was happening. I am now current with the latest update and it is still happening. I connect to another server just fine so I don't think it is SmartFTP, but I don't know what to do. This used to work on the server I am having trouble with.

Does anyone have a clue about this? It's pretty weird to me.

Thanks, T. J. Shanahan.