I'm trying to go onto some Minecraft servers today, but it never works. It just pops up with
Internal Exception: io.netty.handler.timeout.ReadTimeoutException
I'm new to Minecraft, so I don't really know what this means. Any help?
You are running Minecraft 1.7.2 and the server you're connecting to is not. Not only is connecting to a server with a mismatched client currently impossible, but the 1.7.2 update brought with it some minor networking protocol changes, resulting in some new and "interesting" (read as "not very informative") error messages, like the one you got.
You can continue playing on that server by either waiting for them to update to 1.7.2, or by setting up a 1.6.4† profile in your Minecraft Launcher:
1.6.4. (This optional step is only necessary if you want to prevent accidentally opening one of your 1.7.2 single-player worlds in 1.6.4, which will corrupt the save. It's not required to allow connecting to 1.6.4 servers. This will also keep your new and old server lists separate.)
When you want to play on a 1.6.4 server, choose the 1.6.4 profile before clicking "Play"; and when you want to play the latest-and-greatest version of Minecraft either singleplayer or on updated servers, choose your default profile.
† I'm only making an educated guess that the server you're trying to connect to is 1.6.4, so adjust these instructions as necessary if I got that wrong. However, it's a pretty safe guess: you were playing on that server just fine before your client did the automatic update to 1.7.2, it sounds like, and that means you were running and successfully connecting with the previous stable version of 1.6.4.
I only suspected that it was a version mismatch, so I did some science to confirm it. I know you are using the 1.7.2 client because the
io.netty in that error message is part of the new networking protocol changes in 1.7.2, but I wasn't sure if this was a bug in the update, or if it was the "normal" error message when connecting to an older server.
I downloaded the 1.6.4 and 1.7.2 servers and tried to connect to each of them with the 1.7.2 client. This is what I got when I tried to connect to the 1.6.4 server:
Exactly the same error you got, which is confirmation enough to my mind.
For completeness, this is what I got when I connected to the 1.7.2 server with the 1.7.2 client:
A working connection! ...Though, damn, stuck on another island.