Fact-checked by Grok 2 weeks ago

IRC

Internet Relay Chat (IRC) is an open-source protocol designed for real-time, text-based communication, allowing multiple users to engage in group discussions within dedicated forums known as channels, facilitated through a distributed client-server architecture over TCP/IP networks. Developed in August 1988 by , a programmer at the , IRC originated as an enhancement to the chat functionality of a local (BBS), inspired by earlier tools like Bitnet Relay and aiming to support multi-user interactions across connected computers. The protocol's foundational specification appeared in RFC 1459 in May 1993, describing it as an experimental standard for distributed text conferencing, with subsequent refinements in 2000 through 2810 (architecture), 2811 (channel management), 2812 (client protocol), and 2813 (server protocol), which formalized the server-to-server linking and message relaying mechanisms essential to IRC's operation. In IRC, clients connect to servers using simple text commands, where users adopt nicknames and join prefixed with '#' for public discussions or private messaging; servers form spanning trees to propagate messages efficiently across the network, supporting features like operator privileges for and modes for channel control. Although challenged by contemporary platforms offering multimedia and easier interfaces, IRC persists into 2025, powering communities in (FOSS) development—such as on networks like —and channels, valued for its lightweight design, lack of central authority, and extensions via IRCv3 for modern capabilities like message tags and account authentication.

History

Origins and invention

Internet Relay Chat (IRC) was invented by in August 1988 while he was a student at the in . Oikarinen developed IRC as an enhancement to the OuluBox (), initially to address limitations in the existing MultiUser Talk () program and to enable real-time discussions in a style similar to the threaded groups of newsgroups. Drawing inspiration from the BITNET Relay Chat system, which facilitated multi-user conversations across academic networks, Oikarinen aimed to create a more efficient and scalable chat solution for local university users. The initial implementation consisted of a single IRC server running on the machine tolsun.oulu.fi, designed primarily for internal use within the of Information Processing Science at the . This early version quickly expanded to link servers across universities, including those in and , forming the backbone of the first IRC network via the FUNET academic backbone. At its core, IRC adopted a client-server that allowed multiple users to connect remotely, enabling text-based group communication through named channels for organized discussions. The emphasized messaging, delivering text instantaneously without any persistent storage of conversations, which prioritized immediacy and simplicity over archival features. Early adoption accelerated in 1989, as IRC spread beyond Finland to other through connections on the NORDUnet research network. By 1990, the network had achieved global reach, with transatlantic links established via the Internet to servers , such as those at and the , and further propagation facilitated by (Unix-to-Unix Copy Protocol) gateways. This expansion marked IRC's transition from a localized tool to an international communication platform, attracting users from academic and hobbyist communities worldwide.

Major network forks

EFnet emerged as the primary IRC network following its formation in August from a split in the original network, driven by disputes over open server policies that allowed unlimited connections and lacked passwords, leading to instability. As user numbers surged into the early , reaching thousands daily by 1993, EFnet experienced frequent netsplits—temporary disconnections between servers—exacerbating chaos in channels and enabling operator takeovers during reconnections. This rapid growth, while solidifying EFnet's dominance with servers across and , highlighted scalability issues in the original ircd software, prompting the development of forks to address these limitations. The forked from in late 1992, initially as a small test network of U.S. servers seeking to mitigate bandwidth waste and channel disruptions from frequent splits. By January 1993, it had merged with and Canadian servers, expanding internationally and introducing timestamp-based synchronization to resolve conflicts over channel ownership and user states during reconnections, unlike EFnet's first-come, first-served approach. Disagreements over centralized services like nickname registration further fueled the split, leading Undernet to implement persistent nicknames via NickServ and channel protections through ChanServ, features that empowered users with greater control and reduced takeover vulnerabilities. DALnet branched from Undernet in the summer of 1994, motivated by frustrations among operators in channels like #StarTrek over persistent lags, splits, and inadequate user protections. Founders, including , prioritized enhanced services for a larger, more stable , adopting the DreamForge ircd fork and introducing user-friendly tools such as extended nickname lengths, WallOps for operator messaging, and robust K-lines to ban abusive users network-wide. These innovations, including improved ChanServ for channel registration on a first-come basis, attracted users seeking a less anarchic environment, quickly growing DALnet into a major network with a focus on and . IRCnet split from in July 1996 during the "Great Split," stemming from transatlantic operator disputes over enhancements, particularly the adoption of timestamping versus delay mechanisms for and claims. European administrators, favoring stricter policies and nick/channel delays to prevent rapid takeovers, established IRCnet with a core of continental servers, emphasizing reliability and governance over 's more permissive U.S.-centric model. By autumn 2000, IRCnet had amassed around 70,000 users, becoming a hub for European IRC activity with policies that prioritized operator accountability and reduced . Later forks catered to regional or thematic needs, such as AustNet in March 1998, which diverged from due to unreliable trans-Pacific links, using adapted ChanServ code to serve Australian and Oceanic users with localized stability. Similarly, GameSurge launched in 1999 as a gaming-focused network, providing dedicated channels and services for clans and multiplayer communities, drawing from Undernet's protocol to support real-time coordination in online games.

Key developments and timeline

The first IRC server was launched in August 1988 by at the in , replacing an earlier BBS-based chat system called and initially running on the server tolsun.oulu.fi. This marked the birth of IRC as a multi-user, designed for group discussions across connected servers. By 1990, IRC expanded internationally with connections to the broader , including links to U.S. servers such as ai.ai.mit.edu, where the first non-Scandinavian user, Mike Jacobs, connected, enabling global access beyond its origins. This growth coincided with the formation of early networks like following initial splits, setting the stage for worldwide adoption. In May 1993, RFC 1459 was published by Oikarinen and Darren Reed, providing the first formal standardization of the IRC protocol, defining its client-server architecture, message formats, and core features like channels for group communication. Throughout the , IRC experienced rapid user growth, peaking during the dot-com boom with networks like reaching tens of thousands of concurrent users by the late decade, driven by increasing accessibility. Bots emerged as a key innovation around this time, with services like those on (introduced in 1992) and (1994) automating moderation tasks such as protection, user registration, and filtering to manage the expanding scale. Culturally, IRC played a pivotal role in early online activism, serving as a coordination hub for hacker groups like the , which leveraged it for communication and tool distribution in the mid-1990s. It also facilitated real-time global information sharing during events like the , where concurrent users surged above 300 for live updates. In April 2000, a series of updates to the were released as RFCs 2810 through 2813 by Christoph Kalt, refining IRC's architecture, channel management, client , and server-to-server communication to address ambiguities in the original specification and support larger networks. During the , IRC saw a decline in mainstream popularity, with overall user numbers dropping significantly from their peaks as alternatives like apps and social platforms rose. Nonetheless, it persisted strongly in open-source and technical communities, where networks like maintained peaks of around 65,000 users by 2011 for developer collaboration and project support. In June 2021, underwent a controversial takeover by its founder, prompting a to , which quickly became the largest IRC network for open-source projects, attracting over 90,000 peak users from Freenode's community.

Technical Standards

Protocol specifications and RFCs

The Internet Relay Chat (IRC) protocol was first formally specified in RFC 1459, published in May 1993 by and Darren Reed as an experimental standard. This document established the foundational syntax and mechanics of IRC, including the text-based message structure limited to 512 characters per message terminated by and line feed (CR-LF), client-server connections over , and core commands such as JOIN for entering channels, PART for leaving them, and PRIVMSG for sending private or channel messages. It emphasized a client-server model where clients register with servers using commands like and to establish identity and connection. In April 2000, a series of informational RFCs updated and refined the IRC specifications to address evolutions in implementation while maintaining backward compatibility with RFC 1459. RFC 2810, authored by Christophe Kalt, outlines the overall architecture. RFC 2811 details channel management protocols, specifying how servers handle channel creation, joining, and properties. RFC 2812 updates the client protocol, formalizing interactions between clients and servers with enhanced reply codes and clarifications. Finally, RFC 2813 defines the server-to-server protocol, governing how servers exchange messages and state information to form interconnected networks. These documents collectively superseded the original RFC 1459 in non-experimental contexts, providing a more precise framework for interoperability. A core architectural element of IRC, as defined in these RFCs, is its decentralized structure, where servers link directly to one another via server-to-server connections to form a topology, enabling message propagation without a central authority or registry. This design supports scalable, peer-like networks where any server can connect to others, relaying client messages globally while maintaining local state synchronization. The absence of a central ensures but relies on operators to manage linking and trust between servers. IRC messages follow a standardized format across the RFCs: an optional prefix (e.g., or ), a command (case-insensitive), up to 15 space-separated parameters, and an optional trailing parameter preceded by a colon for longer text. Commands and nicknames are case-insensitive to promote consistency, while channel names are case-insensitive only in the ASCII range. This structure, parsed using augmented Backus-Naur Form (BNF), ensures reliable transmission over streams. The base IRC protocol, as specified in these RFCs, includes no built-in , beyond basic passwords, or secure transport mechanisms, leaving communications vulnerable to interception and requiring external extensions for . This limitation stems from the protocol's origins in the early , prioritizing simplicity over modern standards.

Commands, replies, and messaging

