Undernet IRC FAQ [Part I]

Sections:

I IRC for the newcomer
II The Undernet (for the newcomer)
III The Undernet (for the EFnetter)
IV The Undernet (how can you participate?)
V Acknowledgements/References
VI Undernet IRC server list

This document covers section I, and includes answers to:

1.1 What is IRC?
1.2 Alright, now how do I get onto IRC?
1.3 Are there any IRC telnet sites?
1.4 Hmm, I'm confused. What does a client do? What's a server?
1.5 What do I do next, once I'm connected to IRC? Is there a way to get online help?
1.6 Okay, can you describe what a channel is? How do I join/create one? How do I join multiple channels?
1.7 How do I find out:

  • Who's on a channel? (What do H and G mean?)
  • Who's on IRC itself?
  • Who's on IRC from the same site as myself?
  • more info about a person?

1.8 What's a channel operator? How do I become one?
1.9 Help! Someone kicked/banned me from a channel. Whom do I complain to?
1.10 Okay, can you tell me a little more about general etiquette (netiquette) over IRC? What do terms like "re", "brb", etc. mean?
1.11 What's a mode change? What are modes?
1.12 How do I perform an "Action"?
1.13 What are the funny characters that I see at times in channel names or nicknames over IRC?
1.14 How do I find out when someone was last seen on IRC? How can I find out when someone I'm looking for is on IRC?
1.15 How do I get "special effects" such as bold/reverse/underline when using ircII or mIRC?
1.16 Someone on IRC asked me to type in a certain command that I do not understand. What do I do?
1.17 When I try connecting to a server, I get "Connection refused" or "Connection timed out" or "Unknown host". What do I do now?
1.18 What does the message "Ghosts are not allowed on IRC" or "You are banned/not welcome on this server" or "No authorisation" mean?
1.19 What is a netsplit? What's "lag"? How do I avoid either?
1.20 Why do I get that annoying ~ which shows up in front of my address on IRC? How do I get rid of it?
1.21 Hmm, what are all these "power scripts" that I keep hearing about? Do I need them? Why do people call them risky?
1.22 Oh, I see. Now what's a bot? Why do people have a love/hate attitude towards bots? Can I make a bot?
1.23 Help! This extremely obnoxious person keeps harassing me with messages/flooding me. What should I do?
1.24 Hey, I heard that you can exchange files over IRC - how is that done? What's DCC?
1.25 How can I "register" my nickname? What is a username?

While I have tried my best to keep the FAQ updated, there may be inadvertent mistakes or omissions.
If there's a question that you find frequently asked, but not mentioned, please send all suggested additions, corrections, deletions, comments, etc. to [email protected].
The URL on the World Wide Web for this FAQ is:

Undernet Documents Project

1.1 What is IRC?
IRC stands for the Internet Relay Chat. It is a much better, multi-user implementation of the rudimentary UNIX 'talk' program. On IRC, several persons can simultaneously participate in a discussion over a particular 'channel,' or even multiple channels. There is no restriction to the number of people that can participate in a given discussion, or the number of channels that can be formed on an IRC network.
All conversations take place in real-time. That's one of the fortes of IRC, and IRC has been used extensively for live coverage of world events, news, sports commentary, etc. It also serves as an *extremely* inexpensive substitute for long distance calling. People from all corners of the world can be found on IRC.
IRC was developed by Jarkko Oikarinen in Finland in the late eighties, and was originally intended to work as a better substitute for 'talk' on his bulletin board. Of course, since then, it attracted overwhelming popularity, especially after the Gulf war when IRC was used to carry live coverage of events, and its growth has been exponential after that. Since then, reports of the Russian coup, the California earthquake, and the death of Princess Diana have been carried "live" over IRC, with people located in Russia, California, and Europe bringing in the eyewitness reports.

