2 months ago I tried to telnet to an IRC server and I did not know what to do. So yesterday I had a little time to waste and I searched a bit to solve my
problem. This small tutorial I wrote this morning is the result. I hope it may be useful for you someday.

IRCing on Telnet
By -=CrAsH DuMmY=-

The IRC protocol was found in august 1988 by a Scandinavian group and has been designed for use with text based conferencing. It has been built on a
server-client model in which the server is forming a central point for clients or other servers to connect to. As you may know, back then in 1988 there was
almost no graphical interfaces for OS so chatting on IRC was done using a Telnet client and proper IRC commands. So lets start right away. First you
have to find an IRC server. If you have an IRC client simply do the same as if you were about to connect and select a server. But instead of connecting
choose to edit it. Then copy the hostname of the server and remember one of the ports it allows connexion to ( usual IRC ports are ranging from 6661 to
6670 ). If you don't have any IRC client just do a little search for +IRC +server* +list. Now you telnet to the server on a port it allows connexion. When you
connect the server will look for your hostname and ident ( Well that's for Undernet, I did not try on other networks ) then nothing, the server is waiting for your command. If you don't have a clue about what to do you may try the help command but in this case the server will ask you to register first. Registering is
really tough, what is tough is only knowing what to do. The login sequence start with the NICK command. Just type in nick yournickhere then enter. Now the server will respond to this command with a ping followed by a number. In order to stay connected you must reply with a pong thenumberhere. Now to complete the registering sequence you just have to use the USER command. So type the following: user username hostname servername realname then enter.
Username, hostname, servername and realname are variables that you enter so when people will do a whois on you they will see the following:
username@hostname :realname. Now you may see here an easy way to hide you IP from other IRC users by entering a false hostname. Unfortunately, the
hostname and servername are ignored by the server when the command comes directly from the connected client so better luck next time. Also in the
command USER ( this is also true for all other commands ) you must put a colon ":" before the parameters if there is more than one word in it. Here is an
example: user Eli aol aol1 :no idea. Now that you have registered, the server will respond the same way as it usually respond in status when you connect
with an IRC gui sending the MOTD if present ( message of the day ). At this point, it works almost the same way as an usual IRC gui except you don't type
the / before the command. So to join a channel simply type in join #channel and then the topic will appear with the nick of the person who wrote it as it
normally appear in the channel's window. Then the servers will send to you the list of users currently on the channel ( this is normally send to the status
windows with a gui ). The main difference with a Telnet IRC connexion is that everything is send to the same Telnet window so it is bit harder to follow
conversations especially if you are on many channels at the same time. Now an other thing that is a bit different from a gui is the way you send to a
channel. You simply have to use de PRIVMSG command. Just type in privmsg #channel :your text here. Remember to put the : before your text else only
the "here" in this case will appear in the channel. Also, when you stay idle for a long time with a gui client, you will see sometimes ping? pong! appear in
the status. This is because the gui automatically answer the server's ping for you. When you are using Telnet, you must answer this by yourself or you will
be disconnected ( ping timeout ). There are also fun things to do. Suppose someone do a CTCP version on you, you will see the request on your screen
but the user who sent the request will recieve nothing because you are not using any gui. So you can just type the following command: notice nick :using
Telnet version 0.1 ( where nick is the nickname of the person who made the version request ) or you simply can answer anything you want because you
have total control over answers to CTCP request made by other IRC users. There are many other commands you can use and for more information you
can go read the RFC1459 which describe the Internet Relay Chat Protocol.
~ = [ Knowledge Keepers fo Electronic Liberty ] = ~