DWIRC:Staff Training/IRC Fundamentals

From DWWiki
Revision as of 22:25, 8 August 2026 by Fizi (talk | contribs) (Protected "DWIRC:Staff Training/IRC Fundamentals" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


DarkWorld IRC Staff Training
Module 2: IRC Fundamentals

Program DarkWorld IRC Staff Training Program
Module 2 of 10
Difficulty Beginner
Estimated study time 2–3 hours
Assessment Knowledge check and practical IRC exercises
Prerequisite Module 1 — DarkWorld IRC Network Introduction

Module Overview

This module teaches the fundamental concepts and commands required to use and understand the DarkWorld IRC Network.

Before a candidate can assist users or perform moderation duties, they must understand:

  • How IRC works.
  • The difference between an IRC network and an IRC server.
  • How users connect securely.
  • Nicknames, usernames, idents, hostnames, and account names.
  • Channels and private conversations.
  • IRC user masks.
  • Common IRC commands.
  • TLS and SASL.
  • Lag, disconnections, reconnections, and netsplits.
  • How to collect useful information without violating user privacy.

Commands may appear differently depending on the IRC client. The underlying IRC functions remain generally the same.

Learning Objectives

After completing this module, the candidate should be able to:

  1. Explain how an IRC network operates.
  2. Connect securely to DarkWorld IRC.
  3. Explain the difference between a nickname and a Services account.
  4. Identify the components of an IRC user mask.
  5. Use common IRC commands correctly.
  6. Obtain relevant information using WHOIS and related commands.
  7. Explain the purpose of TLS and SASL.
  8. Recognize lag, a normal disconnection, and a netsplit.
  9. Distinguish between channel messages, private messages, and notices.
  10. Collect troubleshooting information without exposing confidential data.

1. What Is IRC?

Internet Relay Chat, commonly called IRC, is a real-time communication system.

Users connect through an IRC client to an IRC server. Multiple linked IRC servers together form an IRC network.

Users can then:

  • Join public or private channels.
  • Send channel messages.
  • Send private messages.
  • Register nicknames.
  • Register and manage channels.
  • Participate in project communities.
  • Request support.
  • Use approved bots and services.

IRC is not a website. Although web-based IRC clients may exist, IRC itself is a separate communication protocol.

2. IRC Network, Server, Client, and Services

IRC Network

An IRC network is a group of connected IRC servers that share users, channels, and messages.

DarkWorld IRC is the network.

IRC Server

An IRC server accepts user connections and communicates with other servers on the network.

A user normally connects through the main network address instead of selecting an individual server.

The standard DarkWorld IRC connection address is:

irc.darkworld.network

IRC Client

An IRC client is the application used to connect to IRC.

Examples may include:

  • DWIRC
  • HexChat
  • mIRC
  • WeeChat
  • irssi
  • KiwiIRC
  • The Lounge
  • Revolution IRC
  • Other compatible IRC applications

Staff should avoid insisting that every user use the same client. Assistance should focus on the required settings and protocol behavior.

IRC Services

IRC Services provide persistent account and channel-management features.

Examples include:

  • NickServ
  • ChanServ
  • MemoServ
  • HostServ
  • BotServ
  • OperServ

Services are connected to the IRC network, but they are not ordinary users.

3. Connecting to DarkWorld IRC

The recommended public connection settings are:

Setting Recommended value
Network DarkWorld IRC
Server irc.darkworld.network
Port 6697
Encryption TLS/SSL enabled
Accept invalid certificates No
SASL Recommended for registered accounts

A typical URI may appear as:

ircs://irc.darkworld.network:6697

The `ircs://` prefix indicates an encrypted IRC connection.

Security notice: Staff should direct users to the current secure connection settings. Do not recommend an unencrypted port merely to bypass a TLS or certificate problem. Investigate or escalate the underlying problem.

Connection Example

In clients that support the `/SERVER` command:

/SERVER irc.darkworld.network 6697

The client must also be configured to use TLS. The exact syntax varies between clients.

Information to Request During Connection Troubleshooting

When a user cannot connect, ask for:

  • IRC client name and version.
  • Server address.
  • Port number.
  • Whether TLS is enabled.
  • The exact error message.
  • Approximate time of the attempt.
  • Whether the problem affects one device or multiple devices.
  • Whether another network connection was tested.

Do not ask users to publicly post:

  • Account passwords.
  • SASL passwords.
  • Private keys.
  • Authentication tokens.
  • Full configuration files containing secrets.
  • Unnecessarily exposed IP addresses.

4. TLS

Transport Layer Security, or TLS, encrypts the connection between the IRC client and the IRC server.

TLS helps protect:

  • Passwords.
  • SASL authentication.
  • Private messages while travelling between the client and server.
  • Channel messages while travelling between the client and server.
  • Account and connection information.

TLS does not make public channel messages private. Anyone present in a public channel may read and log its messages.

TLS also does not guarantee that another IRC user will keep a private conversation confidential.

Certificate Warnings

A certificate warning may indicate:

  • An incorrect server name.
  • An expired certificate.
  • A certificate-name mismatch.
  • An incomplete certificate chain.
  • A local system clock problem.
  • A network interception problem.
  • An actual server-side configuration problem.

Staff should not automatically tell users to disable certificate verification.

The correct procedure is:

  1. Record the exact warning.
  2. Confirm the server hostname.
  3. Confirm the device date and time.
  4. Check whether other users are affected.
  5. Escalate possible server certificate problems.
  6. Use a temporary alternative only when authorized.

5. Nicknames, Usernames, Idents, and Real Names

An IRC identity contains several separate elements.

Nickname

The nickname is the visible name used on IRC.

Example:

Falcon

A nickname can normally be changed:

/NICK NewNickname

A nickname is not necessarily registered and is not always proof of identity.

Username or Ident

The username, commonly called the ident, is another part of the IRC connection identity.

Example:

falcon

The ident is different from the nickname.

Hostname

The hostname identifies the connection’s host information. Networks may hide the original host using cloaks or virtual hosts.

Example:

user.example.host

IRC staff must not expose a user’s hidden address or confidential host information without an authorized operational reason.

Real Name or GECOS

The real name field is a user-configurable description sent during connection.

It may contain a real name, nickname, project name, or other text. It should not be treated as verified identity.

Services Account

A Services account is the registered account recognized by NickServ.

The account name may be different from the user’s current nickname.

For example:

Field Example
Current nickname Falcon-Away
Ident falcon
Displayed host User.DarkWorld.Network
NickServ account Falcon

Staff should use verified account information where account ownership matters. A current nickname alone is not proof of account ownership.

6. Understanding IRC User Masks

A common IRC user mask has this form:

nickname!ident@hostname

Example:

Falcon!falcon@User.DarkWorld.Network

The parts are:

Component Example Meaning
Nickname Falcon Current visible nickname
Separator ! Separates nickname and ident
Ident falcon Connection username
Separator @ Separates ident and hostname
Hostname User.DarkWorld.Network Displayed host or cloak

Wildcards

IRC masks commonly use:

  • `*` to match any number of characters.
  • `?` to match one character, where supported.

Examples:

Falcon!*@*
*!falcon@*
*!*@User.DarkWorld.Network
*!*@*.example.net

These masks are not equally precise.

Mask General effect Risk
`Falcon!*@*` Matches the nickname regardless of ident or host The user may change nickname
`*!falcon@*` Matches connections using the ident Other users may use the same ident
`*!*@User.DarkWorld.Network` Matches the displayed host May affect multiple users if the host is shared
`*!*@*.example.net` Matches a wider host range May affect many unrelated users

Broad masks can affect innocent users. Selecting and applying bans will be covered in the moderation module.

7. Registered Nicknames and Accounts

NickServ allows users to register and manage an account.

Common user commands may include:

/MSG NickServ HELP
/MSG NickServ REGISTER
/MSG NickServ IDENTIFY account password
/MSG NickServ INFO nickname
/MSG NickServ STATUS nickname
/MSG NickServ RECOVER nickname
/MSG NickServ RELEASE nickname
/MSG NickServ GROUP nickname

The exact command syntax must be confirmed through:

/MSG NickServ HELP command

Users should enter passwords only in the correct Services query or configured SASL fields.

They must never send a password:

  • To a channel.
  • To another user.
  • To a staff member.
  • To an unofficial bot.
  • In a public support request.

Staff should never ask a user to reveal their password.

8. SASL Authentication

Simple Authentication and Security Layer, or SASL, allows an IRC client to authenticate to the registered account during the connection process.

Benefits include:

  • Authentication before joining channels.
  • More reliable account recognition.
  • Access to registered-user features immediately after connection.
  • Reduced dependence on manually sending an IDENTIFY command.
  • Improved security when used over TLS.

Typical SASL settings are:

Setting Value
Authentication method SASL
Mechanism PLAIN, when supported and used over TLS
Account Registered NickServ account
Password NickServ account password

Despite its name, the SASL PLAIN mechanism is safe only when protected by a properly verified TLS connection. Staff should recommend TLS together with SASL.

9. Channels

IRC channels are shared conversation spaces.

Channel names normally begin with `#`.

Examples:

#DarkWorld
#Help
#Support

Joining a Channel

/JOIN #DarkWorld

To join multiple channels where supported:

/JOIN #DarkWorld,#Help

Leaving a Channel

/PART #DarkWorld

With a reason:

/PART #DarkWorld Leaving for now

Viewing Channel Users

/NAMES #DarkWorld

Viewing or Changing a Topic

View the topic:

/TOPIC #DarkWorld

Change the topic, when authorized:

/TOPIC #DarkWorld New topic text

Having technical ability to change a topic does not mean the change is authorized.

Inviting a User

/INVITE nickname #channel

This may require channel privileges depending on the channel configuration.

Kicking a User

/KICK #channel nickname reason

Example:

/KICK #Training ExampleUser Repeated flooding after warning

Kicks must include a clear and professional reason. Moderation actions will be covered in a later module.

10. Channel Messages, Private Messages, and Notices

Channel Message

A normal message sent while a channel is active is visible to users in that channel.

Depending on the client, the raw command may be:

/MSG #channel message

Private Message

A private message is sent directly to another nickname:

/MSG nickname message

Opening a private conversation may also use:

/QUERY nickname

Private messages may still be logged by the recipient, IRC client, bouncer, bot, or an authorized system. Staff should not promise absolute privacy.

Notice

A notice is generally intended for information that does not require an automatic reply:

/NOTICE nickname message

Notices should not be used to bypass a user’s communication preferences or harass them.

Action Message

An action is commonly sent using:

/ME performs an action

In a channel, users may see:

* Falcon performs an action

11. Essential IRC Commands

Command Purpose
`/JOIN #channel` Join a channel
`/PART #channel reason` Leave a channel
`/NICK newnick` Change nickname
`/WHOIS nickname` View information about a connected user
`/WHOWAS nickname` View limited information about a recently disconnected nickname
`/USERHOST nickname` Request basic user and host information
`/WHO #channel` View information about users in a channel
`/NAMES #channel` View the channel nickname list
`/MODE nickname` View user modes
`/MODE #channel` View channel modes
`/TOPIC #channel` View a channel topic
`/LIST` Request the visible channel list
`/MOTD` View the network Message of the Day
`/RULES` View network rules, where supported
`/VERSION` View server software information
`/ADMIN` View server administration information
`/LINKS` View linked IRC servers, where permitted
`/LUSERS` View network user and server statistics
`/TIME` View server time
`/PING value` Test responsiveness at the protocol level
`/QUIT reason` Disconnect from IRC

Commands that reveal additional information to IRC operators will be covered in the IRC Operator Fundamentals module.

12. Using WHOIS Correctly

The `WHOIS` command provides information about a connected user:

/WHOIS nickname

Depending on permissions and network configuration, it may show:

  • Nickname.
  • Ident.
  • Displayed hostname.
  • Real-name field.
  • Connected server.
  • Channels.
  • Registered account.
  • User modes or status.
  • Secure connection status.
  • Idle time.
  • Operator status.
  • Virtual host or cloak information.

A more complete query may be available using:

/WHOIS nickname nickname

Results vary by server and client.

WHOIS Limitations

WHOIS does not automatically prove:

  • The user’s legal identity.
  • Ownership of an external social account.
  • That the real-name field is accurate.
  • That two similar nicknames are the same person.
  • That every person on a shared connection is responsible for an incident.

Staff must distinguish between displayed information, registered-account information, and verified evidence.

13. User Modes and Channel Modes

The `/MODE` command is used for both users and channels.

View your own user modes:

/MODE YourNickname

View channel modes:

/MODE #channel

View a channel ban list:

/MODE #channel +b

View ban exceptions:

/MODE #channel +e

View invite exceptions:

/MODE #channel +I

Modes and their correct use will be covered fully in:

Module 4 — User and Channel Modes

14. Lag

Lag is a delay between sending an IRC command or message and receiving the resulting response.

Possible causes include:

  • A slow user connection.
  • High latency between the user and server.
  • IRC server load.
  • Network congestion.
  • A temporary routing issue.
  • Client or bouncer performance.
  • Flood protection delaying commands.

Signs of lag include:

  • Delayed messages.
  • Slow command responses.
  • Ping timeouts.
  • Nickname changes appearing late.
  • The client showing old channel information.

Staff should determine whether lag affects:

  • One user.
  • Users connected to one server.
  • One geographic region.
  • Multiple servers.
  • The entire network.

15. Ping Timeout

IRC servers send periodic checks to determine whether clients and linked servers remain responsive.

A user may disconnect with a reason similar to:

Ping timeout

This may happen because:

  • The user’s internet connection failed.
  • The device slept or changed networks.
  • A firewall interrupted the connection.
  • The client stopped responding.
  • Network latency became too high.
  • A route between the user and server failed.

A ping timeout does not, by itself, prove that the IRC server is malfunctioning.

16. Netsplits

A netsplit occurs when the connection between two linked IRC servers is lost.

During a netsplit:

  • Users on one server may appear to quit together.
  • Channels may temporarily appear to lose users.
  • Users may continue chatting on separate sides of the network.
  • Nickname or channel state may require synchronization.
  • Servers may reconnect automatically.
  • Users may return in a large group when the link is restored.

A netsplit is different from a normal user disconnection.

Staff Response to a Netsplit

Trainees should:

  1. Avoid panic.
  2. Observe which servers and users are affected.
  3. Record the approximate time.
  4. Avoid unnecessary channel-mode changes.
  5. Do not assume departing users were banned.
  6. Check official server notices where authorized.
  7. Notify operational staff if the split persists.
  8. Reassure users without making unsupported claims.
  9. Allow synchronization to complete after reconnection.

A trainee should not manually recreate access lists or issue broad corrective actions during an active netsplit unless directed by senior staff.

17. Server Notices

Servers may send informational or operational messages called server notices.

They may report:

  • Connections.
  • Disconnections.
  • Authentication failures.
  • Flood activity.
  • Server links.
  • Netsplits.
  • Operator actions.
  • Security events.
  • Configuration or Services issues.

Many notices are visible only to users with specific modes or privileges.

Staff must not copy confidential server notices into public channels unless specifically authorized.

18. Common Connection Errors

Error Possible meaning First response
Connection refused Nothing is accepting the connection on that address or port Confirm server, port, and current service status
Connection timed out The server could not be reached Check internet, firewall, DNS, and route
TLS certificate error Certificate validation failed Record exact error and verify hostname and system time
Nickname already in use Another connection is using the nickname Use another nickname or recover the registered nickname
Password incorrect Authentication failed Verify account name and use the approved recovery procedure
SASL authentication failed Invalid credentials or SASL configuration Check account, password, mechanism, TLS, and client settings
You are banned A channel or network restriction applies Determine whether it is a channel ban or network restriction
Registration timeout Client did not complete connection registration Check client configuration, network, and authentication
Ping timeout Connection stopped responding Check connection stability and whether others are affected

Staff should obtain the exact error instead of relying only on descriptions such as “IRC is not working.”

19. Safe Troubleshooting Procedure

Use the following process:

  1. Ask the user what they were trying to do.
  2. Ask for the exact error message.
  3. Confirm the server and port.
  4. Confirm whether TLS is enabled.
  5. Confirm the IRC client and version.
  6. Determine whether the problem affects other users.
  7. Check official service information.
  8. Provide one safe troubleshooting step at a time.
  9. Confirm the result.
  10. Escalate if the problem appears network-wide or security-related.
  11. Record the incident if required.

Avoid requesting more personal information than necessary.

20. Practical Exercises

These exercises should be performed in an approved training channel.

Exercise 1: Secure Connection

Configure an IRC client with:

Server: irc.darkworld.network
Port: 6697
TLS: Enabled
Certificate verification: Enabled

Record:

  • Client name and version.
  • Connection time.
  • Whether TLS was successfully established.
  • Any error received.

Do not submit account passwords.

Exercise 2: Identity Information

Using your own training identity:

  1. Record your nickname.
  2. Record your ident.
  3. Record your displayed hostname.
  4. Record your registered account name.
  5. Explain how each value differs.

Exercise 3: User Mask

Given:

Trainee!student@Training.DarkWorld.Network

Identify:

  • Nickname.
  • Ident.
  • Hostname.
  • Full user mask.

Then explain what these masks would generally match:

Trainee!*@*
*!student@*
*!*@Training.DarkWorld.Network

Exercise 4: Essential Commands

Safely demonstrate:

/JOIN #ApprovedTrainingChannel
/NAMES #ApprovedTrainingChannel
/TOPIC #ApprovedTrainingChannel
/WHOIS YourNickname
/MODE YourNickname
/MODE #ApprovedTrainingChannel
/PART #ApprovedTrainingChannel Exercise completed

Do not change channel modes or topics unless authorized.

Exercise 5: Services Help

Request official help using:

/MSG NickServ HELP
/MSG ChanServ HELP

Locate the correct help entry for:

  • Account identification.
  • Account information.
  • Channel information.
  • Channel access.

Do not register test accounts or channels without permission.

Exercise 6: Troubleshooting

Prepare a response to this report:

“I cannot connect to DarkWorld. It just gives an error.”

Your response should ask for the information required to diagnose the problem without requesting passwords or unnecessary private data.

21. Practical Scenarios

Scenario 1: Password Posted Publicly

A user posts their NickServ password in `#Help`.

Correct approach:

Tell the user to change the password immediately through the official NickServ procedure. Avoid repeating or quoting the password. If possible and authorized, remove exposure from relevant logs or systems, and escalate if the account may have been compromised.

Scenario 2: Certificate Warning

A user receives a certificate-name mismatch and asks whether they should disable verification.

Correct approach:

Do not immediately recommend disabling verification. Confirm the server hostname, exact error, device time, and whether others are affected. Escalate a possible certificate problem.

Scenario 3: Nickname Dispute

A user is using a nickname that resembles another person’s nickname.

Correct approach:

Check registered-account information and the applicable policy. Similarity alone does not always establish impersonation. Collect facts and escalate where necessary.

Scenario 4: Mass Quit

Many users connected through the same server appear to quit simultaneously.

Correct approach:

Consider a server disconnect or netsplit. Check which server was affected and review authorized notices. Do not assume every user intentionally left or was banned.

Scenario 5: Shared Host

Several users have the same displayed hostname.

Correct approach:

Do not automatically assume they are the same person. They may use a shared provider, cloak, gateway, bouncer, VPN, or relay. Use additional authorized information and evidence.

22. Knowledge Check

Answer the following questions in your own words:

  1. What is the difference between an IRC network and an IRC server?
  2. What is the recommended DarkWorld IRC server address and secure port?
  3. What does TLS protect?
  4. Why should certificate verification not be disabled casually?
  5. What is the difference between a nickname and a NickServ account?
  6. Identify the three main components of `nickname!ident@hostname`.
  7. What does the `*` wildcard normally represent in an IRC mask?
  8. Why can a broad hostname ban affect innocent users?
  9. What is SASL?
  10. Why should SASL be used with TLS?
  11. What information can WHOIS provide?
  12. What information does WHOIS not prove?
  13. What is the difference between a private message and a notice?
  14. What is a ping timeout?
  15. What is a netsplit?
  16. What should a trainee do during a persistent netsplit?
  17. What information should staff request when troubleshooting a connection?
  18. What confidential information must staff never request in a public channel?
  19. Why should staff obtain the exact error message?
  20. What should happen when an apparent connection problem affects many users?

23. Written Assignment

Write approximately 400–600 words explaining how you would help a new user who:

  • Has never used IRC.
  • Wants to connect securely to DarkWorld IRC.
  • Wants to register an account.
  • Wants automatic authentication.
  • Does not understand the difference between a nickname and an account.
  • Receives a “nickname already in use” message.

Your answer must:

  • Recommend the correct secure connection settings.
  • Explain TLS.
  • Explain SASL.
  • Avoid requesting or exposing the user’s password.
  • Use clear and friendly language.
  • Include appropriate escalation if account recovery fails.

24. Module Completion Requirements

To complete this module, the candidate must:

  • Read the complete lesson.
  • Connect securely to DarkWorld IRC.
  • Complete all authorized practical exercises.
  • Correctly answer at least 15 of the 20 knowledge-check questions.
  • Complete the written assignment.
  • Demonstrate safe handling of passwords and connection information.
  • Receive approval from the assigned trainer.

25. Trainer Evaluation

Evaluation area Maximum points
Understanding of IRC structure 15
Secure connection and TLS knowledge 20
Identity and user-mask knowledge 20
Command usage 15
Troubleshooting 15
Privacy and security 15
Total 100

Recommended passing score: 75 points.

The trainer should record:

  • Candidate’s score.
  • Practical exercises completed.
  • Security or privacy mistakes.
  • Topics requiring review.
  • Completion date.
  • Trainer’s name.
  • Result: Pass, Revision Required, or Fail.

26. Quick Reference

Task Command or setting
Secure server `irc.darkworld.network`
Secure port `6697`
Encryption TLS enabled and certificate verified
Join a channel `/JOIN #channel`
Leave a channel `/PART #channel reason`
Change nickname `/NICK newnickname`
Check a user `/WHOIS nickname`
View channel users `/NAMES #channel`
View channel modes `/MODE #channel`
View own user modes `/MODE YourNickname`
NickServ help `/MSG NickServ HELP`
ChanServ help `/MSG ChanServ HELP`
Disconnect `/QUIT reason`

27. Next Module

After passing this module, continue to:

Module 3 — DarkWorld IRC Rules and Policies


Previous: Module 1 — DarkWorld IRC Network Introduction Program: DarkWorld IRC Staff Training Program Next: Module 3 — DarkWorld IRC Rules and Policies