Compiled and Written by:
LadyBear: ladybear@jbinet.com
Cypress: jedinyte@dsuper.net
nukem: bbeckwit@mail.tds.net
JumpMan: deve@speedprint.com
This guide was designed as a quick reference for Opers. It was created to fill a gap in the current documentation and provide each oper with the information necessary to help the users with Services-related issues that are commonly seen in the help channel #Services.
The format will be similar to our #Services FAQ with the exception of the section dealing with the step-by-step procedures necessary to fix certain problems in the channels.
Please send all comments, additions and corrections to JumpMan.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~OperServ Commands/Explanations
Official from the Online Help Commands
Operserv General Help - /msg OperServ HELP
MODE (channel) (modes) - Change a channel's modes
KICK (channel) (nick) (reason) - Kick a user from a channel
KLINE (user@host mask) (hours) (reason) - Add a global KLINE
Notice: All commands sent to OperServ are logged!
OperServ Modes Help - /msg OperServ HELP MODE
Syntax: /msg OperServ MODE (channel) (modes)
Allows IRCops to set channel modes for any channel.
Parameters are the same as for the standard /MODE command.
OperServ KLINE Help - /msg OperServ HELP KLINE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Syntax: /msg OperServ KLINE (user@host mask) (+hours) (reason)
user@host mask is the hostmask of the user(s) you want off the
network (dwild@*eskimo.com, etc) hours is the number of hours
the user should be banned. (reason) is a description of why
this user was banned. When you come up with a reason, please
be specific, and keep in mind that this user is being banned
from the _entire network_. If needed, talk to and/or /kill the
user to see if you can get your point across without a global
Kline. DO NOT BAN *@*.domain except in extreme situations.
Also, keep in mind that abuse of services in any way will
result in disciplinary action, up to and including loss of
O: line or the server's links.
Common OperServ Commands
OperServ OP - /msg OperServ mode (channel) +o (nickname)
Gives you or anyone you choose ops in the specified channel.
OperServ KICK - /msg OperServ KICK (channel) (nickname) (reason)
Kicks the person out of the selected channel.
OperServ BAN - /msg OperServ mode (channel) +b (mask)
(note: you can do this after joining the channel and getting ops
and using your irc client to do the ban.
/mode (channnel) +b (mask)
There are a few different bans you can use:
/msg OperServ mode #services +b bill@*.tyme.net
/msg OperServ mode #services +b *!*@*.tyme.net
/msg OperServ mode #services +b Bill!*@*
/msg OperServ mode #services +b Bill!bill@irc.tyme.net
OperServ MODE - /msg OperServ mode (channel) *NOTE* although OperServ can do these mode changes, it is recommended
that we use Chanserv for this. OperServ should be used for functions
chanserv cannot do for us, like remove bans, op and de-op ourselves
and users. To use ChanServ for this, use:
OperServ KLINE - /msg OperServ KLINE (user@host mask) (hours) (reason)
Common ChanServ Commands - To put the function of ChanServ how it
relates to IRCops in the simplest of terms, before we use OperServ
for anything, Global Opers have roughly the same priveledges as a
level 5 channel op in any channel on NewNet. In addition, IRCops can
leave and/or join a channel that is set to invite only without doing
anything special. This enables us to help users with channel problems without going thru
a lot of commands to do it. For example, a channel is set to +i and
there is no-one there, we can go in to the channel unassisted, and
change the channel modes /msg chanserv set (channel) mlock -i. Since
you have done a /msg chanserv info (channel) before going into the
channel, it's easy to see what the founder set the modes to. Most
channels are set to +nt only, if the founder is there (or an op from
the access list) explain to them that +nt-smkpli is much safer and
will help prevent takeovers and that you would be happy to set it
for them in that manor. In this section, we have tried to compile the most common and useful
step-by-step instructions to fix the most frequent problems that we
encounter in dealing with the users. There are two instances that the Global Oper must become the founder.
Note: When set to + (activated) Modes are:
n=no external messages
t=only ops can change the topic
i=invite only
s=secret (will not show on the /list)
p=private
l=limit (requires a number after it, limiting the
number of users allowed on the channel)
m=moderated (only +v and above can be recognized)
k=keyed (requires a key (password) after it) Only
those with the key are allowed entry.
Recommended for most channels: +nt-isplmk
/msg chanserv set (channel) mlock (modes)
Globally removes the user from the Network for a specified
timeframe.
/msg operserv kline *user@host.com +24 reason
permissible times are from 1 to 72 hours.
These are:
To part/join ChanServ
To add/del from access list and akick list
Changing the Founder Pass (user forgets pass)
/msg chanserv set (channel) password (new pass) (reason)
alternate method:
/msg chanserv drop (channel) user requested
user can now re-register the channel
This method must be a last resort since it also clears all modes,
access list, akick list, etc.
Channel TakeOver Scenario
NOTE: Always do steps 1 & 2 before ever joining the channel
STEP 1: /msg chanserv info (channel)
(to figure out who is the founder)
STEP 2: /msg chanserv access (channel) list
(so you know who doesn't belong)
STEP 3: Try and join channel, say hi, act like nothing is wrong while
you /names (channel) then /msg operserv mode (channel) -o (nick)
then /msg operserv mode (channel) +o (yournick)
STEP 4: /msg chanserv set (channel) mlock (-modes locking the channel)
STEP 5: Check the ban list, remove any bans set by the takeovers
END OF EASY TAKEOVER SCENARIO
That was an easy takeover solution, but doesn't always go that way.
BEGIN Additional Steps:
A) If you are banned, type /msg operserv mode (channel) -b *!*@*
and join the channel. Op up an de-op the person as quickly as possible.
B) If they are fast and get you, then you have to guess what ban
they used.
**NOTE** If you log, as most opers should and do, you can usually
check your log for that channel and see how the ban was
added. This doesnt always work, but can save you a lot
of guesswork.
C) Since we can't see in the channel, unless you got in and got a
/names (channel) you have a problem if their user mode is +i.
If you know who is in the channel, you can:
a) use operserv to de-op or
b) kill them for taking over the channel
D) If you can't figure out what ban was placed, you can change founder
to yourself and have ChanServ part the channel thus clearing the
ban list. This is providing ChanServ is the only op in the channel
and providing they set the channel to +i so they can't get back
in either.
E) Join the channel and bring back ChanServ, check the akick list,
just to be sure there are no bans like *!*@* and reset the mlocks
to +nt-skmlip.
F) Tell the others to join the channel. If the attackers return,
set the ban on the channel (not akick) to keep them out until the
founder decides otherwise.
G) Return the channel to founder.
NOTE: IF SERVICES ARE DOWN:
If services are down and there is only 1 op in the channel (the
perpetrator of the takeover) CON them into giving you ops. Tho this
may sound laughable, if you are good, you can accomplish it and save
yourself and the users of the channel a lot of grief.
UnBanning Yourself from a Channel
/msg operserv mode (channel) -b *!*@*
bill@*.tyme.net
*!*@*.tyme.net
Bill!*@*
Bill!bill@irc.tyme.net
Resynching a Channel When the Founder isn't Present
Step 1: Type /msg chanserv info #channel and check who the founder is.
Step 2: Type /msg chanserv set #channel founder yournick (fixing desynch)
Step 3: Type /msg chanserv join #channel
Step 4: Type /msg chanserv set #channel founder (the nick of the founder
from step 1) (returning to founder after fixing desynch)
Fixing Akick List in a Channel
/msg chanserv set (channel) founder JumpMan to fix akick list
/msg chanserv akick (channel) list
/msg chanserv set (channel) founder (nick) done
Removing yourself from an Akick List
Step 1: /msg operserv mode (channel) -o (nick who banned you)
Step 2: /msg chanserv set (channel) founder JumpMan fixing akick
Step 3: /msg chanserv akick (channel) list
Step 4: /msg chanserv akick (channel) del (mask found above, or number)
De-Opping a person from outside the channel
/msg operserv mode #(channel) -o (nick)
Dropping A Nick (user forgot password)
/msg nickserv drop (nick) user requested
Changing the users password
/msg nickserv set password (pass) (nick) (reason)
Oper User Modes:
to enable or disable, type /mode (nick) (mode)
Example: /mode JumpMan +d
o = opered~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
u = unwanted notices such as seeing who did a /whois on you
w = wallops
d = deaf mode
i = invisible mode
c = to see connection notices
k = to see kills??
s = server notices
f = see nick changes
l = kill messages
Server Routing Procedures 101 by Cypress
Routing is basically the way servers are interconnected together on the
internet. And also the most important part of a network technically.
Bad routing can cause lag and downtime for certain servers.
Listing the map to see how servers are connected
To see the how the network is presently routing you can either do /map
or /link although /map is more graphic and for some more understandable
then the /links. Usually when you do either one of these commands...the
server you do them from will be at the top of the list.
Example. Right now I'm on irc.aohell.org so if i do a /map
it shows like this :
irc.aohell.org
|-hub.eskimo.com
| |-irc.mindinfo.net
| |-irc.sprintlink.co.za
irc.aohell.org hub.eskimo.com irc.mindinfo.net irc.sprintlink.co.za
How to recognize where leafs and hubs are linked exactly?
Well when you do /map (which i recommend) the graphic looks like a tree
with branches. Leafs derive from one main server which is called a HUB.
This is an example of a /map :
irc.tyme.net <-------server you are on is always first
`-hub.eskimo.com <-------Hub
|-services.newnet.net
|-services2.newnet.net
| |-*.gaianet.net
| |-*.hpi.net
| |-*.fastrans.net
| |-*.elpasonet.net
| |-*.primary.net
| `-*.w3n.net
|-irc.internet.no <-------European Hub
| `-server3d.nrk.no
| `-irc.salgsnett.no
|-eniac.salamander.com
|-irc.wko.com
|-irc.stinger.com
|-irc.sprintlink.co.za
|-irc2.inficad.com
|-irc.inetnow.net
|-irc.eskimo.com <------Hub
| |-irc.busprod.com
| |-irc.chelmsford.com <------Hub
| | |-irc.interaccess.net
| | |-irc.klis.com
| | |-irc.assassination.org
| | |-irc.yoc.com
| | |-irc.paonline.com <-------Hub
| | | |-irc.dragondata.com
| | | |-irc.1stnet.com
| | | |-irc.aohell.org
| | | |-irc.phantasy.com
| | | `-irc.netreach.net
| | |-irc.deninc.com
| | |-irc.desk.nl <------Hub
| | | |-chick.vub.ac.be
| | | |-newnet.grolier.fr
| | | `-irc.glo.be
| | |-irc.aye.net
| | |-irc.tab.com
| | |-irc.soark.net
| | `-irc2.iadfw.net
| |-thenew.gamesbbs.com
| |-irc.ipf.de
| |-irc.accessus.net
| |-irc.owt.com
| `-irc.mindinfo.net
|-lorien.ml.org
`-irc.tscnet.com <-----Hub
`-irc.intergate.bc.ca
End of /MAP
All servers you see coming down from hub.eskimo.com on the same *branch* so to speak are it's leafs. Meaning, eniac.salamander.com, irc.wko.com, irc.stinger.com, irc.sprintlink.co.za, and others are leafs attached to hub.eskimo at this time. Now if you look at the end..irc.tscnet.com is linked to hub.eskimo.com as well, meaning that hub.eskimo.com is tscnet's "uplink" which interlaces through the rest of the net. And as you notice irc.eskimo.com has some servers linked to it and one of them being irc.chelmsford.com wich is also a HUB. Same thing for irc.paonline.com being a Hub and having irc.chelmsford.com as it's uplink.
**BEFORE Routing**
Your server anywhere you should always try to do a /uping HUBname. HUBname being the hub you might want to try and link to. This will send 5 packets to the hub and give you ping times in return. You should always try and link to the hub where you have hardly or no packet loss and low ping times.
Commands for rerouting:
BEFORE SQUIT ALWAYS PUT A REASON FOR IT
Also Services cannot be remotely connected so don't try. And Anyone squiting services.newnet.net on purpose will result in the lost of their O line and services access removed.
/squit present-hubs-name REASON /connect New-Hubs-name
/squit irc.eskimo.com REASON or /squit *eskimo* REASON
and then..
/connect irc.chelmsford.com or /connect *chelms*
/squit present-hubs-name REASON
/connect new-hubs-name
/squit (leaf_servername) (present_HUB_name) REASON
/connect (leaf_servername) 5555 (new_HUBs_name)
/squit (HUB-needed-squit) (HUBs_uplink) REASON
If Someone who is NOT a leaf server attached to a HUB that is about to be squited or is not that HUB's uplink and does /squit irc.eskimo.com then you will squit the HUB ONLY..which should *never* be done. What will happen exactly..lets say eskimo has 9 servers attached to it. It will squit irc.eskimo.com and leave the leafs out in the cold.It will detach irc.eskimo.com from whatever it is linked to and what is linked to it as well.
Also Please note a leaf will usually find it's best link on it's own. Let's say a server keeps pinging out from a link to irc.eskimo.com and links to irc.paonline.com then it's no use trying to put it back to it's original place. Also when routes are bad..this is where it comes handy. Usually due to very bad routes..and server downtime leafs will link in the best place on it's own and usually this will be it's best uplink for that time.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Server Misc. Info
A:Lines--Specifies what information is seen when /ADMIN is typed
C:Lines--Specifies which server it can connect to.
E:Lines--Exempts defined users from K:Lines
H:Lines--Specifies which servers are to be considered Hubs.
I:Lines--Informs the server which clients are authorized to access server
K:Lines--Defines to server which clients are prohibited to access server
k:lines--Defines to server which clients are prohibited to access server
temporarily. (Set by IRCop)
M:Lines--Specifies the server name, description and port number it is on
N:Lines--Specifies which servers it will accept connections from.
O:Lines--Informs the server which clients can access Operator commands
o:lines--Informs the server which clients can access Operator commands
(restricted to local server commands; e.g., /KILL will only
work on users on the server the operator has an o:Line on)
P:Lines--Sets which ports the server may listen on
Q:Lines--Informs server of which nicks cannot be used on that server
U:Lines--Informs the server over which servers are authorized to make
changes to user and channel mode settings regardless of actual
user status.
Y:Lines--Specifies how servers accept IRC clients.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Oper Conduct
1) /wallops PHRASE. This is used to talk to those users who have their
user mode set to +w. /wallops is a way for operators to talk
about important matters in linking etc. Do not abuse this! The /wallop
command should never be used for chat that can take place in a channel.
This is only to be used in important network matters. Users who have
their mode set to +w, will be able to see wallops, so be careful!
2) An IRCops chief responsibility is to provide speedy and high-quality
assistance to any user who is in need of help courteously. In the event
you may not be able to provide such service, please direct them to
#Services or perhaps another IRCop will be able to help them.
3) Users should feel free and come to any IRCop about any person who is
harassing them. If a user is violating server policies, the user should
be warned at least twice. Then they should be forcibly removed from the
IRC network. If the user persists by returning to IRC and continues
his/her offensive behavior, a temp K:Line should be engaged. Also,
please try to keep your warnings logged...this log should be given to
your Server Administrator to verify user conduct.
4) In the event of a netsplit, servers are automatically made to
reconnect. However, sometimes a server will disconnect and not
reconnect on its own. Unless another Operator gives you good reason
to not do this, re-connect the split servers. Read Routing above. Be
absolutely sure you know the correct procedure.
5) If other Operators are busy with assisting other users or bring the
network back together, offer to be of some help. The more team effort,
the more smoothly your job will be, not to mention your appreciation
from others for your help.
6) Please be courteous to users and refrain using foul language. We are
all human and are likely to curse once or twice in our lifetime,
however, people of all ages come and we cannot afford to lose users
because parents think this is a bad place to be. Also, it represents us
as irresponsible and vulgar. And, once again, please be friendly to a
user asking a question. There is no question worth yelling at them for;
just remember, you were once a newbie too.
7) Always drop Idle conversation in a help channel, such as #Services
to assist a user in need. If you don't know the answer to the question,
say so (one of the main frustrating elements in a help channel is that
when nobody knows the answer, and don't say anything). If you know
anyone on IRC that can help them, direct the questioner to them.
8) Study your client more. IRC has hundreds of commands, and your
knowledge of these commands will benefit not only the person asking
the question, but you as well.
9) Study the main services (ChanServ, NickServ) so that when users ask
you questions about how to do unusual tasks such as add other addresses
to their nickname access list or change founders of their channel,
you may be able to give them the proper information.
10) When you are in a help channel, do not idle when you have users
asking for help. Users who ask a question and get no reply merely
become frustrated and leave--most likely never to return. NewNet is
still in the process of growing and doesn't need to lose users and
even worse, it projects a bad image of an irresponsible IRC network.
11) Do not kick, ban, kill other IRCops or defame them in public. If
you have a problem with someone, take it up in private /msg, E-Mail
or merely avoid them all together.
Clones and Bots
NewNet allows a maximum of three connections per user@host.
Anyone found connected with more than 3 connects MUST be warned first
*before* any kill.
Any user still having over 3 connections to NewNet, after a warning, is in violation of policy and
will be /killed.
The following IP's are exempt from this rule:
.Dont Kill These!
..chat.eskimo.com:/
..cougar.hardlink.net:/
..206.146.5.99:/
..ruacad-gw.runet.edu:/
..into.devoid.net:/
..cougar.puddle.com:/
..millenium.bomb.net:/
..thalie.unice.fr:/
..ai.yoc.com:/
..goof.soundeffect.com:/
..sunfire.ucs.net:/
..sinsen.sn.no:/
..User1@hes*.southwind.net:/
Bots can be used to help people, and can be used to hurt them. There are clone bots, nickname-changing flood bots, hack-bots (designed to steal ops on channels),etc. Also, there are useless bots..such as vanity bots, op-hogging bots (bots that join empty channels just to have ops), cafe-bots (bots that use action commands to serve drinks and food) or bots that don't do anything at all. But, there are a lot of "Good" bots out there. Most people use bots to keep the channel open, and to prevent a channel from take-overs. IRC is for chatting and unless this bot augments that purpose, it is frowned upon by most users----especially server administrators.
Make sure to make clear to get permission from the server administrator if a user wants to run a bot on the server, even if they have an open bot policy. Some servers have no bot policies and make sure to make clear to users to respect that request.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Oper Do's and Don'ts
1) Again, it you are unsure of something, dont do it. Ask someone who
can help you learn the correct procedure.
2) Appreciate the power of "/ignore nick all" and teach other users the
power of it. This single command stops most floods and most disputes
between individuals. It is not necessary to /kill a user for common
floods unless they evade an ignore.
HINT: To know for sure someone is actually being flooded, tell the victim
to change their nick quickly, assume the victims previous nickname, and
the flooding will then be directed at you.
3) Mass Invites, Mass Messaging, Mass Advertising, icmp or nuking, user
harrassment by evading a /ignore, and if Services are down and there
are no channel ops in a channel and it is being flooded are all reasons
for a /kill on the first offense. Proof is required anytime a /kill is
performed and common sense is an absolute necessity.
4) All of the above on the third offense and AFTER speaking with the
offender and getting no satisfaction, a KLINE is probably in order.
But remember, if it is possible to handle a user thru negotiation, it
is far better for our network to do so.
5) Use Meaningful and Concise comments in your /kill and kline's. No
foul language is allowed. It detracts from the professional image we
have a responsibility to nurture.
6) Concerning Routing: You should do a /stats c on every server to know
their primary, and secondary hubs, then if a server is disconnected,
you can review your notes to determine the proper remote link. Ensure
your notes are up-to-date and complete. Routing is a very sticky
business if you are not exactly sure of what you are doing.