This week I noticed a strange problem with my irc client.
First day (Tuesday), it would fail to connect. Since my login to the campus network expired, I had to relogon, so I thought the problem was simply related to that and that the irc client wouldn’t recover until an application restart.
Second day, it still didn’t connect, which I thought was strange, but I didn’t have time to chat anyway, so I neglected.
Today, I frowned and decided to take a look 🙂
First of all, I noticed it wasn’t really a connect problem, it couldn’t even resolve the hostname. Heh? When I ran “nslookup irc.freenode.org” it spit out:
;; Truncated, retrying in TCP mode.
;; Connection to 192.168.2.1#53(192.168.2.1) for irc.freenode.org failed: connection refused.
I went to the freenode site, to see if there were any news items reporting problems or outage. There didn’t seem to be a news section. So I assumed: no news == good news. 🙂
Then, I noticed the actual hostname for irc is really chat.freenode.net instead of irc.freenode.org. “chat” or “irc” in front works both. Indeed, that did work. So why did irc.freenode.org suddenly stop working? Was it because of a recent patch (although I couldn’t remember applying any in the last week)? Was it because of my firewall? Both answers are negative.
The friendly chaps at #freenode kindly tipped me off that the dns record had probably become too large to be transmitted through UDP and that TCP dns requests seemed blocked. Servers get added to the network on a regular basis, so that would explain why it suddenly stopped working. It became obvious that my dusty old router would be the culprit (quick tip: never blame your linux kernel first 😉 ). After all, according to contemporary standards, one could declare mine “ancient”.
Quite recently I already encountered some problems with it. After an upgrade of the campus network, I kept having strange packet loss when playing multiplayer games for more than 2 minutes. I had never updated my firmware, so I thought I might try that. Although the latest firmware release dated back to 2004, it did help! mattie=1, router=0.
After I pulled the router out of the chain, the dns problem was solved indeed! Unfortunately, updating firmware is no longer an option, so I guess the router and I are even now. 😉
On #freenode, I was told I wasn’t the first one to report this problem, so I guess a lot of people will need to update their firmwares, buy new routers, or simply use a more local dns name. 😉