In Internet Relay Chat (IRC), users interact with the network primarily through text-based commands sent to servers, which respond with numeric codes indicating success, failure, or other status updates. These commands enable essential functions such as registration, participation, and transmission, forming the core of client-server communication. The defines a format consisting of an optional , a command or reply code, and up to 15 parameters, ensuring structured and efficient exchanges. Common user commands include those for initial connection and basic navigation. The command sets or changes a user's , with the syntax NICK <nickname>, and is typically sent first upon connecting to assign an identifier visible to others on the network. The command registers additional user details, using the format USER <username> <hostname> <servername> <realname>, which must follow NICK to complete registration and is not resent after initial connection. To enter a , the JOIN command is used in the form JOIN <channel>{,<channel>}, allowing a client to start listening and participate in discussions, with the server the join to all channel members. Conversely, the PART command removes the user from specified channels via PART <channel>{,<channel>}, notifying participants of the departure without ending the overall session. For sending messages, the PRIVMSG command delivers private or channel messages in the syntax PRIVMSG <msgtarget> <text>, where can be a nickname for direct messaging or a channel name for broadcasting to all members. Finally, the QUIT command terminates the client session with QUIT [<quitmessage>], prompting the server to close the connection and propagate a quit notice to affected channels. Servers respond to commands with numeric replies, three-digit codes prefixed by "RPL_" for positive acknowledgments or "ERR_" for errors, providing feedback on command outcomes. For instance, upon successful registration after and , the server sends 001 (RPL_WELCOME) in the format 001 <nick> :Welcome to the Internet Relay Network <nick>!<user>@<host>, confirming the user's entry into the network. Error replies include 403 (ERR_NOSUCHCHANNEL) as <channel> :No such channel, returned when attempting to join or message a nonexistent channel. If a desired nickname is unavailable, 433 (ERR_NICKNAMEINUSE) is issued with <nick> :Nickname is already in use, prompting the client to choose another. Commands lacking required parameters trigger 461 (ERR_NEEDMOREPARAMS) in the form <command> :Not enough parameters, ensuring compliance. These replies, along with others like 421 for unknown commands, facilitate handling by guiding clients on corrective actions without disrupting the session. Messaging in IRC operates through targeted delivery mechanisms, with PRIVMSG enabling both one-to-one private messages and broadcasts to s or masks (the latter restricted to operators). When sent to a , the message is relayed to all connected members via server propagation, optimizing for low-latency delivery across the . Direct messages to a follow the same but reach only the specified recipient, with the server queuing undeliverable messages until reconnection if needed. To prevent abuse, IRC implements flood protection, limiting clients to one message every two seconds; excess messages incur a penalty increasing by two seconds per violation, throttling rapid-fire inputs to maintain stability. This combination of commands, replies, and safeguards ensures reliable, interactive communication while handling errors gracefully.

Channels, modes, and permissions

