Update: Apparently this has been fixed in the next Desktop and Mobile version of Colloquy. I found someone linking to this very article in the support ticket. If you want a fixed version now you must build from source, or else just wait until the new version is released and follow the steps below.

I use Colloquy on the Mac to connect to the company IRC channel on freenode. IRC is such an old technology but I find its pretty great for daily company communication. Also when a few people are working on a project together, they can just create a passworded room for quick intercommunication. The only thing it lacks from my previous employer’s method of using Skype rooms is proper logging / history for when you’re not logged in. Still, I generally dig it’s simplicity and people can email if you’re not around. Additionally, I gain the benefit of joining the #emacs or #html5 (etc) channel when I need to solve a quick problem.

During my daily Caltrain commute from SF to Palo Alto, I generally join the chatroom through a tethered iPhone 4. This used to be effortless but in the past two days I’ve been blocked by this strange error:

NICK krunkosaurus
USER krunkosaurus 0 * Anonymous User
NOTICE * *** Looking up your hostname...
NOTICE * *** Checking Ident
NOTICE * *** Couldn't look up your hostname
NOTICE * *** No Ident response
433: * krunkosaurus Nickname is already in use.
NICK krunkosaurus_
NOTICE krunkosaurus_ *** Notice -- You need to identify via SASL to use this server
ERROR Closing Link: (SASL access only)

I did some Googling, and it’s as if Colloquoy thinks I’m going through a TOR server or the like. Googling more I found this tweet where a guy was having the same error on a tethered T-mobile (I’m on AT&T). A member of Colloquy told him to try using an SSH tunnel. (Turns out the real issue seems to be that the IRC clients are trying to connect to your mobile carrier instead of the IRC server – it happens to me on all IRC clients including Adium.)

Anyways, the fastest solution for me was creating a SOCKS proxy via Adium (Colloquy doesn’t have built-in SOCKS support but you can apparently just do regular port forwarding). You do need SSH access to a remote server in either case. The steps are as follows:

1) Open up terminal and type: ssh -vD 6667 username@yourserver.com
2) Open up Adium and go to File > Add Account > IRC
3) Fill in handle and chatroom details
4) In the Proxy tab, checkmark “Connect using proxy” and specify SOCKS5.
5) Server is “localhost”. Port is: 6667.

You should now be able to connect.

Tip: Don’t save this with autoconnect unless you’re always mobile. Instead save this as your “mobile” Adium account which you can switch to from your regular account when you are tethering.