Minecraft, a Java client application, is frequently losing connection with the message "Internal exception: java.net.SocketException: Software caused connection abort: socket write error" or the message "Internal exception: java.net.SocketException: Software caused connection about: recv failed".
These are the troubleshooting steps that I have tried and their results:
- Is minecraft up to date? Update to 1.5 (now to 1.5.1): same error
- Is my Windows 7 system up to date? Window update, all optional packages installed: same error
- Is it the server? Connect to another server: same error
- Is it me? Connect to same server from work: no error!
- Is it my connection? Normal internet use with Chrome/Fx: no error
- Is it streaming connections? Long time ssh (putty): no error
- Is my Java out of data? Updated: same error
- Should I be using 64 bit Java instead? Installed: same error
- Maybe 32 bit Java is interfering?
- Manual launch with full path: same error
- uninstall 32 bit Java: same error
- Maybe is should be using 32 bit Java instead? same as above: same error
- Well - I noticed "Native Method" as the root of the Exception in Java - maybe my drivers? Updated: same error
- Are the local Minecraft files corrupted? Deleted .minecraft (and restored after): same error
- Is it my software firewall (Windows built in)? Disabled: same error
- Is it my antivirus (Windows Defender)? Disabled - with and without firewall: same error
- If I watch my NIC with Wireshark will I notice anything that might disrupt my stream? Ran wireshark a few times with the connection breaking: no obvious pattern
- Does my ISP has something against Minecraft for some reason (reaching by now)? Called: They don't do application or port filtering like that
- My motherboard has problems anyway, maybe if I replace it (different NIC)? Replaced: same error
- Okay, connect through completely different equipment, to different ISP? Used a different connection, router instead of 1U switch, different ISP, technology, etc (same cable, didn't dig a new one out of storage, but I doubt that's the problem): same error
- What about a server on 127.0.0.1 (localhost)? Hosted: no error!
- What if I connect to the localhost server using my public IP? same error!
I am reasonably confident by now that it is related to my system in some way, and not the network, network equipment, or remote server. There is no router or hardware firewall, or any NAT device of any type between me and the internet - were there, that would have been among my first troubleshooting attempts.
What else should I try to diagnose this error? The last two steps seem particularly revealing, but I'm not certain where to go from there.
Edit: so, I installed Cygwin and tried
mkfifo backpipe; nc -l 25565 0< backpipe | tee mc.log | nc <server> 25565 1> backpipe from my work box, where it worked, and on my home box, where I instead get "Connection Lost: End of Stream" - fundamentally the same error again.
- Checked with server op - no firewalls running on his end