Вы находитесь на странице: 1из 20

INTERNET RELAY CHAT

Prepared by Tailesh patel

Guided by Mr Chirag paunwala

Introduction
Types of chats Internet Relay chat

Web based chat Chat rooms exclusive to AOL or Yahoo Messenger

Internet Relay Chat Definition

Architecture of IRC
Components
Clients
Operator

Server

Servers

Architecture

[ Server 15 ] [ Server 13 ] [ Server 14] / \ / \ [ Server 11 ] ------ [ Server 1 ] [ Server 12] / \ / / \ / [ Server 2 ] [ Server 3 ] / \ \ / \ \ [ Server 4 ] [ Server 5 ] [ Server 6 ] / | \ / / | \ / / | \____ / / | \ / : [Server 7 ] [ Server 8 ] [ Server 9 ] [ Server 10 ] : [ etc. ] : [ Fig. 1. Format of IRC server network ]

Communication
A 2--/ \
1--\ /

D---4

B----C / \ 3 E Servers: A, B, C, D, E Clients: 1, 2, 3, 4 One-to-one communication One-to-many communication To a List To a Channel To a host/server mask One-to-All communication

IRC Protocol Services

Client locator Message Relaying Channel Hosting and Management

IRC Clinet Server protocol


Messages Message format in pseudo BNF The BNF representation for this is: <message> ::= [':' <prefix> <SPACE> ] <command> <params> <crlf> <prefix> ::= <servername> | <nick> [ '!' <user> ] [ '@' <host> ] <command> ::= <letter> { <letter> } | <number> <number> <number> <SPACE> ::= ' ' { ' ' } <params> ::= <SPACE> [ ':' <trailing> | <middle> <params> ] <middle> ::= <Any *non-empty* sequence of octets not including SPACE or NUL or CR or LF, the first of which may not be ':'> <trailing> ::= <Any, possibly *empty*, sequence of octets not including NUL or CR or LF> <crlf> ::= CR LF Numeric replies:

Connection Registration

Password message Command:PASSParameters:<password> Nick message Command: NICKParameters: <nickname> [ <hopcount> ] User message Command: USERParameters: <username> <hostname> <servername> <realname :testnick USER guest tolmoon tolsun :Ronnie Reagan Server message Command: SERVERParameters: <servername> <hopcount> <info> Numeric Replies: ERR_ALREADYREGISTRED :tolsun.oulu.fi SERVER csd.bu.edu 5 :BU Central Server ; Server tolsun.oulu.fi is our uplink for csd.bu.edu which is 5 hops away.

Connection Registration

Oper Command: OPERParameters: <user> <password> Quit Command: QUITParameters:

[<Quit message>]

Server quit message Command: SQUITParameters: <server> <comment>

Channel operations

Join message Command: JOINParameters: <channel>{,<channel>} [<key>{,<key>}] Part message Command: PARTParameters: <channel>{,<channel>} Mode message Command: MODE Parameters: <nickname> {[+|-]|i|w|s|o} User modes i - marks a users as invisible; s - marks a user for receipt of server notices; w - user receives wallops; o - operator flag :Angel MODE Angel +i ; Message from Angel to make themselves invisible.

Channel operations

Topic message Command: TOPICParameters: <channel> [<topic>]

Names message Command: NAMESParameters: [<channel>{,<channel>}]


List message Command: LISTParameters: [<channel>{,<channel>} [<server>]] Invite message Command: INVITE Parameters: <nickname> <channel> Kick command Command: KICKParameters: <channel> <user> [<comment>]

Server queries and commands

Version message Command: VERSIONParameters: [<server>] Stats message Command: STATSParameters: [<query> [<server>]] STATS m ; check the command usage for the server you are connected to Admin command Command: ADMINParameters: [<server>]

Info command Command: INFO Parameters: [<server>]

Sending messages

Private messages Command: PRIVMSGParameters: <receiver>{,<receiver>} <text to be sent> Notice Command: NOTICEParameters: <nickname> <text>

Miscellaneous messages

Ping message Command: PINGParameters: <server1> [<server2>] Pong message Command: PONGParameters: <daemon> [<daemon2>]

Programs

Window Client Programs mirc,pirch,wsirc Mac Client Programs ircle,snak UNIX Client Program Irc||

Channel Management

Channel Characteristics Namespace #- Standard channels channel Delay ! Safe channels + - Do not support channel modes & - Local channels Privileged Channel Members INVITE - Invite a client to an invite-only channel (mode +i) KICK - Eject a client from the channel MODE - Change the channel's mode, as well as members privileges PRIVMSG - Sending messages to the channel (mode +n, +m, +v) TOPIC - Change the channel topic in a mode +t channel

Channel Modes

The various modes available for channels are as follows: O - give "channel creator" status; o - give/take channel operator privilege; v - give/take the voice privilege; a - toggle the anonymous channel flag; i - toggle the invite-only channel flag; m - toggle the moderated channel; n - toggle the no messages to channel from clients on the outside; q - toggle the quiet channel flag;

Channel Modes

p - toggle the private channel flag; s - toggle the secret channel flag; r - toggle the server reop channel flag; t - toggle the topic settable by channel operator only flag; k - set/remove the channel key (password); l - set/remove the user limit to channel; b - set/remove ban mask to keep users out; e - set/remove an exception mask to override a ban mask; I - set/remove an invitation mask to automatically override the invite-only flag;

Channel Management

Security Considerations Access Control

Channel Privacy
Anonymity

CONCLUSION

Thank You

Вам также может понравиться