1.2 Alright, now how do I get onto IRC?
The program that you need to get onto IRC is called an 'IRC client.' First, check if your system already has an IRC client installed by entering "irc://" at your Internet browser. If you're lucky, it could have been installed already on your system, and you may skip the remainder of this answer. If you do not have an IRC client installed on your system, then you need to get and install one.
IRC clients have been developed for a variety of platforms, and the Windows mIRC client is by far the most popular one. There are also several clients that run under Windows like PIRCH or Virc. Irc clients have been also developed for *NIX systems, , Mac OS, , etc. Since it's very difficult to keep the sources up-to-date, it's highly recommended to get the clients from their own homepages.
IRC under Windows

1. You must have an Internet connection so that you can have the necessary information to use when setting up your client before connecting to the IRC, like your host/IP address. <-------- what happened to 2-5?
6. These are some good IRC clients to use with Windows. It's very recommended to get them from their own homepages as this will ensure you're getting the latest source.

Windows: mIRC    http://www.mirc.com
The page also contains a very complete FAQ to read and know more about this client. Or you can join #userguide on IRC to get all remaining questions answered.

Other IRC Clients:

macOS: Textual    https://www.codeux.com/
UNIX: WeeChat    https://weechat.org/

WWW to IRC
The Undernet Web to IRC Gateway can be found at:
https://chat.undernet.org
This is a good starting point for newcomers until they are able to install their own client, which of course will offer many more features.

1.3 Are there any Undernet IRC telnet sites?
This question pops up with frightening regularity on the IRC newsgroups. IRC telnet sites are absolutely not recommended except as a *last ditch* effort when compiling a client doesn't work for you, or if you are simply unable to use a client for lack of an account/diskspace/etc. Before answering this question, you should consider the following *disadvantages* of using a telnet client site for IRC:

It is much much slower than using your own client. In cases, you may be connecting across an entire continent to use IRC.
It is usually limited by a maximum number of users allowed on it.
It is not possible to send or receive files over IRC when using a telnet client.
It is not possible to customise and tailor the client to suit your needs.
And finally, a telnet client site may simply stop providing service due to the huge abuse that often results from the client. This is more often the case than the exception. So, you are left stranded and have to hunt for new telnet sites.
In short, GET YOUR OWN CLIENT. At best, telnet client sites should be used as a temporary solution until you are able to get your own client. Every time you use one, you should remember that:

You are using tremendous resources on someone *else's* system which are being provided out of sheer goodwill.
Each time you use one, you deny many others who haven't tried IRC at *all.* Think of it as limited supply of lifejackets for people who cannot swim. Some thoughtless people have the capability to swim but don't wish to learn how to do so, and insist on using this limited supply, meant for others. Please be considerate and set up your client as soon as possible. Telnet clients should be used only as a *temporary* measure.
Currently, no Undernet servers allow users' telnet connections. <----- this is incorrect, if a user can join using a telnet connection then it is allowed
Get your IRC client.

1.4 Hmm, I'm confused. What does a client do? What's a server?
An IRC client reads in the commands that you give it, and parses them. It filters them and performs the appropriate actions, and if necessary, passes them on to a 'server.' An IRC server can serve many other clients. The server holds information about the channels and people on IRC, amongst other pieces of information. It is also responsible for routing your messages to other people on IRC. The IRC network itself consists of multiple servers which connect to one another in a 'tree'-like fashion (as an undirected acyclic graph, to be precise).
It is usually best if you select a server close to the site that you IRC from. Here's a partial list of servers to try:

irc.undernet.org - Random WorldWide servers
irc6.undernet.org - Random WorldWide IPv6 servers

Usually, a countrycode.undernet.org should get you to one of the servers in your region. If not, you can try one of the servers listed above. To find out which server is closest to you once you're on IRC, check the servers list at the URL given below.
To connect to a server, type /server servername.
You can view the official Undernet Server list at :
Servers LIST

1.5 What do I do next, once I'm connected to IRC? Is there a way to get online help? Why won't /help work for me?
Rule of Thumb: All IRC commands must be preceded by a /
Thus, in mIRC typing /help will bring up the available help file. 
Here's a list of general IRC commands to get you started:

/LIST Lists all current IRC channels, number of users, and topic. This may flood you off if you use it on the Undernet; therefore, you may want to limit your search to
/QUOTE list >10
/NAMES Shows the nicknames of all users on the specified channel (except secret channels)
/JOIN Join the named channel. All non-commands you type will now go to everyone on that channel
/MSG Sends a private message to the specified person. Only the specified nickname will see this message.
/NICK Change your nickname
/QUIT Exits IRC with the message specified.
/HELP Gets help on your client commands.
/WHO Shows who is on a given channel, including nickname, userid and host, and realname.
/WHOIS Shows the "true" identity of someone Use this often to make sure you know who you are talking to, because nicknames are NOT owned so any number of people could use a nickname. It also shows the registered username of the user, if logged into X (Undernet).
/PART Lets you leave the specified channel.
However, once you have joined a channel, you need not precede your lines with a /. Whatever you type, simply goes to the entire channel. Precede your lines with a / when you wish to execute an IRC command and when you do not wish the text to be sent to the entire channel.
On Windows clients, you will either set your nickname up during the initial configuration, or change it once on IRC. Type /nick to change your nick after connecting to the IRC.

1.6 Okay, can you describe what a channel is? How do I join/create one? How do I join multiple channels?
A channel is a place on IRC where people can meet and participate in a discussion. Channels on IRC are dynamic in the sense that anyone can create a new channel, and a channel disappears when the last person on it leaves. To get a list of channels you may try the command /list mentioned earlier. You may also *limit* the listing by the use of optional arguments as follows:

/quote list >5 - shows channels with at least 5 people on them
/list *keyword* - shows channels whose names contains "keyword"

On the Undernet, channel names begin with a # or a & (# channels are global, & channels are restricted to the local server). To join a particular channel, use:
/join #channelname
If a channel with the particular name doesn't exist, then a *new* channel is created with that name. The person to first join a channel also becomes the channel operator (see 1.8) by default.

1.7 How do I find out:
* Who's on a channel? (What do H and G mean?) As mentioned earlier, the command /who #channelname will list all users on the channel. This will show an output of the form:
#userguide Macro H*@ [email protected] (the one and only...Macro.)
The channel is #userguide. Macro is the nickname of a person on it. The H stands for 'here.' (persons who mark themselves away will show up as G for 'gone')
The @ stands for channel operator, the * stands for IRCop. [email protected] is his address mask, and what appears in the parentheses is his customisable REAL NAME info. You may also use /names #channelname for a more compact listing.

* Who's on IRC itself?
Biggest networks usually have thousands of users connected and therefore, doing a complete list of all the users will consume huge bandwidth. The command /who can be used to discriminate this search using the users' IP/host addresses. Use wildcards like * or ? to replace a group of characters or a single one.

* Who's on IRC from the same site as myself?
The command /who *yoursitename* should list people from the same site as yourself. (the asterisks (*) are needed). For instance, to list users (excepting those invisible and not in secret channels) from an spanish domain, you can type /who 80.25.195.* or /who *.uc.nombres.ttd.es

* More info about a person?
The commands /who nickname-of-person or /whois nickname-of-person will give you further information about a particular 'nickname'. A slightly more advanced command is /ctcp nick finger, which returns finger information on the given nickname.

* Someone's nickname given their real name?
Most people on IRC do not include real information when connecting to a server. You're more likely to find someone if you know their IP or host address. Use the command /who as explained above. Be aware that including some info in the REAL NAME field of your client does not assure that's the true info.
NOTE: The /who and /whois command switches described here will not show invisible users (see 1.11 and 1.32) nor work on secret channel. They will work with a specified nickname ONLY for such users.