In Internet Relay Chat (IRC), channels serve as named discussion rooms where multiple users can participate in group conversations. These channels are identified by names prefixed with a hash symbol (#) for network-wide distributed channels or an (&) for local server-only channels, with names limited to up to 200 characters excluding spaces, control-G characters, or commas. Channels enable broadcasting messages to all members, facilitating organized discussions on specific topics. Channels are categorized into three primary types based on visibility and access: , , and secret. Public channels are openly listed and discoverable via queries, allowing any to join without restrictions beyond general permissions. channels, set with the +p , appear in lists but conceal their topic from non-members, requiring users to know the name to join. Secret channels, enabled by the +s , are entirely hidden from listings and queries unless a has already joined, enhancing for sensitive discussions. A is implicitly created when the first user issues a JOIN command to a non-existent channel name, at which point the joining user automatically becomes a channel operator with full control. The channel persists as long as at least one user remains; however, persistence rules can vary across IRC networks, with some implementing configurations to maintain empty channels temporarily or indefinitely. Users join channels using the JOIN command, subject to any active modes or restrictions. Channel modes, configured via the MODE command, control access, behavior, and visibility, with basic modes including +i for invite-only access, +p for private status, +s for secret status, +m for moderated discussions, and +n to prevent messages from external (non-channel) sources. The +i mode restricts joining to users explicitly invited via the INVITE command, returning an error like "Cannot join " otherwise. Moderated channels (+m) limit speaking rights to voiced users or operators, while +n ensures messages originate only from channel members, blocking external relays. These modes can be toggled by channel operators, with a limit of three changes per command to prevent . User permissions within channels are managed through specific modes that grant varying levels of control and participation. The +v mode provides voice status, allowing a (denoted by a '+' ) to send messages in moderated (+m) s, where unvoiced users are silenced. Full operators (+o, prefixed with '@') hold comprehensive authority, including kicking users, changing modes, setting topics, and inviting others, and are automatically assigned to the creator of a new . These permissions ensure structured moderation while accommodating different collaboration needs.

Operators, hostmasks, and security features

In Internet Relay Chat (IRC), , commonly known as IRCOps, are privileged users designated to perform administrative tasks across the network. These individuals gain operator status by issuing the OPER command with a valid operator name and password, which authenticates them against server configuration files that specify allowed hosts and credentials. Once authenticated, IRCOps receive elevated privileges, including the ability to execute commands such as KILL, which forcibly terminates a client's to the with a specified reason, and global MODE changes that affect user or channel settings network-wide. The KILL command, for instance, sends a QUIT message to the affected user and notifies others of the disconnection, but it is restricted to operators to prevent abuse, with servers typically logging such actions for accountability. Global MODE operations allow IRCOps to set or unset modes like +o (operator status) on users or enforce network policies, though exact capabilities depend on the software implementation. Hostmasks serve as a core mechanism for user identification and in IRC, formatted as <nickname>!<username>@<hostname>, where the is the user's chosen alias, the username (or ident) is provided during , and the represents the client's origin, often an or . This structure enables precise targeting in administrative actions, such as s, where wildcards like * (zero or more characters) or ? (single character) allow partial matching—for example, *!*@*.example.com to all users from a specific . Servers propagate hostmasks in messages to maintain consistency across the network, and they form the basis for many enforcements, including lists. IRC incorporates several server-enforced security features to protect channels and the network, primarily through channel modes and authentication protocols. The +k mode requires a channel key (password) for entry, rejecting JOIN attempts without the correct parameter, which helps restrict access to private discussions. Similarly, the +l mode imposes a user limit on the channel, denying new joins once the threshold is reached to prevent overcrowding or resource exhaustion. Server-side authentication for operators relies on the OPER command's password verification, while broader client authentication can use SASL (Simple Authentication and Security Layer) extensions, negotiated via capabilities, to verify accounts without exposing credentials in plain text. These features are managed via the MODE command, with parameters tied to hostmasks for granularity. Ban-related modes enhance security by controlling participation based on hostmasks. The +b mode adds a list entry, preventing matching users from joining or speaking in the channel, with servers checking masks against incoming connections. To counter over-restrictive bans, exception lists (+e) exempt specific hostmasks from +b effects, enabling trusted users to bypass restrictions—for example, granting access to registered operators despite a broad ban. These modes are queried via RPL_BANLIST numerics, and their management is typically limited to channel operators or IRCOps for global enforcement.

URI schemes and protocol extensions

The IRC URI scheme provides a standardized method for identifying and accessing IRC resources, such as servers, channels, and users, in a format compatible with broader web and application ecosystems. The scheme is provisionally registered with the (IANA) and follows the syntax irc://<host>[:<port>]/[<channel>[?[<key>]]], where <host> specifies the IRC server hostname or network alias, <port> is optional (defaulting to 6667), <channel> indicates the target channel (prefixed with # for standard channels), and <key> is an optional channel password. A variant, ircs://, supports secure connections using TLS, with a default port of 6697. This scheme originated from early Internet-Drafts aiming to enable uniform resource locators for IRC sessions. In practice, IRC URIs function as hyperlinks that initiate connections to specified servers and optionally join channels or initiate private messages. For instance, a link like irc://irc.example.net/#chat directs a client to connect to the server at irc.example.net and join the #chat channel upon activation. Supporting applications, including web browsers and desktop IRC clients, handle these URIs by launching or prompting the default IRC handler, facilitating seamless transitions from web content to live chat sessions. Optional parameters, such as ?nick=example, can pre-set a nickname for the connecting user. Early protocol extensions enhanced IRC's capabilities beyond the core specifications, enabling richer client interactions. The (CTCP), introduced in the early , allows direct querying between clients for features like measurement via or actions via (e.g., displaying "user waves"), encapsulated within PRIVMSG notices delimited by ASCII 001 characters to distinguish them from standard text. Similarly, SASL (Simple Authentication and Security Layer) support, implemented in servers like around 2009, permits clients to authenticate credentials during connection establishment using mechanisms such as , improving security without relying on post-registration services. These elements promote by bridging IRC with external systems. URI schemes enable embedding in pages for direct access from browsers, while extensions like CTCP and SASL support integration with services that require authenticated or timed interactions, such as linking sessions in invitations or hybrid -IRC interfaces.

Software and Tools

Client applications

Client applications for IRC are software programs designed for end-users to connect to IRC networks, join channels, and participate in text-based conversations. These clients vary in interface and support, ranging from graphical user interfaces (GUIs) for visual ease to text-based terminals for lightweight operation, and or options for accessibility without dedicated installations. They implement the IRC to handle commands, messaging, and management, often including enhancements like multi-server support and customizable notifications. Graphical clients provide intuitive interfaces with visual elements such as windows, menus, and toolbars, making them suitable for users preferring a desktop-like experience. , first released in 1995 for Windows, is a IRC client known for its robust feature set, including file transfers via and extensive customization options. HexChat, a free cross-platform fork of the earlier XChat client, supports Windows, , and other systems, offering tabbed or tree-based channel views for organized navigation. serves as a multi-protocol messenger with built-in IRC support, allowing users to manage IRC alongside other chat networks like XMPP in a single application. Text-based clients operate in terminal environments, prioritizing efficiency and scriptability for advanced users on resource-constrained systems. is a modular console client with native IRC support, highly scriptable through extensions for automation and customization of behaviors like logging and notifications. WeeChat, another modular text-mode client, emphasizes extensibility with plugins for features such as multi-server connections, support, and SASL authentication, while maintaining a lightweight footprint across Linux, Windows, and macOS. Web and mobile clients enable IRC access via browsers or portable devices, often without requiring software downloads. KiwiIRC is a browser-based client designed for ease of use, supporting direct connections to IRC networks with a modern for joining channels and managing multiple sessions. The Lounge is a self-hosted web IRC client, forked from , providing a responsive that maintains persistent connections to networks for users hosting it on their own servers. For mobile use, multi-protocol apps like those integrating IRC, such as IRCCloud's mobile client, allow on-the-go access with push notifications and synchronization across devices. Common key features across IRC clients include tabbed interfaces for switching between channels and servers without cluttering the screen, scripting support for automating tasks—such as mIRC's proprietary mSL for creating custom commands and aliases—and theme customization to adjust colors, fonts, and layouts for personal preferences. Some clients also support connection persistence through integration with bouncers, ensuring messages are relayed even when the user is offline.

Server software

The original IRC server software, known as ircd, was developed by in late August 1988 at the in as a replacement for the (MultiUser talk) program on the local system OuluBox. This initial implementation, written in C, introduced the client-server model for text-based conferencing and was first deployed on the server tolsun.oulu.fi, the hardware of which is preserved on display at the computer centre. Oikarinen's ircd formed the foundation for early IRC networks, enabling server-to-server linking to propagate messages across connected hosts. As IRC networks grew, the original ircd underwent numerous forks to address scalability, feature needs, and network-specific policies, particularly on , the oldest major network descended from the initial Finnish implementation. EFnet's evolution involved custom modifications to ircd, leading to specialized forks like those incorporating timestamp (TS) protocols to resolve channel conflicts during netsplits, a common issue in early decentralized networks. These forks, such as the hybrid-7 series used historically on , emphasized robustness for large-scale operations while maintaining compatibility with the core IRC protocol defined in RFC 1459. Among contemporary implementations, InspIRCd stands out as a modular, high-performance IRC daemon written in C++ from scratch, designed for stability across , BSD, Windows, and macOS platforms since its initial release in 2003. It supports IRCv3 extensions for modern features like message tags and account registration, with a plugin architecture allowing dynamic loading of modules for custom functionality without recompiling the core . UnrealIRCd, originating in 1999 as a of the DreamForge ircd, is a feature-rich, open-source widely deployed on thousands of networks, offering built-in SSL/TLS , cloaking for user , advanced anti-flood mechanisms, and GeoIP for geographic user tracking. Its configuration system includes support for remote includes and JSON-based logging to facilitate monitoring and auditing of network activity. For smaller setups, ngIRCd provides a lightweight, portable alternative developed in C since 2001 under the GNU General Public License, optimized for private networks with minimal resource usage and straightforward configuration for basic linking and channel management. Server linking protocols, such as those extending the original ircd's server-to-server communication via virtual links, enable interconnected topologies where messages are relayed efficiently across nodes, often using timestamp synchronization to maintain during partitions. Module systems in implementations like InspIRCd and UnrealIRCd allow extensibility for features such as custom or anti-spam filters, loaded at to adapt the without altering the base code. Logging capabilities, including and activity records, are integral for operational oversight, with options like UnrealIRCd's output supporting structured analysis of events. All major IRC software is distributed under open-source licenses, primarily the GPL, permitting free modification and deployment; configurations typically include directives for integrating services like NickServ through module hooks or uplink definitions to external services daemons.

Bots and automated systems

Bots and automated systems in IRC refer to non-human clients that perform predefined tasks, enhancing functionality, moderation, and without direct human intervention. These systems connect as standard clients but execute scripts or protocols to automate responses, manage resources, and interact with users. They are essential for maintaining order on large and providing utilities that would otherwise require manual effort. Service bots, such as NickServ and ChanServ, handle core operations like nickname registration and management. NickServ allows users to register and protect nicknames, preventing unauthorized use and enabling features like password . ChanServ supports registration, access lists, and assignments, ensuring persistent control even when founders are offline. These services operate as pseudo-clients on many IRC , using dedicated servers to enforce policies across the system. Additionally, BotServ on like EsperNet and GeekShed provides users with assignable bots for channels, offering basic moderation and interaction without requiring personal hosting. Channel bots focus on real-time management within specific rooms, such as , which is the world's oldest actively maintained designed for robust channel protection. Eggdrop automates tasks like kicking disruptive users, enforcing bans on spammers, and maintaining operator status through customizable modules. Utility bots extend functionality beyond moderation, providing services like weather updates, random quotes, or trivia games to engage users. For instance, bots can log channel transcripts for archival purposes or respond to queries with informational snippets, reducing the load on human moderators. Scripting enables customization of bot behaviors, with popular languages including Tcl for Eggdrop's core extensions, for Supybot (now evolved into Limnoria), and for general-purpose automation. Tcl scripts in Eggdrop allow modules for advanced features like party-line communication between linked bots. Supybot's Python-based system supports over 400 commands via more than 60 built-in plugins, facilitating easy development of utility and moderation tools. These scripting approaches permit operators to tailor bots while adhering to features, such as hostmask restrictions for bot privileges.

Bouncers and connection managers

IRC bouncers, also known as BNCs or managers, are servers that maintain persistent connections to IRC on behalf of users, allowing clients to disconnect and reconnect without losing their session state or chat history. These tools act as intermediaries between the user's IRC client and the server, buffering incoming messages and relaying them upon reconnection to ensure continuity. The primary purpose is to mitigate issues from unstable connections, such as network interruptions, by keeping the user "always online" from the IRC network's perspective. Early examples include BNC, an original Unix-based developed in the early to provide persistent IRC access on shared systems. A prominent modern open-source implementation is ZNC, first released in 2004 and actively developed since, which supports modular extensions for . ZNC runs as a daemon, connecting to multiple IRC networks and enabling users to attach multiple clients simultaneously. Hosted services like IRCNow offer free bouncer access, utilizing ZNC under the hood to provide users with dedicated connections across unlimited networks. Key features of bouncers include message buffering, where missed conversations are stored with timestamps for playback, allowing users to catch up on channel activity and private messages. They support multiple client connections per user, facilitating use across devices without session conflicts. SSL/TLS encryption passthrough is commonly implemented, securing the link between the bouncer and IRC server while preserving end-to-end privacy where supported by the network. Configuration options often include virtual hosts (vhosts) to mask the user's real IP address, enhancing anonymity. Bouncers offer significant advantages for reliability, such as automatically handling network drops by replaying buffered content, which is particularly useful for mobile users switching between and cellular data. This persistence reduces join/quit in channels and enables seamless integration with various IRC clients, like or HexChat, for a consistent experience across platforms. By proxying connections, they also improve accessibility for users behind restrictive firewalls or in transient environments.

Network Operations

Major IRC networks

EFnet, established in 1990 as the original IRC network, remains one of the oldest and most decentralized platforms, characterized by its anarchic structure without centralized services like NickServ or ChanServ, emphasizing user autonomy and minimal operator intervention. It operates with 14 servers and hosts approximately 9,000 active users (as of November 2025), fostering a raw, unmoderated chatting environment popular among long-time enthusiasts. Undernet, founded in 1994 as a response to EFnet's instability, is the third-largest IRC network and features unique channel services accessed via the X@ bot, which provides tools for channel registration, protection, and management without traditional pseudo-servers. With about 40 servers worldwide, it maintains roughly 15,000 concurrent users (as of 2025), supporting a diverse array of international communities through features like join limiting to combat floods. DALnet, launched in 1994, prioritizes user-centric services including robust NickServ, ChanServ, and MemoServ for nickname and channel protection, alongside community-driven support through IRCops and help channels to resolve disputes and assist newcomers. Comprising 39 servers, it sustains a stable population of around 6,800 users across 3,400 channels (as of 2025), focusing on a welcoming atmosphere for social and hobbyist interactions. IRCnet, originating from a 1996 split from , is predominantly European-based with servers mainly in , , and , enforcing strict connection rules for providers to ensure network stability and limit abuse. It operates without extensive network services, relying on operator discretion, and sees more than 20,000 daily users (as of 2025), appealing to those seeking a rule-oriented, low-service environment. Libera.Chat, formed in May 2021 as a community-led from amid governance controversies, serves as a dedicated platform for projects, hosting technical discussions for groups like the and various distributions. With a focus on peer-directed collaboration, it supports around 32,000 average concurrent users and 22,700 channels (as of 2025), emphasizing open governance and TLS-secured connections.

Search engines and discovery

Discovery of IRC channels, users, and content relies on a combination of built-in commands, services, and external tools that index and search across distributed s. These mechanisms enable users to locate active discussions by querying attributes such as topics, user counts, languages, or geographic regions, often aggregating data from multiple IRC s in . While the core IRC provides basic listing capabilities via the /list command, specialized search engines and services enhance by crawling channels and compiling searchable databases. Traditional tools like Netsplit.de provide comprehensive real-time statistics and channel searches across approximately 500 IRC networks, allowing queries by channel name, topic keywords, user population, and language to identify relevant discussions. For instance, users can filter results to find channels with specific user thresholds or thematic focuses, drawing from periodic crawls of network data. Similarly, SearchIRC.com functions as a dedicated search engine for channel listings and network overviews, enabling users to browse active channels and monitor connection statistics to gauge popularity and activity levels. Network-specific services further facilitate discovery within individual IRC ecosystems. On Undernet, the Channel Service (CS) offers tools for registered channel founders to manage and promote their spaces, including searchable databases that help users locate topic-based or language-specific channels through integrated queries. DALnet provides search features via its services and documentation, where the /list command can be refined to query by topic or user count, supplemented by public listings of registered channels to aid in finding moderated communities. Core functions of these discovery tools include advanced querying capabilities, such as filtering by topic relevance, minimum user counts for active channels, or primary languages to match user preferences. IRC crawler bots automate this process by connecting to networks as clients, systematically joining and indexing channels to build databases for external searches, often running on dedicated servers to maintain up-to-date listings without disrupting normal operations. Modern web-based tools build on these foundations with user-friendly interfaces. KiwiIRC's directory features a global search engine that scans over 166,000 channels across numerous , supporting queries by keyword in names or topics to direct users to live chats via clients. These platforms prioritize accessibility, allowing non-IRC users to discover and join discussions without installing software, while emphasizing updates to reflect dynamic changes.

Character encoding and internationalization

The original Internet Relay Chat (IRC) protocol, as defined in RFC 1459 from 1993, operates using 8-bit octets for message transmission but does not prescribe a specific set, emphasizing compatibility with 7-bit US-ASCII terminals through its delimiters and keywords. This design effectively limited early IRC to ASCII characters (codes 0-127), restricting support to text and symbols while excluding accented or non-Latin characters. As a result, initial implementations focused on 7-bit clean transmission to maintain across heterogeneous networks and clients. During the 1990s, as IRC gained popularity in and other regions, client and server software evolved to incorporate support for the ISO-8859 series of 8-bit encodings, enabling representation of accented characters in Western, Central, and Eastern European languages. For instance, ISO-8859-1 (Latin-1) became a common extension for handling languages like , , and , allowing users to transmit diacritics without corrupting messages on compatible systems. Following the standardization of in the late 1990s, adoption accelerated post-2000 through network-specific policies, with major networks encouraging or requiring it to support global multilingual communication while preserving with ASCII. Despite these advancements, the absence of a universal encoding standard in the core protocol has led to persistent challenges, particularly charset mismatches that produce —visibly garbled text when messages encoded in one scheme (e.g., ISO-8859-1) are decoded using another (e.g., ). To address this, many IRC networks implement per-channel encoding configurations, permitting operators or users to specify charsets for individual discussion forums, though this requires manual intervention and can complicate server-to-server relaying. Modern standards under IRCv3, particularly from version 3.2 onward, promote UTF-8 as the default encoding, with servers able to advertise the UTF8ONLY capability to enforce its exclusive use for all text-based messages, topics, and metadata. This mandate ensures consistent handling of international scripts, including non-Latin alphabets like Cyrillic, Arabic, and CJK ideographs, reducing legacy encoding issues. Complementary tools in clients, such as recode filters in irssi, automatically transliterate incoming and outgoing text between legacy charsets and UTF-8, facilitating seamless participation in mixed-encoding environments.

File sharing protocols

File sharing in Internet Relay Chat (IRC) primarily relies on the (DCC) protocol, which enables users to transfer files directly between clients without routing data through the IRC server, thereby avoiding bandwidth limitations and potential server restrictions. Developed in the early 1990s as an extension to the core IRC protocol, DCC uses (CTCP) messages to negotiate and establish these TCP connections. The DCC negotiation begins when one client sends a CTCP query in the format PRIVMSG <target> :\001DCC <type> <argument> <address> <port>\001, where <type> specifies the connection purpose, <argument> provides additional details like a , <address> is the initiator's IP in form for IPv4 (or for ), and <port> indicates the listening . The receiving client must respond affirmatively and then connect to the specified and to initiate the . This direct approach allows for faster data exchange but requires both parties to accept the explicitly. DCC includes several variants tailored to different sharing needs. The most common, DCC SEND, facilitates file transfers by streaming binary data in fixed-size packets, typically 1024 bytes each, until the entire file is sent; the protocol supports basic progress tracking but lacks built-in error correction. CHAT establishes a private, direct messaging channel for real-time conversation outside the IRC server, sending line-based text similar to standard IRC but without server mediation. Additionally, DCC RESUME allows interrupted SEND transfers to be paused and resumed from the point of failure, using a similar CTCP extension to specify the byte for continuation, which helps mitigate issues from unstable connections. Despite its utility, DCC has notable limitations that hinder reliability in . The does not include , leaving transfers vulnerable to interception and exposing participants' IP addresses during negotiation, which can compromise user . Firewalls and () devices often block incoming connections, complicating setups where one party is behind such barriers; while passive DCC (using port 0 to reverse the connection direction) addresses some NAT issues, it does not resolve firewall restrictions universally. These challenges have persisted since DCC's inception, making it less suitable for environments with strict security policies. As an alternative to direct SEND, the eXtended (XDCC) protocol emerged in the mid-1990s, primarily used by bots to manage and distribute file packs, such as media collections. XDCC extends by allowing clients to query a bot for a list of available files via CTCP commands like XDCC LIST, then request a specific pack with XDCC SEND <pack_number>, prompting the bot to initiate a standard SEND session. This bot-mediated approach simplifies large-scale sharing, particularly in communities focused on content distribution like or software archives, though it still inherits 's security and connectivity drawbacks. In contemporary IRC clients, some implementations incorporate HTTP-based gateways to circumvent DCC's limitations, enabling file uploads to a temporary web server and sharing links via chat rather than direct peer connections, though this is not part of the core IRC protocol.

Challenges and Security

Common attacks and vulnerabilities

Flood attacks on IRC networks involve overwhelming a target user or server with excessive messages, leading to disconnections or denial of service. These attacks, often executed via bots or scripts, exploit the protocol's lack of built-in rate limiting in early implementations, causing bandwidth exhaustion and temporary network disruptions. Variants include CTCP floods, where repeated Client-to-Client Protocol requests flood a user's client, and ping floods that send numerous PING messages to provoke excessive PONG responses. Net splits, while sometimes accidental due to network instability, can be intentionally induced by attackers severing server links to fragment the . This allows malicious users on an isolated segment to perform takeovers, such as nickname collisions where they preemptively claim desired nicks upon reconnection, or manipulate states without opposition from the main . Such attacks exploit IRC's server-to-server linking mechanism, enabling control grabs during the brief period of separation. Clone attacks entail creating multiple simultaneous connections from a single user or to evade bans or channel limits. By rapidly reconnecting under slight variations in , attackers can amplify their presence, overwhelming moderation efforts and facilitating distributed denial-of-service (DDoS) on IRC infrastructure. Tools like QuiGon were developed specifically to detect and counter these clone-based DDoS attempts on IRC networks. In the , IRC saw prevalent historical attacks including op munching, where attackers used races—rapid, competing mode changes—to repeatedly deop (remove operator status from) channel administrators and seize control. These races exploited timing vulnerabilities in IRC's asynchronous mode propagation, allowing scripted bots to outpace human responses. DDoS attacks also emerged during this era, with bandwidth floods targeting servers to disrupt operations and enable channel takeovers in non-registered rooms. Vulnerabilities in older ircd versions, such as buffer overflows, permitted remote code execution or crashes through malformed inputs like oversized commands or M_JOIN messages. For instance, ircd up to version 5.0.3 and IRCnet IRCD 2.10 were susceptible to stack overflows that could grant unauthorized access. Additionally, weak hostmask verification enabled spoofing, where attackers falsified hostnames via DNS manipulation or unverified client reports, bypassing identification reliant on IP-hostname pairs. This spoofing undermined basic security features like hostmask-based bans.

Abuse prevention strategies

IRC networks employ various services to mitigate abuse by enabling verified registrations for nicknames and channels, thereby preventing unauthorized use and squatting. NickServ allows users to register a nickname with a password, enforcing identification upon connection to reserve the name exclusively for the registrant and deterring impersonation or takeover attempts. ChanServ extends this to channels, permitting founders to register and manage access lists, successor designations, and automatic enforcement of protections against hostile takeovers by unregistered users. These services, commonly implemented via software like Atheme or Anope, require email verification during registration to ensure legitimacy and reduce automated abuse. Rate limiting is a core server-enforced mechanism to curb flooding and , imposing delays or caps on actions such as joins, nickname changes, and message transmissions. Servers rapid , typically limiting joins to a to once every few seconds per user and restricting message bursts to prevent overwhelming channels or the network. This is configurable in popular IRC daemons; for instance, UnrealIRCd's anti-flood settings allow administrators to define maximum reconnection rates per and message volumes per target, while InspIRCd enforces similar controls through connection classes and flood parameters to detect and block excessive activity indicative of bots or attacks. Blacklists provide proactive defense against known spammers by integrating DNS-based blackhole lists (DNSBL) and bans. Servers query DNSBL services upon user to check IP addresses against repositories of abusive hosts, denying access if a match is found, such as proxies used by spammers. Complementing this, the +b enables bans via hostmasks with wildcard support (e.g., !user@.example.com), allowing operators to exclude patterns of abusive users or domains efficiently without affecting legitimate participants. Network-wide policies enforce broader protections through global bans and identity obfuscation. K-lines implement server-specific bans by hostmask, blocking connections from matching IPs or users, while G-lines (global K-lines) propagate across the entire network for coordinated enforcement against persistent abusers. Cloaking, or virtual hosting (vhost), hides users' real IP addresses behind a masked hostname (e.g., user/approved.libera.chat), reducing doxxing risks and deterring targeted harassment by concealing origins from casual whois queries. Community-driven tools further bolster prevention, including bot watchlists maintained by operators to monitor and quarantine suspicious automated clients, and user reporting systems integrated into help channels or services bots. Users can report abuse via commands like /msg NickServ HELP or dedicated tickets on network websites, prompting staff review and swift action such as temporary bans or service adjustments.

Modern Developments

IRCv3 extensions and improvements

The IRCv3 project was initiated in 2011 by the IRC development community, led initially by the Atheme group, to modernize the protocol through backwards-compatible extensions that address longstanding limitations, such as the absence of native support for message history, encryption, and efficient metadata handling. These enhancements focus primarily on the client-to-server (C2S) interactions, allowing older clients to remain functional while enabling new features for advanced applications. By standardizing extensions via a capability negotiation mechanism, IRCv3 aims to improve interoperability and user experience without altering the core server-to-server protocol, which remains fragmented across implementations. Central to IRCv3 are key extensions that build upon the foundational IRC standards outlined in RFC 1459 and RFC 2812. Capabilities negotiation, introduced through the CAP LS command, enables clients and servers to dynamically advertise and enable supported features at connection time, preventing compatibility issues. The multi-prefix extension enhances channel user listings by including user modes (such as status) directly in NAMES responses, reducing the need for additional queries. Additionally, account registration is facilitated by the (Simple Authentication and Security Layer) mechanism, which provides secure, standardized authentication for users to identify with services upon connecting. The project has progressed through numbered versions, each introducing stable, tested specifications. IRCv3.1, finalized in 2015, added message tags for embedding metadata like timestamps and labels into messages, along with batching to group related events (such as multiple joins) into single transmissions for efficiency. IRCv3.2, released in 2017, mandated as the native to better support and introduced away-notify, which sends real-time updates when users change their away status, eliminating periodic polling. The extended-monitor capability, ratified in 2022, expanded the monitor extension to include notifications for away status, account changes, and other events, allowing clients to track presence and status changes for multiple users more effectively. Adoption of IRCv3 has grown among open-source implementations, with full support in servers like InspIRCd, which includes modules for capabilities such as account-notify and standard-replies. Clients like have integrated these extensions starting from version 0.8.18 in 2016, enabling features like SASL authentication and message tags. This widespread implementation has particularly benefited mobile and web-based IRC clients by providing richer notifications, reduced bandwidth usage, and seamless handling of modern encoding, making the protocol more viable for contemporary use cases.

Current usage and communities

As of 2024, Internet Relay Chat (IRC) maintains a global user base of approximately 293,000 simultaneous users across major networks, reflecting stability particularly within technology and free and open-source software (FOSS) sectors despite broader declines in adoption. By September 2025, some large networks reported growth, resulting in a net increase of over 20,000 users across IRC. This figure represents a gradual reduction from around 340,000 users in 2020, but IRC persists as a lightweight protocol suited for persistent, text-based group communication. Usage patterns show peak activity during evening hours in Europe and the United States, typically between 7 p.m. and 11 p.m. local time, aligning with after-work collaboration in developer communities. IRC continues to host vibrant niche communities, including open-source projects on , which serves as a primary hub for and initiatives following the 2021 migration from . Gaming enthusiasts gather on GameSurge, a network dedicated to non-commercial IRC services for multiplayer discussions and support. advocates also leverage IRC for its minimal data requirements and decentralized nature, with projects like DarkFi developing anonymous variants to enhance secure, interactions. The protocol's decline stems from competition with feature-rich platforms like and , which offer multimedia support, voice integration, and user-friendly interfaces that IRC lacks. However, IRC retains in low-bandwidth environments, such as remote or resource-constrained settings, due to its text-only and low overhead compared to bandwidth-intensive alternatives. Additionally, integrations like webhook relays via bots such as Codebot enable real-time notifications for code pushes and issues directly into IRC channels, bridging legacy chat with modern development workflows.

Recent innovations and future outlook

In 2024, the development of eIRC emerged as a notable enterprise-oriented , designed to provide scalable, ephemeral messaging as an alternative to resource-intensive proprietary systems like or . Created by Jesse Greathouse, eIRC builds on the with features such as modular , identity synchronization via SASL and NickServ adapters, and support for organizational , targeting businesses seeking open-standards-based communication without . Adoption of IRCv3 extensions continued to advance in 2024 and 2025, particularly those enabling message history and search capabilities, which address longstanding limitations in client-server interactions. These features, part of the IRCv3 working group's ongoing specifications, allow clients to request and display backlogs efficiently, improving usability for modern networks like . By mid-2025, several clients including TheLounge and HexChat had integrated these capabilities, facilitating seamless catch-up on missed conversations without requiring bouncers. At 2025, developers presented updates on IRC enhancements, including simplified file and picture sharing protocols integrated via IRCv3 extensions like the draft for image uploads and attachments. The talk "Chatting on IRC in 2025: grandpa, what's up?" by Simon Ser and Thomas Flament highlighted practical implementations in clients such as senpai, where users can share media directly in channels with metadata tagging for better discoverability. This builds on prior DCC extensions but standardizes them for broader compatibility across servers. Commercial bouncer services saw expansion in 2025, with new hosted ZNC offerings providing managed, scalable for IRC connections. Providers like Virtual Hosting Company upgraded ZNC instances to support multi-network configurations and enhanced SSL/TLS, catering to users needing reliable uptime without self-hosting. These services emphasize IRCv3 compatibility, including SASL EXTERNAL for secure authorization, making them suitable for professional and community deployments. Mobile IRC applications received significant updates in 2025, with improved push notification support for mentions and private messages to enhance real-time engagement on and . Clients like IRCCloud and Palaver integrated better handling of IRCv3's CLIENTTAGDENY for reply/edit features, while new releases from open-source projects added offline queuing and battery-efficient syncing. These advancements make IRC more viable for on-the-go users, reducing reliance on constant connections. Among recent innovations, AI-powered moderation bots have gained traction for automating management in IRC networks. Tools like those built on OpenAI's or local LLMs perform tasks such as spam detection, user muting, and operator status adjustments, with examples including self-hosted bots on UnrealIRCd that analyze message patterns in real-time. Projects like aircbot extend this to interactions, saving links and moderating via integrated filters, deployed in communities since 2023 but refined in 2025 for efficiency. Hybrid bridges between IRC and Matrix protocols have also advanced, enabling seamless interoperability for users across ecosystems. Heisenbridge, a bouncer-style gateway, supports IRCv3 features like message tags when bridging to rooms, allowing bidirectional communication without double-bridging issues. In 2025, self-hosted instances proliferated following concerns over centralized bridge availability, with forks like those on pixie.town ensuring continued access for networks such as communities. Looking ahead, IRC's future may involve deeper integration with emerging standards for secure, low-latency communication, though challenges like protocol fragmentation persist. Ongoing IRCv3 roadmap efforts focus on metadata enhancements and , potentially positioning IRC for niche roles in developer tools and persistent amid competition from centralized platforms.

References

  1. [1]
    RFC 2810 - Internet Relay Chat: Architecture - IETF Datatracker
    RFC 2810 describes the architecture of the IRC protocol, which uses a client-server model with servers as the backbone, and clients connecting to servers.
  2. [2]
    Internet Relay Chat turns 30—and we remember how it changed our ...
    Oct 13, 2018 · The venerable text-only chat system was first developed in 1988 by a Finnish computer scientist named Jarkko Oikarinen. Oikarinen couldn't ...Missing: history creator
  3. [3]
    IRC technology news from the first half of 2025 - Ilmari Lauhakangas
    Jul 16, 2025 · Support was added for message reactions and deleting messages, a date indicator was added to help keep track of things while scrolling, ...
  4. [4]
    RFC 1459: Internet Relay Chat Protocol
    The IRC protocol is a text-based, experimental protocol for text-based conferencing, using a client-server model for distributed teleconferencing.
  5. [5]
    RFC 2812 - Internet Relay Chat: Client Protocol - IETF Datatracker
    RFC 2812 defines the IRC client protocol for text-based conferencing, used for client-to-server connections when the client registers as a user.<|control11|><|separator|>
  6. [6]
    RFC 2813 - Internet Relay Chat: Server Protocol - IETF Datatracker
    RFC 2813 defines the protocol for IRC servers to communicate, forming a network, and is for server-to-server connections.
  7. [7]
    Libera Chat | A next-generation IRC network for FOSS projects ...
    Oct 25, 2025 · Providing a community platform for free and open-source software and peer directed projects. Connect by pointing your IRC client to irc.libera.chat:6697 (TLS)About Libera Chat · Sponsoring Libera Chat · Contributing to Libera Chat · FAQ<|control11|><|separator|>
  8. [8]
    Using IRC in 2025, for fun and reasons - Harmonique
    Apr 17, 2025 · Here's what it takes to connect to the IRC network in 2025. The IRCv3 protocol update aims to fix the (let's be honest) awful user experience of IRC.
  9. [9]
    IRC.org
    ### Summary of Jarkko Oikarinen's Account of IRC Invention, Initial Purpose, Implementation, Expansion, Design
  10. [10]
    History of IRC by Jarkko Oikarinen - mIRC
    The first implemented thing of this BBS plan was IRC. The birthday of IRC was in August 1988. The exact date is unknown, at the end of the month anyways.Missing: creator | Show results with:creator
  11. [11]
    Internet Relay Chat (IRC) History - How Invented, Jarkko Oikarinen
    Partly inspired by Jyrki Kuoppala's “rmsg” program, and partly by Bitnet Relay Chat, Oikarinen decided to improve the existing multi-user chat program on ...Missing: creator | Show results with:creator
  12. [12]
    History of IRC (Internet Relay Chat) - Daniel Stenberg
    IRC was born during summer 1988 when Jarkko "WiZ" Oikarinen wrote the first IRC client and server at the University of Oulu, Finland.Missing: invention BITNET
  13. [13]
    Users as Co-Designers of Software-Based Media
    Drawing on a case study of the early development of the first two major IRC networks—EFnet and Undernet—this article examines the co-construction of actors and ...
  14. [14]
    History of the Undernet - Undernet IRC Network - Documents Project
    The Undernet was formed in January 1993 from a US net merging with French and Canadian servers. It started as a test net and grew to over 30 servers.
  15. [15]
    IRCnet - IRC.info
    Between May and July 1996 IRCnet was formed as a European fork of EFnet, when a number of operator disagreements resulted in a group of European admins ...
  16. [16]
    News Archive - October 1999 - GameSurge
    Now only if they'd affiliate with GameSurge! Wednesday, October 27, 1999. Got News? Comments? Send it in! Help/Info/Contacts | Forum Can' ...Missing: founded | Show results with:founded
  17. [17]
    Internet Relay Chat Protocol - IRC History
    IRC was invented by Jarkko Oikarinen for use on the Internet in 1988. However, there has also been an interesting history to the development of distributed ...Missing: timeline milestones
  18. [18]
    Cult of the Dead Cow (cDc). The story of the most famous hacker ...
    Jul 13, 2025 · Today we'll talk about the most famous hacker group, Cult of the Dead Cow (cDc) ... But much later, in the era of BBS and IRC, in that period ...
  19. [19]
    RFC 2810: Internet Relay Chat: Architecture
    This document is an update describing the architecture of the current IRC protocol and the role of its different components.
  20. [20]
    RFC 1459 - Internet Relay Chat Protocol - IETF Datatracker
    RFC 1459 Internet Relay Chat Protocol May 1993 IRC, nearly all messages originating from a server are broadcast to all other connected servers. 4. Message ...
  21. [21]
    RFC 2811 - Internet Relay Chat: Channel Management
    This document defines in detail on how channels are managed by the IRC servers and will be mostly useful to people working on implementing an IRC server.
  22. [22]
  23. [23]
  24. [24]
  25. [25]
  26. [26]
  27. [27]
  28. [28]
  29. [29]
  30. [30]
  31. [31]
  32. [32]
  33. [33]
  34. [34]
  35. [35]
  36. [36]
  37. [37]
  38. [38]
  39. [39]
  40. [40]
    IRCOp guide - UnrealIRCd documentation wiki
    IRCOps, or IRC Operators, are people with special server privileges on IRC, who have special server administration tasks.Missing: RFC | Show results with:RFC
  41. [41]
  42. [42]
  43. [43]
  44. [44]
  45. [45]
  46. [46]
    Channel Modes - Libera Chat
    Various modes can be set on channels. Use /mode #channel to list current channel modes and /msg chanserv info #channel to list modes set with MLOCK.
  47. [47]
  48. [48]
    prov/irc
    (last updated 2012-09-23) Resource Identifier (RI) Scheme name: irc Status: provisional Scheme syntax: irc://<host>[:<port>]/[<channel>[?<password>]] Scheme ...
  49. [49]
    ircs
    Sep 23, 2012 · Encoding considerations: Unknown, use with care. Applications/protocols that use this scheme name: Interoperability considerations: Unknown, use ...
  50. [50]
    draft-butcher-irc-url-04 - IETF Datatracker
    This document specifies two URL (Uniform Resource Locator) schemes, using the URI (Uniform Resource Indicator) names "irc" and "ircs", for the location of IRC ...
  51. [51]
    IRCHelp.org — The Client-To-Client Protocol (CTCP)
    CTCP DCC extended data messages are used to negotiate file transfers between clients and to negotiate chat connections over tcp connections between two clients ...Missing: extension | Show results with:extension
  52. [52]
    IRCv3.1 SASL Authentication
    This document describes the client protocol for SASL authentication, as implemented in Charybdis and Atheme.Missing: pre- | Show results with:pre-
  53. [53]
    Clients - IRCv3
    IRCv3 Client Support. This page lists the IRC clients compatible with and supporting IRCv3 features.
  54. [54]
    mIRC: Internet Relay Chat client
    mIRC is a popular Internet Relay Chat client used by individuals and organizations to communicate, share, play and work with each other on IRC networks ...Download mIRC · Register mIRC · About · Latest NewsMissing: history features
  55. [55]
    HexChat: Home
    HexChat is an IRC client based on XChat, but unlike XChat it's completely free for both Windows and Unix-like systems.Downloads · Screenshots · View Themes · Read News
  56. [56]
    IRC :: Pidgin, the universal chat client
    To join an IRC channel in Pidgin, create an IRC account, then use Buddies -> Join a Chat or the /join command. You can also auto-join channels on login.
  57. [57]
    Irssi
    Irssi is a modular text mode chat client. It comes with IRC support built in. Themes Irssi is completely themeable. Every single message can be themed.Documentation · Download · New users guide · IRC Commands
  58. [58]
    WeeChat, the extensible chat client
    Powerful, customizable. Full-featured IRC plugin: multi-servers, proxy support, IPv6, SASL authentication, nicklist, DCC, and many other features.Features · Download · About :: WeeChat.org · Documentation
  59. [59]
    KiwiIRC - The webIRC client
    KiwiIRC makes Web IRC easy. A hand-crafted IRC client that you can enjoy. Designed to be used easily and freely.Your IRC Client. · Login · Embed a widget · Register
  60. [60]
    IRCCloud
    IRCCloud is a modern IRC client that keeps you connected, with none of the baggage. Stay synced and notified wherever you are with our web and mobile apps.
  61. [61]
    bagder/irchistory: The history of IRC - GitHub
    IRC was born during summer 1988 when Jarkko "WiZ" Oikarinen wrote the first IRC client and server at the University of Oulu, Finland.Missing: creator | Show results with:creator
  62. [62]
    IRC-Junkie interview with Jarkko Oikarinen - ircdocs.horse
    Apr 23, 2012 · An Interview with the creator of IRC himself, Mr. Jarkko Oikarinen. We've asked Mr. Oikarinen a few questions about his invention as well as ...
  63. [63]
    EFnet - The Original IRC Network
    EFnet (Eris Free Network) is the modern-day descendant of the original IRC network. Founded in 1990, EFnet has maintained its position as one of the largest and ...
  64. [64]
    How the K-line got its name: history of IRC daemon configuration
    The history of ircd forks runs in tandem with the history of IRC networks ... DALnet (Bahamut, a fork of Dreamforge which descends from ircd 2.8.21), Rizon ...
  65. [65]
    InspIRCd - The Stable, High-Performance and Modular IRCd
    InspIRCd is a modular Internet Relay Chat (IRC) server written in C++ for Linux, BSD, Windows and macOS systems. It was created from scratch to be stable, ...InspIRCd Documentation · Installing InspIRCd 3 · V3 Configuration · Read more
  66. [66]
    InspIRCd Documentation: Introduction
    InspIRCd is a modular C++ Internet Relay Chat (IRC) server for UNIX-like and Windows systems.
  67. [67]
    About UnrealIRCd - UnrealIRCd documentation wiki
    UnrealIRCd is an Open Source IRC Server, serving thousands of IRC networks since 1999. It runs on Linux, FreeBSD, NetBSD, macOS and Windows
  68. [68]
    History of UnrealIRCd releases
    Main new features were JSON logging support, named extended bans, geoip and more flexibility (configurability) in several areas. In 2023, JSON-RPC, the ...
  69. [69]
    ngIRCd: Free, portable and lightweight Internet Relay Chat server
    ngIRCd is a free, portable and lightweight Internet Relay Chat (IRC) server for small or private networks, developed under the GNU General Public License (GPL).Missing: features history
  70. [70]
    ngircd/ngircd: Free, portable and lightweight Internet Relay Chat ...
    ngIRCd is a free, portable and lightweight Internet Relay Chat (IRC) server for small or private networks, developed under the terms of the GNU General Public ...
  71. [71]
    [PDF] Computer Networks Project 1: Internet Relay Chat (IRC) Server
    An IRC network is composed of a set of nodes interconnected by virtual links in an arbitrary topology. Each node runs a process that we will call a routing ...
  72. [72]
    inspircd/inspircd: A modular C++ IRC server (ircd). - GitHub
    InspIRCd is a modular C++ Internet Relay Chat (IRC) server for UNIX-like and Windows systems. Supported Platforms InspIRCd is supported on the following ...
  73. [73]
    Services - UnrealIRCd documentation wiki
    Services on IRC are a piece of software that usually provides NickServ and ChanServ bots. NickServ is used to register a nick name, so only you can use it.
  74. [74]
    The EsperNet IRC Network - EsperNet IRCd and Services - BotServ
    BotServ allows users to request a basic custom bot for a channel. With BotServ you can assign one of the available bots to your channel and set various features ...
  75. [75]
    BotServ Commands - GeekShed IRC
    BotServ allows you to have a bot on your own channel. It has been created for users that can't host or configure a bot, or for use on networks that don't ...
  76. [76]
    Eggdrop, an open source IRC bot — Eggdrop 1.10.1 documentation
    Eggdrop is a free, open source software program built to assist in managing an IRC channel. It is the world's oldest actively-maintained IRC bot.Missing: Supybot languages
  77. [77]
  78. [78]
    eggheads/eggdrop: The Eggdrop IRC Bot - GitHub
    One of the features that makes Eggdrop stand out from other bots is module and Tcl and Python scripting support. ... You can also link multiple Eggdrop bots ...
  79. [79]
    ZNC
    Feb 11, 2024 · An advanced IRC bouncer that is left connected so an IRC client can disconnect/reconnect without losing the chat session.ZNC Backup · Connecting to ZNC · ZNC:General disclaimer · Installation
  80. [80]
    Official repository for the ZNC IRC bouncer - GitHub
    Once you have started ZNC you can connect with your favorite IRC-client to ZNC. You should use username:password as the server password (e.g. /pass user:pass ).
  81. [81]
    ZNC - Debian Wiki
    Sep 18, 2023 · ZNC is an advanced IRC bouncer that can establish such a permanent connection to several IRC networks and channels so your IRC client (or multiple clients) can ...
  82. [82]
    psybnc/psybnc: an IRC Bouncers - GitHub
    This program is useful for people who cannot be on irc all the time. Its used to keep a connection to irc and your irc client connected, or also allows to act ...
  83. [83]
  84. [84]
    znc(1): advanced IRC bouncer - Linux man page - Die.net
    znc is an IRC proxy. It runs as a daemon and connects to IRC server, then allows you to connect from a workstation and work as the user that is logged in .
  85. [85]
    IRC Bouncers - IRCNow
    Jul 28, 2024 · To get started with a free bouncer, connect to and /join . See the channel topic, Then join one of team channel and then type !bnc Here's how to ...Missing: Unix | Show results with:Unix
  86. [86]
    ZNC - ArchWiki
    Sep 28, 2024 · ZNC is an advanced IRC bouncer that is left connected so an IRC client can disconnect/reconnect without losing the chat session.
  87. [87]
  88. [88]
    How to install and use ZNC bouncer for IRC - Opensource.com
    Apr 4, 2017 · ZNC is a bouncer application that provides an awesome set of features. It is readily available in most Linux software repositories for you to install wherever ...
  89. [89]
    Never leave IRC again with ZNC - Fedora Magazine
    Aug 25, 2017 · When you log into your bouncer, it “replays” messages in your channels you missed while offline, as well as private messages from other users.
  90. [90]
    Why EFnet/IRCnet has no registration services? - IRChelp
    Sep 12, 2009 · This guide will focus on the philosophical question of why other nets have no registration services.
  91. [91]
    X commands English - Undernet IRC Network - Documents Project
    Nov 16, 2020 · /msg X clearmode <#channel>. You can use this to clear all modes in a channel when it's locked. It will remove channel modes +i, +l, and +k.<|separator|>
  92. [92]
    Channel Service Documents - Undernet IRC Network
    X can usually be found in most registered channels, and is the service which Undernet provides to registered channels to assist them in maintaining stability.
  93. [93]
    Undernet (IRC) Turning 32 Shortly and It Still Has About ... - Techrights
    Undernet (IRC) Turning 32 Shortly and It Still Has About 16,000 Users Online (at Any Given Time). posted by Roy Schestowitz on Sep 22, 2024. undernet.
  94. [94]
    Undernet IRC Network - Undernet News
    This join limiting capability will allow X to prevent large floodnets from joining, allowing client scripts (and bots) to respond more easily as ...
  95. [95]
    The DALnet IRC Network
    From mailing lists to #OperHelp, DALnet's staff works diligently to serve its community of dedicated users. DALnet's existence depends solely upon the goodwill ...Servers · Services · IRC Clients · Services AbuseMissing: focused | Show results with:focused
  96. [96]
    Newbie Guide to DALnet
    IRCops assist users in becoming oriented to the DALnet network, DALnet Services and in the mediation of disputes. They may also participate in various teams as ...Missing: focused | Show results with:focused
  97. [97]
    dalnet Channels - Netsplit.de
    During last connections to dalnet its servers reported an average of 6684 users and 3439 chat rooms. Use the following menu to get more information about IRC ...
  98. [98]
    IRCHelp.org — Popular IRC networks
    IRCnet is one of the oldest and largest IRC networks with more than 25.000 users using it daily. Libera.Chat. Server Locations: Europe, UK Services: nickserv, ...Missing: current | Show results with:current
  99. [99]
    The Great Split - IRC.org
    In Europe, it was basically a definite requirement for the rules that only things disruptive to servers or to the net as a whole warranted operator-invention, ...
  100. [100]
    IRCnet.com
    IRCnet is the oldest and one of the largest IRC networks with more than 20.000 users using it daily. To connect to IRCnet, you need to install a client and ...Servers · Clients · Channels · ArticlesMissing: current | Show results with:current
  101. [101]
    Welcome to Libera Chat | Libera Chat
    May 19, 2021 · A next-generation IRC network for free and open source software projects and similarly-spirited collaborative endeavours.
  102. [102]
    libera.chat Channels - Netsplit.de
    During last connections to libera.chat its servers reported an average of 31951 users and 22621 chat rooms. Use the following menu to get more information about ...Missing: peak | Show results with:peak
  103. [103]
    Annual Report 2024 - Libera Chat
    General. Libera Chat operates a general purpose IRC network which at the end of the year served approx 131 000 registered users and 28 000 registered channels.<|control11|><|separator|>
  104. [104]
    IRCHelp.org — IRC Channel Lists
    To find IRC channels, use the /list command on a server, or use external sites like Netsplit.de, IRC-Source.com, or EFnet Channel Search.Missing: SearchIRC. | Show results with:SearchIRC.
  105. [105]
    IRC Chat Rooms - Search - Netsplit.de
    – Chat rooms on IRC are usually called channels. Use this IRC search engine to search in channel names and topics of around 500 IRC networks!
  106. [106]
    IRC Networks and Servers - mIRC
    You can find an up-to-date list of current IRC networks on Netsplit and SearchIRC.<|separator|>
  107. [107]
    Undernet C h a n n e l S e r v i c e
    If you do not have an account, create one now! The contents of these pages are copyright by the UnderNET Channel Service. You may only link to the main page ...Log InChannel Service DocumentsEmail Change FormRegistration ProcessChannel Service
  108. [108]
    Channel Listing - DALnet Documentation Project
    The easiest way to find a channel on IRC is via the /list command. It enables you to search through the thousands of channels on DALnet and find one that ...
  109. [109]
    About The Bots - IRC Driven
    The IRC Driven bots are designed to index networks, do presign up checks, and other actions related to the IRC networks being indexed.
  110. [110]
    Channel Search - Kiwi IRC
    Search for an IRC channel. Find a place to chat from 166,616 channels, over 0 networks and communities ... Privacy Support / Mailing list Donate Contact.
  111. [111]
    IRC Client Protocol Specification
    This document describes the IRC Client-Server protocol. IRC is a text-based chat protocol which has proven itself valuable and useful.
  112. [112]
    UTF8ONLY ISUPPORT token - IRCv3
    Introduction. IRC predates the Unicode standard. Consequently, although UTF-8 has been widely adopted on IRC, clients cannot assume that all IRC data is UTF-8.Missing: post- 2000
  113. [113]
    recode - Irssi dev help page
    Recodes the data transmitted to and received from nicknames and channels into a specific charset. To get a list of supported charsets on your system, you can ...Missing: encoding | Show results with:encoding
  114. [114]
    IRCHelp.org — A description of the DCC Protocol
    DCC uses direct TCP connections between the clients taking part to carry data. There is no flood control, so packets can be sent at full speed, and there is no ...
  115. [115]
    Direct Client-to-Client Protocol (DCC)
    DCC is a protocol for direct connections between IRC clients, bypassing the IRC network to transfer data like files and chat.DCC Query Syntax · DCC CHAT · Sending Messages · DCC SEND
  116. [116]
    IRC Specifications - ircdocs.horse
    I intend for them to help improve interoperability with the wider IRC ecosystem, and provide a good starting-point on the base protocol for new implementations.Missing: email | Show results with:email<|control11|><|separator|>
  117. [117]
    IRCHelp.org — Web Clients
    They can be embedded into a webpage, but, unlike gateways, once downloaded, they don't consume server resources, and they all make seperate connections to IRC ...Missing: bouncers | Show results with:bouncers<|separator|>
  118. [118]
    Examples of IRC Attacks - Malicious Mobile Code [Book] - O'Reilly
    IRC attacks include bots, malicious scripts, and worms. Examples are flood attacks, like CTCP flood, and mass deop attacks.
  119. [119]
    IRCHelp.org — Understanding IRC Network Topography
    Breaking the links between servers, whether intentionally or unintentionally, causes an event called a “netsplit”, in which the network is temporarily ...
  120. [120]
    1 Introduction 8 Internet Relay Chat QuiGon: The First Tool Against ...
    Abstract. Clone attacks are a way to perform DDOS attack on Internet Relay. Chat networks. There is no tool which prevents an IRC network against such at-.
  121. [121]
    DDoS Attacks History - Radware
    Mar 12, 2017 · Since the first DoS attack was launched in 1974, DDoS attacks and other DoS attacks have remained among the most persistent and damaging cyber-attacks.
  122. [122]
    Hybrid Ircd 5.0.3 p7 - Remote Buffer Overflow - Exploit-DB
    source: https://www.securityfocus.com/bid/581/info Ircd hybrid-6 (up to beta 58) has a vulnerability which can allow remote access to the irc server (ircd).
  123. [123]
    IRCnet IRCD 2.10 - Local Buffer Overflow - Linux dos Exploit
    Oct 13, 2003 · source: https://www.securityfocus.com/bid/8817/info IRCnet IRCD has been reported prone to a buffer overflow vulnerability that may be ...<|separator|>
  124. [124]
    Re: Dynamic DNS "Spoofing" & IRC - Bugtraq - Seclists.org
    May 2, 2003 · The problem with rechecking dns is that for a pretty large network such as ircnet or efnet it would take some resources to do this check, thus ...
  125. [125]
    Frequently Asked Questions - IRCv3
    Originally, we were setup by the Atheme group to develop extensions to the IRC client protocol. These days, the direction of the IRCv3 WG is led by our ...Missing: originated 2011
  126. [126]
    IRCv3 Working Group Charter
    The IRCv3 working group is chartered to prototype, develop, test and specify further extensions to the IRC client protocol.
  127. [127]
    Client Capability Negotiation - IRCv3
    Software supporting CAP: Ergo, IRCCloud Teams, ircd-hybrid, InspIRCd ... Irssi, Konversation, KVIrc, LimeChat, mIRC, Mozilla Thunderbird, Pidgin, Quassel ...
  128. [128]
    IRCv3 Specifications
    SASL lets users authenticate in a standardised way across different IRC networks. It gives a way to authenticate while connecting, without having to message ...
  129. [129]
    `away-notify` Extension - IRCv3
    The `away-notify` extension allows clients to be notified when users set, change, or remove their away status, replacing WHO polling for efficiency.
  130. [130]
    Module Details: ircv3 (v3) - InspIRCd Documentation
    This module provides the IRCv3 account-notify , away-notify , extended-join , and standard-replies client capabilities. Configuration. To load this module use ...Missing: irssi | Show results with:irssi
  131. [131]
    Techrights — Internet Relay Chat (IRC) Still Has Hundreds of ...
    Mar 26, 2024 · Internet Relay Chat (IRC) Still Has Hundreds of Thousands of Simultaneously-Online Unique Users. posted by Roy Schestowitz on Mar 26, 2024.Missing: statistics | Show results with:statistics
  132. [132]
    Internet rush hour - Wikipedia
    Typically, Internet Rush hour occurs between 7 and 11 pm local time. ... During this time frame, users commonly experience slowness while browsing or downloading ...<|control11|><|separator|>
  133. [133]
    GameSurge >> Welcome
    GameSurge has been setup to provide professional, non-commercial IRC and community related services. You can expect exciting new things from GameSurge ...Chat · Servers · Update Your IRC Client · GameSurge >> G-line Query
  134. [134]
    Darkfi Unveils 'World's Strongest Anonymous Chat' in Latest IRC ...
    Oct 2, 2024 · Darkfi released its internet relay chat (IRC) text-based communication protocol, proudly calling it “the world's strongest anonymous chat.”
  135. [135]
    What Is IRC? Understanding Network Protocols By WireX Systems
    Internet Relay Chat (IRC) is an application layer protocol that facilitates text-based communication in real-time over the internet.How Does Irc Work · Security Concerns Of Irc · Wirex Systems Ndr Can Help...Missing: module | Show results with:module
  136. [136]
    How Slack Ate IRC (and What We Miss About It) | HackerNoon
    May 6, 2025 · A look at how Slack replaced IRC and what we lost in the transition from raw, open chat to polished, corporate messaging.Missing: decline | Show results with:decline
  137. [137]
    Why IRC is still good in $CURRENT_YEAR - APNIC Blog
    Sep 21, 2020 · Having no multimedia or fancy features such as emoji reactions, integrations, or stickers keeps the bandwidth usage down and the focus on the ...
  138. [138]
    olabini/codebot: Easily send GitHub webhook notifications to IRC
    Codebot is an IRC bot that receives GitHub and GitLab webhooks and forwards them to IRC channels. It is designed to send messages in a format similar to that ...
  139. [139]
    jesse-greathouse/eIRC: Enterprise server software for providing chat ...
    eIRC is a modern, scalable enterprise messaging architecture built on the IRC protocol. Designed for organizations that require ephemeral, ...
  140. [140]
    2024 Spec round-up - IRCv3
    2024 Spec round-up 13 Nov 2024 · Specs ratified · New drafts · Specs updated · On the Roadmap · Other.Missing: 3 adoption
  141. [141]
    Chatting on IRC in 2025: grandpa, what's up? - Fosdem
    However, the historic IRC protocol is not always well-suited to modern usage, such as connecting from multiple devices with unreliable connectivity, or ...
  142. [142]
    ZNC Bouncer Software Upgrade - Bravo - Virtual Hosting Company
    Aug 2, 2025 · ZNC Bouncer Software Upgrade – Bravo · Start Date: August 8th, 2025 · Start Time: 10:30 PM (GMT -4) · End Date: August 8th, 2025 · End Time: 11:30 ...
  143. [143]
    FAQ - ZNC
    Aug 22, 2025 · What is this new network support? It means you can add multiple IRC networks such as EFnet and freenode onto a single user. Instead of ...
  144. [144]
    IRC technology news from the second half of 2024
    Jan 16, 2025 · The Undernet network, established in 1993, now supports IRCv3 capabilities thanks to updates to its ircu2 daemon. The future is finally starting ...
  145. [145]
  146. [146]
    Palaver IRC on the App Store
    Palaver was made with the modern IRC user in mind and features IRCv3 support, ZNC integration, push notifications, and much more. Features: • Quick and ...
  147. [147]
    Designing an OpenAI powered IRC Chat Bot for Fun and Profit
    Oct 11, 2023 · A short chronicle of writing a chat bot backed by OpenAI's ChatGPT that interfaces into an IRC networks.
  148. [148]
    tcotav/aircbot: Bot for IRC and Discord with LocalLLM and LLM support
    An intelligent IRC/Discord bot that automatically saves shared links and provides natural language interaction through LLM integration. Features smart link ...
  149. [149]
    IRC Bots to AI Agents: Automation's First Playground - Brajeshwar
    Sep 13, 2025 · In the late 1990s, if you wandered into a crowded Internet Relay ... IRC bots managed trivia, moderation, and alerts. AI agents handle ...The First Tricksters Of The... · Bots And Ai Agents: The... · Cultural ContinuityMissing: rise | Show results with:rise
  150. [150]
    Bridges - IRCv3
    IRCv3 Bridges Support. This page lists gateways to and from other protocols, which are compatible with and supporting IRCv3 features.Missing: innovations 2024 3 FOSDEM ZNC mobile apps WebRTC AI
  151. [151]
    Matrix/IRC bridge is now self-hosted - postmarketOS
    Mar 31, 2025 · The Matrix/IRC bridge is now self-hosted due to the Matrix.org Foundation's potential shutdown, using a pixie.town fork of matrix-appservice. ...Missing: hybrid 2024
  152. [152]
    We're a collection of IRC developers and network staff ... - IRCv3
    The IRCv3 Working Group is a collection of IRC developers and network staff working to enhance the IRC protocol by developing extensions.Missing: UTF- 8 mandate