What is a cloak
Some IRC networks like freenode provide users with a cloak. A cloak is a fake host. The primary goal is to hide your real host from normal users. To get one, register your nickname and ask for a cloak in the #freenode IRC channel. Then, at each reconnection to freenode, identify yourself to NickServ to apply the cloak.
There is a big flaw, you must be succesfully identified before a user issue the /whois command. Otherwise he will see your real host.
To fix this problem, you can use SASL to identify to service before being viewable by others.
Some IRC network provide username registration and cloak but do not provide SASL. This is the case of the Undernet IRC network. In such case, you will have to script something.
Here is my way on Undernet :
- Automatically change your nickname to a random one at each start and disconnection of the client.
- Automatically change your ident to a random one at each start and disconnection of the client.
- Only join channel when you receive the message : yourid.users.undernet.org is now your hidden host
Now the users can’t /whois yournick or /who *yourident*. However they can /who *yourhost* before the server give you the mode +i. However nobody has seen your host yet so it should be ok.
Other way to hide your host than cloak
You can also use tor on some IRC network, But those are rares. You can use a proxy or an IRC bouncer. Or use a combination of tmux/irssi or tmux/weechat on a remote host.