IRCing with TELNET - Understanding IRC Protocol
Copyright © 1999 ech0 Security
Too lazy to read the RFC? Well, this is the "SUMMARY" of RFC1459 on the IRC Protocol.
Hopefully after reading this you'll have a better understanding of how the protocol works. (Hey, don't just use it, try to understand how it works!) Yeah, this is also how some people spoof their IP by telneting from a restricted shell account with no IRC client access.Connecting to the IRC Daemon
Telnet/netcat (Yep, it's using raw socket) to the IRC port (6667/6668) of the IRC server.
eg : telnet irc.dal.net 6667Send your nick & username to be recognized after you get connected using the user command in this form:
user <username> <hostname> <servername> <realname>NOTE:
At any time you receive anything like this:
ping :1234567 <-- The sequence number changes all the timeyou must send back the number with a pong:
pong :1234567If you don't "pong" back, you'll be disconnected with a "ping timeout" error.
Exploring Some Basic Commands
Ok, after the nick & user commands you can start chatting. Type:
join #channel (Without the '/') to join #channel.
Most commands you use in your BitchX or mIRC client can be used here too... Just don't include the '/':
eg: part #channel
To send your message to a channel, use the privmsg command:
eg : privmsg #channel : Hi guys...Sup?This will send "Hi guys...Sup?" to #channel
To send a private message to a user:
eg : privmsg nickname : HI yaThis will send "HI ya" to nickname.
Fun Stuff to Do
If you get something like this:
:nick!user@ip-address PRIVMSG your-nick :VERSION
This means that nick sent A 'ctcp/version' request to you. Send the version back using the NOTICE command. It could be anything you want:
eg : NOTICE nick : VERSION Telnet version 0.1 :)This will send "Telnet version 0.1 :)" as the version reply.
by ech0 Security (c) 1998-1999