Internet Relay Chat
IRC (Internet Relay Chat) is a popular chat system based on a client-server protocol. Users are distinguished by nickname (nick) and are allowed to send each other messages, privately or via public chat rooms (channels). Each user can join more than one channel at a time.
The success of IRC networks is largely due to the flexibility of the protocol, its ability to handle thousands of simultaneously active users and channels.
 General overview
IRC gets its name from the way servers relay messages from a connected user to other servers in the same IRC network. While some small IRC networks consist of only one server, large networks can be made up of tens of servers. Actual chat takes place in channels. A channel name is usually prefixed by a # (hash) sign.
IRC channels are usually open to any users who join them, and channels dedicated to popular topics may have many participants. This is in contrast to instant messaging programs such as AIM and ICQ, which offer connections between individual users.
A channel is overseen by one or more "channel operators," or "ops," who can change different channel modes, channel topics, set or deset ops and voice status on other users, and kick and ban users. Politics among channel administration is usually very high, and this often leads to arguments, takeover attempts, or simply the creation of "rival" channels.
IRC channels and nicknames are not permanent and only exist while in use. Many IRC networks offer services for channel owners and users to register their channels and nicks to prevent them from being "stolen" from them. These services have names such as ChanServ and NickServ, and are operated by sending messages to these automated nicks.
Certain priviliged users, such as channel operators and server administrators, can censor or otherwise perform actions limit to the freedom of users:
- kick: expelling a user from a given channel
- ban: excluding users, identified by nickname or hostname, from a given channel
- K-line: preventing a class of users (identified by their hostname or IP number) from connecting to a given server.
IRC protocol is based on a centralized or semi-centralized network, with unencrypted connections: this means that the activity of end users can be supervised by the same owners of the servers composing the network.
 Security risks
IRC, like many early Internet protocols, was not designed with privacy in mind. Many commands allow one to request information about other channels and users. One can request a list of all users in a channel without actually entering the channel, for instance. Another command returns information on individual users, including the name they put into their client, the server they are connected to, their IP address, and their DNS hostname. A user's DNS hostname usually gives the user's Internet Service Provider and often includes the geographical area in which he lives. Other commands can retrieve the name and version of the IRC client another user is running, and the local time from that user's computer.
A tiny majority of IRC servers do mask IP addresses or hostnames from other users. Some do this through "virtual hosts," which display a vanity false hostname in place of a user's actual hostname. Others explicitly protect a user's IP address and hostname from other users.
In any case, most clients also support "direct client communications" (DCC) features. These bypass the IRC network and establish a direct link between two users' computers. This reveals each other's IP addresses to one another.
The best way to ensure one's privacy on IRC is to connect through a trusted proxy that supports ports 6666 or 6667, which IRC uses. If a trusted public proxy can not be found, running a Tor client on one's own computer might be a good alternative.
 External links
- Anarchopedia's on irc
- #IRChelp Homepage - Contains lots of IRC guides for beginners and experts alike.
- IRC.org - Contains some early history about IRC.