1.8 What's a channel operator? How do I become one?
When you do a /names #channelname, the persons with a @ prefix before their nickname are channel operators for a channel. A channel operator can decide who can be allowed to stay on a channel, and the various settings for the channel (such as whether the channel can be made secret, or invite only, etc). A channel operator can pass on the operator status to another person.
By default when someone creates a new channel (by simply /join #channelname) he gets to be the channel operator. A new channel is created by specifying one that doesn't exist in a /list. So, to become a channel operator yourself, you can either (i) create a new channel or, (ii) ask an existing channel operator to op you. It is considered extremely bad form, however, to join a channel that you have never visited before and immediately ask for ops.

1.9 Help! Someone kicked/banned me from a channel. To whom do I complain?
The answer to this question is the current channel operators, and they alone. Given the dynamic nature of channels, channel operators do not need to have a *reason* to kick you off. They decide what goes on over the channel.
Complaining either to IRC operators or to the system administrators about being kicked/banned from a channel is considered extremely childish, and results in no action. IRC operators do not meddle with channel politics - that's the job of channel operators.
Another IRC netiquette is to keep IRC issues within IRC, because system admins have little time to deal with IRC issues and many would rather shut it down rather than deal with problems arising from it.
If you are banned or kicked from a channel, you are always free to start your own channel and decide what is appropriate over it.
Think of channels as houses. The owner of the house can decide to share ownership with someone else or decide not to allow any individual he chooses into his house. In your own house, *you* call the shots. :-)
Feel free to create your own channel, and set up your own rules for it.

1.10 Okay, can you tell me a little more about general etiquette (netiquette) over IRC? What do terms like "re" and "brb" etc. mean?
* Language: The most widely used language over IRC is English. However, it is by no means the only one. When you join a channel, try to use the language that most people on the channel understand/use. Most channels frown upon obscenities or profanity. Better to play safe and find out what's the accepted norm over the channel.

* Greetings: Using your client's scripting capabilities to automatically say hello or goodbye to people is extremely poor etiquette. Nobody wants to receive autogreets. They are not only obviously automatic, but even if you think you are being polite, you are actually sounding insincere and also interfering with the personal environment of the recipient when using autogreets. If somebody wants to be autogreeted on joining a channel, they will autogreet themselves.

* Lingo: On IRC, communication speed often matters when talking to others, and as a result, many "shorthands" have been developed by IRCers to convey the most amount of information in the smallest amount of keystrokes. Here are some common shorthands:

