FTP hell
May 3, 2005 6:14 PM   Subscribe

Please help me diagnose my FTP issue so I can find out who's responsible and work to correct the problem.

From home, I can't transmit files via FTP. If I try, I see one of two things: (1) If the file is less than 32K, it appears that the entire file is transmitted, then it locks up/times out. If it's more than 32K, it locks up at 32768 bytes and times out. This happens independent of ftp client and operating system (tried OS X, Windows XP, MacOS 9). Traceroute is giving me a page full of asterisks. Ping to the host comes back in 68 ms.
Verizon vehemently denies that it's their doing, and my hosting service claims clear sailing.
I can move files across from work (in the same town as my house--so I trust my host, but I don't know what their connection is offhand), but I'd prefer to do this from home rather than cart files back and forth.
How do I diagnose this from here?
posted by plinth to Computers & Internet (10 answers total)
 
Are you able to send files to somebody else outside your network using FTP?

As an aside, can you transfer files using something other than FTP, like SFTP (file transfer+ssh) or DAV? There are alot of operational reasons not to use FTP if you have a choice.
posted by ldenneau at 6:28 PM on May 3, 2005


well I'm not an ftp expert but my troubleshooting steps would go like this:

1. Try to do the ftp session via a different ISP from the same house [so use dial-up if you're using DSL, different dial-up if you're using dial-up]

2. If you're using DSL, use different DNS and retry traceroutes and see if that makes a difference [might want to do this first actually] Alternately, can you connect to your host via IP instead of by domain name?

3. Does this happen no matter where you are ftp-ing to? Have you tried connecting to another ftp site?

4. Have you tried command-line ftp from OS X and/or WinXP?

5. Have you tried both passive and active ftp connections with your ftp clients?

6. can you move other large files over the network, stream video, etc?

I recall that we had a weird "ftp dies after some fixed transfer amount" issue at an ISP I worked at, don't remember what the solution was, but it was definitely something we had to fix with our hardware. All of these steps are ones you'll need to tak, I think, before you start pointing fingers at responsible parties. The traceroute full of asterisks is troubling.
posted by jessamyn at 6:29 PM on May 3, 2005


Do you have Cisco's VPN client installed? I've had similar problems when it's running. Even if I haven't logged into any VPNs, just having the service running does this to me. If I go into "services" and stop it, FTP works fine.
posted by bonecrusher at 6:49 PM on May 3, 2005


Response by poster: 1. Not an option. Used to work with cable modem until I ditched it in favor of cheaper DSL -- you get what you pay for, I guess.
2. And how would I get something other than what verizon has provided?
3. I have at least one other host that functions fine.
4. I have tried command line ftp, sftp, fugu, FileZilla, Dreamweaver (Mac and PC), Fetch.
5. I have tried active and passive and all permutations of settings in Dreamweaver
6. I routinely move large files from machine to machine through my LAN and can download all kinds of pr0neducational videos.

Dav connects through the Finder on the Mac and through Explorer on XP but I can't put a file (both hosts say no permissions). DreamWeaver won't connect through WebDav (but I found a technote that confirms that as a known issue).

I routinely fail to upload photos to ofoto and send attachments through email (suggesting that this is not a protocol specific issue).
posted by plinth at 7:19 PM on May 3, 2005


Response by poster: And if it helps, the connection upstream goes: PC/Mac->Hub->LinkSys router->DSL modem, a setup which has worked unchanged until the DSL switch.

I found a couple lists of alternative DNS servers, so I plugged those into the list in the Network control panel on my Mac and tried applying the change and rebooting. No appreciable difference except that I can do a traceroute now.

I did a netstat during a locked up transfer and got this:
tcp4 0 5610 192.168.2.101.49158 one.textdrive.co.60881 FIN_WAIT_1

My frustration level is through the roof, and it takes a lot to get it there.
posted by plinth at 7:38 PM on May 3, 2005


I've fixed networking problems after running ethereal to capture and view the packets. It runs on linux and windows, I expect there is a mac version. Just click on Capture to start collecting packets. It's easy to get started with it, but has lots of powerful features too.
You can enter a filter at the bottom of the screen, to limit the displayed packets. To see just one IP address's transmit and receive - for example: ip.addr==10.20.30.40
posted by jjj606 at 8:36 PM on May 3, 2005


If traceroute is giving you all asterisks, that sounds like incoming ICMP packets are being blocked somewhere along your connection (probably by your DSL modem or router). Blocking ICMP traffic breaks Path MTU Discovery, which means that sending any packet bigger than the MTU (Maximum Transmission Unit) will fail.

But enough jargon: A quick fix is, if your router allows you to an MTU manually, set it to a 'safe' value like 1412, or, failing that, in OS X, go to terminal and type, without the quotes, 'sudo ifconfig en0 mtu 1412' (entering your admin password as necessary) to change it for you ethernet interface. Substitute en1 for en0 to change it for an Airport card; other network interfaces (like VPNs, IP over firewire, et al) will have other names that you can get by running 'ifconfig' with no parameters.

Keep in mind that you'll have to do the latter trick every time you restart the computer, which I won't go into unless necessary.
posted by boaz at 8:39 PM on May 3, 2005


Alternatively, you might just need a firmware update for your router.
posted by boaz at 8:53 PM on May 3, 2005


Boaz's path MTU discovery theory is the one that sounds most plausible to me: a firewall or NAT somewhere is dropping ICMP packets it shouldn't, and causing the MTU discovery to hang. This would screw up any TCP connection sending more than a small amount (1 packet's worth) of outgoing data at once: large Web form submissions, sending large emails, etc.

Can you transfer a small file (say, 1k) using FTP?

Do you have any administrative or control-panel interface to your DSL modem (or your router, but since the DSL modem is new it sounds like it might be the culprit)? Maybe there's an option you can twiddle.

Could it be that both the DSL modem and the Linksys router are trying to do NAT and confusing each other?
posted by hattifattener at 10:30 PM on May 3, 2005


Response by poster: It looks like if I set the Linksys router to "Dynamic Routing" I can get data through (albeit slowly). It does a 32K blast then a hang and some negotiation and then another 32K ad nauseum.
posted by plinth at 5:50 PM on May 9, 2005


« Older Dunking a basketball   |   How do I trick my cat into peeing? Newer »
This thread is closed to new comments.