"re" - repeat hi, used when you have left a channel and rejoined it
"brb" - be right back
"bbl" - be back later
"bbiaf" - be back in a few minutes
"ttyl" - talk to you later
"ttfn" - ta-ta for now
"rtfm" - read the f* manual
"oic" - oh, I see
"afaik" - as far as I know
"imho" - in my humble opinion
"jmho" - just my humble opinion
"rotfl" - rolling on the floor laughing
"nfi" - no f* idea
"wtf" - who/what the f*?
"afk" - away from keyboard
"tmi" - too much information
"bbiab" - be back in a bit
"ctc?" - care to chat?
"a/s/l?" - age/sex/location?
"u" - you "y" - why
"2" - to "b" - be
"r" - are "c" - see
Another common 'emoticon' in use over IRC is the "smiley", which is :-) (look at it sideways), but is often abbreviated to :) There exist many variations to smileys and "frownies" :-) smile ;-) wink :-( consterned :-| serious

* Discussion: When you come to a new channel it's advised that you listen for a while to get an impression of what's being discussed. Please feel free to join in, but do not try to force your topic into the discussion if that doesn't come naturally.

* The DON'TS: The following is a list of "do not do's" on most channels and over IRC as a whole:
Do not flood the channel with text. This can be extremely frustrating for people over slow modem connections, and is likely to get you instantly kicked.
Do not use beeps in your messages.
Do not use colors or highlights in your messages unless you know it is accepted behaviour in that particular channel.
Do not use profanity in your public messages.
Do not harass another user with unwanted messages or comments.
Do not indulge in *destructive* behaviour which reduces the functionality of IRC. (such as running clonebots/floodbots/nick colliders - this can lead to your system admin being notified).
Do not send private messages or notices to people you just don't know. It's better to ask first in the channel.
Do not use uppercase excessively in your texts. Uppercase means "SHOUTING" and it's unpleasant in both real life and IRC.

1.11 What's a mode change? What are modes?
Every user and channel on IRC has a set of "modes" associated with him/it. Here's what the help page on the mode command says:

Usage:
MODE [+|-]

The mode command is quite complicated and it allows channel operators to change channel mode, or any user to change their personal mode. For a channel mode, is one of the following:

i - channel is invite only. A channel operator must /invite users that wish to join.
k - Adds join key to the channel. Keys can be added or removed (MODE -k ), but not changed. A key acts as a password to enter the channel. Type /join to join
a +k channel.
l - channel is limited, where is the maximum number of users allowed
m - channel is moderated (only channel operators and users with a voice [+v] can talk. Users with a + sign next to their nickname in a channel are voiced).
n - No MSGs to the channel are allowed from someone outside the channel.
o - Makes a channel operator.
p - Channel is private. It doesn't show up in /list and won't appear on a user's /whois info, unless you are on the same channel. Unlike +s channels, /who #channelname will reveal who is inside.
s - Channel is secret. Channel will not show up in channel listing, and you cannot get information about the channel except for general modes unless you are on it. /who #channel won't work.
t - Topic limits. Only the channel operators may change the topic when this mode is set.
v - Gives someone a voice to talk on a moderated channel. 
r - Channel is restricted. In a +r channel, only users who are logged into X (have a username) can join. This feature not only applies to registered channels but for all.
R - This mode indicates a channel is registered and is automaticaly set by X upon channel registration, not by channel operators.
D/d - If a channel is set to +D users joining/parting the channel wont be shown. If the channel is set to -D again and there are still "hidden" users left, the server will set mode +d until the last one is visible or left the channel. "Hidden" users are shown by /names -d #channel.
A + or - sign determines whether the specified mode should be enabled or disabled.

The second form of the MODE command allows you to ban somebody from a channel. This is done by specifying a sting of the form [email protected] For example:

/MODE #MyChannel +b *!*@gus.*
bans everybody from the channel who is on IRC from any machine whose name is gus.
/MODE #MyChannel +b netw1z
bans anybody using the nickname netw1z.
/MODE #MyChannel +b *[email protected]*
bans anybody whose user name is merklin.
/MODE #MyChannel +b [email protected]
bans the user [email protected] from the channel whenever he is using the nickname "jerk".

If you are a channel operator, you can list the bans in effect on a channel by typing: /MODE #MyChannel +b
To find out the existing modes on a channel, type: /MODE #MyChannel

The third form of the MODE command allows you to modify your personal parameters. You can precede any combination of the following with + or - (+to switch that mode on, - to switch it off).

i - Render yourself invisible. This prevents you from being seen in WHO and WHOIS information, unless somebody specifies your exact nickname with WHOIS.
w - Allows users to see WALLOPS (messages directed at all IRC operators).
s - Receive server notices. This includes KILL notices and notices about what is happening with links to the local server. This mode is no longer available for normal users.
d - Prevents you from seeing all text in a channel. This is often used for bots. A /whois performed on a user who is +d will return a " - " in front of the channel name that the +d user is on.
o - IRC operator status. For IRC operators only.
x - Host hiding usermode. This will hide your real IP/host and show, instead, [email protected] You will need to log into X to enable this mode. To turn it off, you have to disconnect from the IRC and reconnect.

1.12 How do I perform an "Action"?
Whilst on IRC, you may often see messages of the sort:

*** Action: Muffin hugs everyone!
or on other clients:
* Muffin hugs everyone!

You can do the same via the /me command. /me action will send the action to your current channel. For example, try /me dances. If you wish to send a private action to someone, rather than to the channel, use the /describe command. /describe nick action will send the action to the specified nickname.

1.13 What are the funny characters that I see at times in channel names or nicknames over IRC?
Many people on IRC may use certain ASCII characters instead of their Scandivanian counterparts to convey the same.
In addition, IRC supports the ISO Latin-1 8-bit character set. Thus, Japanese IRC'ers use special ANSI escape control sequences to transmit their Kanji alphabet.
However, destructive individuals often use clone processes to connect to IRC servers and spew garbage. If you see a lump of funny-looking nicknames, please report them to an IRC operator.

1.14 How do I find out when someone was last seen on IRC? How can I find out when someone I'm looking for is on IRC?
The command /whowas can be used if the person in question has signed off recently, usually within the last five minutes.<----last 30 seconds if that even
Typing /whowas Mmmm for example will tell you if a person with the nickname Mmmm was on IRC recently. 
If you wish to be notified when a certain person signs onto IRC, you can use the /notify command. For example:

/notify Mmmm
will add Mmmm to your notify list and let you know when he signs on.

1.15 How do I get "special effects" such as bold/reverse/underline?
These effects can change from one client to another. The following applies for mIRC:

Bold: Press CTRL + b
Underline: Press CTRL + u
Reverse: Press CTRL + r

mIRC also allows you to "colour" your text. To do so, press CTRL + k, then enter a color code (0 to 15).
For your client, check the help files to know more about text enhancement features available.
* Warning: Lines with special effects in them are considered annoying by most people, so be frugal in their usage.

1.16 Someone on IRC asked me to type in a certain command that I do not understand. What do I do?
One word: DON'T. If you do not know what the command does, you should not try it. It is often the case that unscrupulous persons fool newcomers to IRC into typing cryptic commands. Some of these commands can affect the security of your account, and even your system as a whole or infect your system with viruses/worms.

1.17 When I try connecting to a server, I get "Connection refused" or "Connection timed out" or "Unknown host." What do I do now?
This usually happens due to one of the following reasons:

The server name you specified is wrong
Your nameserver is having problems and can't understand the name you gave it and can't translate it into a numeric address.
The server or the machine or the route to the server is down.
When you see this occuring, you should check up as to whether a server of the specified name actually exists. If it does, you should then try the numeric address of the server rather than its symbolic one (e.g. irc.undernet.org). A good rule of thumb is to note down the numeric addresses of your three favourite servers.
Sometimes, you may for some reason not be able to connect on the standard IRC port 6667. In that case, you may try alternate ports 6660 up to 7000 via:

/server numeric-address-of-server port

Keep trying different servers (and/or ports) using their numeric addresses until you're able to connect. If you're still unable to connect, then your ISP is probably having problems and you should contact your system admin.

1.18 What does the message "Ghosts are not allowed on IRC" or "You are banned/not welcome on this server" or "No authorisation" mean?
You may get either of the first two messages when your site or you have been denied access to a particular server. The technical term for it is being "K-lined." If you find that you have been K-lined from a particular server, you can switch to another one. K-lines for entire hosts are sometimes put up by IRC admins for one of the following reasons:

* Your site is not close to the server and you'd be better off using a closer server.
* Someone from your site has been running destructive clone processes over IRC, which used forged IDs. The only way to counteract them was to K-line the entire domain. If you want the K-line for the host to be lifted, you will need to email [email protected]

You can get more information about K-lines from the K-Line/G-Line FAQ. If you wish to ask why you were K-lined from a server, you can write to the server admin for that server. You can obtain the administrator's e-mail address by typing /admin or email [email protected]

The "No authorisation" message occurs due to a similar reason.
The server does not give your site access. A server administrator can choose which sites can connect to his server via "I-lines" (called invitation lines, they are special settings in the IRC server software that allow preferential connections from certain hosts).
Many servers I-line only local sites. You should try to use a server close to you.

1.19 What is a netsplit? What's "lag"? How do I avoid either?
As mentioned earlier, IRC servers are arranged in the shape of an acyclic graph. Let's say a sample snapshot of connections looks like

A ----- B
| |
C D

where A, B, C and D are servers. Let's say that you are on server C, and server A splits from server B.

This "split" often occurs due to faults in the underlying *physical* network. It can also occur due to other reasons, such as if the server's machine crashes, or if it is too overloaded to handle connections, or if an IRC operator willfully disrupts the connection between two servers (happens when operators reroute servers to achieve a better routing).
Then in this case, you will see users on servers B and D "sign off." Voila! That was a "netsplit." When A and B rejoin, you will see users from B and D "rejoin" the channel you were on. To cut down on the mass signoff and rejoin messages that you see during netsplits, you might try the "netsplit" script that comes with the ircII client. Use the command /load netsplit to load it.
* The term "lag" refers to the delay in messages reaching their destination. You might often see a bunch of messages from a certain user all together. In this case it's quite possible that the user is "lagged." If you see a flood of messages from *everyone,* then no messages for a while, then a flood again, etc., it is quite possible that *you* are lagged. To find out how lagged you are with respect to others, use the /ping command. /ping #channelname forces a response from others on the channel, and you can compare response times.
* Lag can occur if you are not connected to a server close to you, or if you are on a telnet client, or due to faults in the *physical* network, or if the machine on which the server runs is slow.
There's not much you can do to avoid netsplits. They're a part of the way ircd was designed, and also a part of the way the Internet runs. To avoid lag, always use the server closest to you. The /links command lists all IRC servers. Use /server servername to switch servers.
* Both lag and netsplits occur much less often on the Undernet, but more on this later. There is also a lag FAQ documentation HERE

1.20 Why do I get that annoying ~ which shows up in front of my address on IRC? How do I get rid of it?
On IRC, it is often difficult for the server to verify the userid of a particular client. Malicious users often use this to their advantage by using forged userids and harassing other users, or starting destructive clone processes which flood the network with garbage. To better authenticate userids, later versions of IRC servers check to see if an IDENT server runs at your site. If it does, the correct userid is queried from the IDENT server and used, and the userid given by the user ignored. A server administrator may choose to make the server tag users whose machines do not run IDENT with a ~ before their name, signifying that they may not be under a verified userid. This way, they can also deny access to troublesome sites that do not run IDENT.
If you see the ~ before your e-mail address in a /whois, and wish to get rid of it, you will need to talk to your system administrator, and ask him to install IDENT. The relevant RFC (request for comments) which gives more information on IDENT is RFC1413.

1.21 Hmm, what are all these "power scripts" that I keep hearing about? Do I need them? Why do people call them risky?
* Most of the scripts that you see advertised are unnecessary. No one needs a script that does mass mode changes for instance. (If you're wondering why, each mode change is transmitted to each and every server on the net. A mass of mode changes thus eats up a lot of unnecessary bandwidth (think about this the next time you do a mode change).
* The scripts which come with the client are more than sufficient to help you get by. Notable scripts that come to mind are the 'tabkey' script, which allows you to flip between people whom you sent messages to before by a press of the tab key, and the 'netsplit' script which cuts down on the mass signoffs and rejoins that you see during netsplits.
* When someone offers you a script, do not /load it without going over it with a fine-tooth comb. Even a simple /load scriptname can cause you grief, if you do not know what the script does. Read each and every line in the script, and get a general idea of what the script does before loading it. Several scripts are known to have 'backdoors' put there intentionally or unintentionally by the authors or distributors. Loading a script which you haven't gone over is a BAD idea.
* To repeat, *never* load a script without reading it first. If you do not understand it, DO NOT load it. Yes, it might have "worked" for others - let them dig their own graves.

1.22 Oh, I see. Now what's a bot? Why do people have a love/hate attitude towards bots? Can I make a bot?
The term "bot" is short for "robot." You can often come across these on IRC. A bot is a detached IRC process which simulates another IRC client. Some bots serve as repositories for files, or useful data, or conduct games. Dumb bots only do mode changes. Harmful bots fork clone copies of themselves or flood the IRC network with garbage (clonebots/floodbots). These are almost universally hated.
Most bots on IRC are a nuisance, even though their owners find their invention "cool." To quote guidelines for bots from the IRC primer:

* [Bots] should be clearly identified as such, having "bot", "serv" or "srv" in their nickname.
* They should use NOTICES to communicate with the rest of the world, and not reply to NOTICES they get.
* They should be able to always be killed (craziness is a frequent disease among robots).
* They should be able to be killed remotely by their owner via IRC.
* They should not give access to their owner's real files (bandits have already been able to crack people's accounts through their robots).
* They should not send messages to channels (unless the channel is dedicated to that robot).
* They should not flood channels with MODE changes.

Please do not make yet another bot which disregards any of these. IRC has more than its share of disruptive bots. *Never* ever take bot code from someone and run it without understanding what it does. This is a common mistake amongst newbies. Security issues come into play again, not to mention that users doing this are often clueless about controlling them, and the bots become a big nuisance.
If you *must* run a bot, learn your IRC client's programming capabilities, or even better, TCL/C/perl & network programming, and make sure that your bot serves a useful purpose rather than "ops you on your channel and keeps it open when you are not there."

1.23 Help! This extremely obnoxious person keeps harassing me with messages/flooding me. What should I do?
One of the first commands that a newcomer to IRC must learn is the magic /ignore command.
With this command you can ignore people flooding you or your channel, or harassing you, or whatever. The syntax of the ignore command:

/ignore nickname
To find the [email protected] for a person, do a /whois nickname, or a /who nickname. If you just wish to ignore messages from the person, you may do a /ignore nick MSG. /help ignore will give you more information on this command. You can use wildcards (* and ?) in the [email protected] Thus to ignore everyone from a *.com site:
/ignore *@*.com

On the Undernet, you can also use the /quote silence command to counter people flooding you by stopping all /notices, /msgs, and /invites at the server level. This cuts flooding at the *local* server, unlike /ignore where your client continues to receive messages even though you may not see them, and causes your client to ping timeout in many cases. Note that the /silence command does not stop channel messages.
The syntax is:

/quote silence [email protected]
Occasionally, malicious users may hack their userid or use different accounts to get around your /ignore. Do not despair. You can still evade people like these by going invisible and changing nicks as follows:

/mode yournick +i OR /umode +i
followed by:
/nick newnick

Once you're invisible, the harasser cannot see your new nickname unless s/he's on the same channel as yourself. Simply make your channel secret and invite only (/mode #channelname +sni) for you and your friends for a foolproof cure.

1.24 Hey, I heard that you can exchange files over IRC! How is that done? What's DCC?
If you have a client that supports DCC (direct client-to- client), you can take advantage of it to exchange files, and even hold secure conversations with your friends. DCC opens a direct connection, which means that apart from the initial requests to establish the DCC connection, further exchange takes place directly between two clients without involvement of intervening IRC servers.
To send a file via DCC to another person, use:

/dcc send nickname filename
In mIRC, a dialog box will appear, asking if you want to accept the file. Choose "Get!" if you wish to do so, and "Cancel" if you do not. You will see establishment of a DCC connection. Now wait patiently until the transfer is completed.
Please be sure to remember that you should never, ever accept DCC files from people on IRC whom you don't know.

You can also use DCC to have a more secure conversation with another person. To use DCC CHAT, try:
/dcc chat nickname
In mIRC, a dialog box will appear, asking if you want to chat. Choose "Chat!" if you wish to do so, and "Cancel" if you do not.

To close a previously sent DCC connection with ircII, use the command:
/dcc close
For example, if you had sent a file called sample.txt to Mmmm, and wish to terminate the send, use:
/dcc close send Mmmm

To list current DCC connections in use, try the command:
/dcc list

1.25 How can I "register" my nickname? <-- need to say Undernet does not have nickserv
Unfortunately, there is no way to guarantee that you can use the same nickname when you're on IRC. Although it is considered impolite to use someone else's nickname, it does happen occasionally on IRC. This can cause confusion, and hence you're advised to make sure that your friends recognise you by your [email protected]

1.26 Where can I find an IRC manual? Where can I find more information about IRC?
For more information on IRC, you can check the IRC primer and tutorials from the Documents Project website: HERE For a technical overview, you can try reading RFC1459. You can also join the Undernet mailing lists - user-com (general IRC help) and coder-com (discussion of Irc software coding/ protocol/etc). To find out how to subscribe, send mail to [email protected] with "help" (no quotation marks needed) in the body of the mail message.


Undernet Sponsors