The following tables compare general and technical information including the differences in feature sets between popular IRC daemons. Grey entries in the list represent supposedly unmaintained daemons.
Please see the individual products' articles or websites or the cited references for further information. This article is neither all-inclusive nor necessarily up-to-date.
Contents |
IRC daemon | Creator/network | Basis | Programming language | First public release | Latest version (numeric 351) | Software license | Website |
---|---|---|---|---|---|---|---|
Asuka[1] | QuakeNet Dev Team | ircu | C | Unknown | 1.2.1 (now replaced by snircd) | GPL | Unknown |
Austhex | AustNet Development | ircu2.9 | C, Scheme | Unknown | ? (now replaced by inspircd) | GPL | Unknown |
Bahamut[2] | DALnet | DreamForge, IRCD-Hybrid | C | 1999[3] | bahamut-1.8.6 | GPL | [2] |
bIRCd[4] | DAMnet | DreamForge | C | 1999 | bIRCd-2.1.0rc4 | GPL | [3] |
beware ircd[5] | beware | from scratch | Delphi | Unknown | beware1.6 | GPL | [4] |
Charybdis[6] | atheme.org (nenolod, jilles, dwr, gxti) | ircd-ratbox, IRCD-Hybrid, ircu, ShadowIRCd | C | 2005 | charybdis-3.3.0 | GPL/BSD | [5] |
ConferenceRoom | WebMaster Incorporated | from scratch | C++ | 1996 | ConferenceRoom/3.5 | Proprietary | [6] |
csircd | Comstud | from scratch | C | 1998 | csircd-1.14 | GPL | Unknown |
dancer-ircd | freenode | Hybrid 6 | C | 1999 | ? (replaced by hyperion) | GPL | Unknown |
DreamForge | DALnet | irc2.8.mu3 | C | 1994 (dal), 1997? (df) | ? (replaced by bahamut) | GPL | Unknown |
Faerion IRC Server[7] | vhex | DreamForge | C, C++ | 2003 | 1.17.7.1[8] | GPL | [7] |
hyperion[9] | freenode | dancer-ircd 1.0.35+pre2 | C | 2005 | ? (replaced by ircd-seven) | GPL | [8] |
InspIRCd [10] | InspIRCd Development Team | from scratch | C++ | 2002 | 2.0[11] | GPL | [9] |
ignitionServer[12] | The Ignition Project | Pure-IRCD (VB6 version) | Visual Basic | 2004 | ignitionServer-0.3.6-P1[13] | GPL[14] | [10] |
IRCd[15] | Jarkko Oikarinen, IRCnet[16] | from scratch | C[17] | 1988 | 2.95 | GPL | [11] |
IRCD-Hybrid | Hybrid Development Team, EFnet | irc2.8 | C | 1997 | 7.2.3 | GPL | [12] |
ircd-ratbox | Aaron Sethman, Lee Hardy, EFnet | Hybrid 7-rc1 | C | 2002 | ircd-ratbox-3.0.7 | GPL | [13] |
ircd-seven | freenode | charybdis 3.1.x/trunk | C | — | stable | GPL | [14] |
ircu[18] | Undernet Coder Committee | irc2.7[19] | C[20] | 1991 | u2.10.12.14[21] | GPL | Unknown |
IRCXpro Server | IRCXpro, Paul Heinlein | IRCPlus | Visual Basic | 2002 | 1.2 (build 1572) (now replaced by OfficeIRC) | Proprietary | Unknown |
ithildin[22] | Chip Norkus | from scratch | C | 2006 | 1.1[23] | BSD[24] | [15] |
Nefarious IRCu | Evilnet Development, AfterNET | ircu2 | C | 2004 | u2.10.11.07+Nefarious(1.2.0)+[2212 2008-08-03] | GPL | [16] |
ngIRCd[25] | Alex Barton | from scratch | C | 2001[26] | ngircd-17.1[27] | GPL | [17] |
OfficeIRC Server | Office IRC Inc, Paul Heinlein | from scratch | VB.NET | 2006 | 2.2 | Proprietary | [18] |
pircd | Jay F Kominek | from scratch | Perl | 1999 | ? (now unmaintained) | Open Source (custom) | [19] |
PleXusIRCd | Rizon, thaprince, static | Hybrid 7.2.3 | C | 2005 | hybrid-7.2.3+plexus-3.0.1(20090612_0-523) | GPL | [20] |
pureIRCd | Dennis Fisch aka Diligent | from scratch | C | 2002 | Unknown | GPL | Unknown |
IRC server | PTlink IRC Software | Hybrid 6 | C | 2001 (v.6) | 5.4.0 (now unmaintained) | GPL | [21] |
QuakeIRCd | QuakeIRCd Team, Tiburon, blackcomb | UnrealIRCd | C | 2003 (v1.1) | ? (now unmaintained) | GPL | [22] |
RockIRCd[28] | Mike Chambers | from scratch | QuickBASIC[29] | 2009 | 1.0.0-testing | GPL | [23] |
ShadowIRCd[30] | Taros, jdhore, jilles, nenolod | Charybdis[30] | C | 2003 | shadowircd-6.3.1 | GPL | [24] |
snircd | QuakeNet | ircu2.10.12[31] | C[31] | Unknown | 1.3.4a[1] | GPL[31] | [25] |
solid-ircd | Toshi Morita, Juan Baez,Gabriel Baez | Bahamut | C | 2004[32] | solid-ircd 3.4.8 | GPL | [26] |
SorIrcd | SorceryNet | dal4.4.10 and irc2.8.mu3 | C | 1996 | ? (replaced by Charybdis) | GPL | [27] |
Synchronet IRCd[33] | Randy E. Sommerfeld | from scratch | JavaScript | 2003 | SynchronetIRCd-1.3a(1.151) | GPL | [28] |
TR-IRCd [34] | Yusuf Iskenderoglu, Ekim Engin, Dimitris Ginosatiris, Maksut Cagil, Burak Cifter | Hybrid 7 and Bahamut | C | 1999 | 5.6.1 | GPL | [29] |
UltimateIRCd | ShadowRealm Creations | DreamForge 2.8 | C | 2001 | 3.0.2 [35] (now unmaintained) | GPL | [30] |
UnrealIRCd[36] | UnrealIRCd Team | EliteIRCd (potvin)[37] | C | 1999 | Unreal3.2.9[38] | GPL | [31] |
Viagra IRCd[39] | Chris Schiffner | Titan | C | 2003 | 1.3.3 (now unmaintained) | GPL | [32] |
WeIRCd | Eloxoph IRC Network[40] | from scratch | C | 2007 | WeIRCd 0.8.2[41] | GPL | [33] |
NeoIRCd | Tom Mcloughlin (Macs/XentOS) | charybdis | C | 2011 | NeoIRCd 0.1[42] | GPL | [34] |
The operating systems the daemons can run on without emulation; also supported event dispatch facilities for network sockets (see IRCd for further information).
IRC daemon | Windows | DOS | Mac OS | Linux | BSD | Solaris | HP-UX | AIX | select() | poll() | epoll[43] | kqueue[44] | RT signals[45] | /dev/poll[46] | Windows IOCP[47] | Solaris IOCP[48] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Bahamut | No | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | No | Yes | No | No |
bIRCd | Yes | No | Unknown | Yes | Yes | Yes | Yes | Unknown | Yes | Yes | No | No | No | No | No | No |
Charybdis | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes |
ConferenceRoom | Yes | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | No |
InspIRCd[49][50] | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes |
IRCD[51] | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No |
ircd-ratbox | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
ircu | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No |
ithildin | No | No | No | Yes | Yes | Unknown | Unknown | Unknown | Yes | Yes | No | Yes | No | No | No | No |
Nefarious IRCu | No | No | Yes | Yes | Yes | Yes | Yes | Unknown | Yes | Yes | Yes | Yes | No | Yes | No | No |
ngIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No |
OfficeIRC Server | Yes | No | Yes | Yes | Yes | No | No | No | Unknown | Unknown | No | No | No | No | Yes | No |
PleXusIRCd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
pureIRCd | Yes | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No |
RockIRCd | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No |
ShadowIRCd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
snircd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No |
solid-ircd | No | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | No | Yes | No | No |
Synchronet IRCd | Yes | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | No | Yes | No | No |
UnrealIRCd | Yes | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | No | No | No | No | No | No | No |
WeIRCd | Yes | No | Yes | Yes | Yes | Unknown | Unknown | Unknown | Yes | No | No | No | No | No | No | No |
Various networking and IRC technology implemented to date.
IRC daemon | Modularity | Remote includes | IPv6 | Client SSL | SSL linking | Zip linking | Hostmasking, cloaking | Services integration (built-in services) | LDAP authentication | IRCX support | SASL support | Server protocol |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Bahamut | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | TS5 with extensions |
bIRCd | No | No | Yes | Yes | Yes | No | No | No | No | No | No | RFC 1459 and TSpre8 |
beware ircd | No | No | Yes | No | No | No | Yes | No | No | No | No | P10 |
Charybdis | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | TS6 with extensions |
ConferenceRoom | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Proprietary, binary |
InspIRCd | Yes[52] | Yes | Yes | Yes | Yes | Yes | Yes | Partial | Yes | No | Yes | TS6-based Spanning Tree |
IRCD | No | No | Yes | No | No | Yes | No | No | No | No | No | RFC 2813 with IDs |
IRCD-Hybrid | Yes | No | Yes | Yes | Yes | Yes | Yes (contrib module) | Yes (contrib module) | No | No | No | TS6 |
ircd-ratbox | Yes | No | Yes | Yes | Yes | Yes | No | No | No | No | No | TS6 |
ircu | No | No | Yes | No | No | No | Yes | No | No | No | No | P10 |
ithildin | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Module-dependent |
Nefarious IRCu | No | No | No | Yes | Yes | No | Yes | No | No | No | No | P10 with extensions |
ngIRCd | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | RFC 2813 |
OfficeIRC Server | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Compatible with DreamForge and UnrealIRCd |
PleXusIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | TS5/TS6 |
pureIRCd | No | No | No | No | No | No | No | No | No | No | No | No |
RockIRCd | No | No | No | No | No | No | Yes | No | No | No | No | No |
ShadowIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | TS6 with extensions |
snircd | No | No | Yes | No | No | No | Yes | No | No | No | No | P10 with extensions |
solid-ircd | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | TS5 with extensions |
Synchronet IRCd | No | No | No | No | No | No | No | No | No | No | No | TS5 with extensions |
UnrealIRCd | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | DreamForge/TS5 with extensions |
WeIRCd | Partial | No | Yes | No | No | No | Yes | Yes (module) | No | No | No | No |
IRC server features, mostly extensions to RFC 1459. Probably also implementations of RFC 2810, RFC 2811, RFC 2812, RFC 2813, and possibly IRCX.
IRC daemon | Channel types | Halfop support
(+h %) |
Admin/protect support
(+a/+u &/!/*) |
Founder/owner support
(+q ~/.) |
Operator prefixing[53] | Advanced operator ACL | Operator "levels"[54] | vHost via I-line (or equivalent) | i18n nicknames[55] | RDBMS integration (SQL) |
---|---|---|---|---|---|---|---|---|---|---|
Bahamut | # | No | No | No | No | No | No | Partial | No | No |
bIRCd | # & | No | No | No | No | No | No | Partial | No | No |
Charybdis | # & | No | No | No | No | Yes | Yes | Yes | No | No |
ConferenceRoom | # & | No | No | Yes | No | Yes | Yes | Yes | Partial | Partial |
InspIRCd | # | Yes | Module | Module | Module | Yes | Module | Yes | Module | MySQL, SQLite & PostgreSQL: Authorization, Services Integration, Logging, Operaccess |
IRCD | # & ! + | No | No | No | No | Unknown | No | No | No | No |
IRCD-Hybrid | # & | Yes | No | No | No | No | No | No | No | No |
ircd-ratbox | # & | No | No | No | No | No | No | Yes | No | No |
ircu | # & | No | Yes | No | No | Yes | No | No | No | No |
ithildin | # | No | No | No | Yes | Yes | Yes | No | No | |
Nefarious IRCu | # & | Yes | No | No | No | Yes | No | Yes | No | No |
ngIRCd | # & + | No | No | No | No | No | No | No | No | No |
OfficeIRC Server | # %# & %& | No | Yes | Yes | Yes | Partial | Yes | Yes | Yes | Partial |
PleXusIRCd | # & | Yes | Yes | Yes | No | No | Unknown | Yes | Unknown | No |
pureIRCd | # | No | No | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown |
RockIRCd | # | No | Yes | Yes | Unknown | Unknown | Yes | No | Unknown | No |
ShadowIRCd | # & | Yes | Yes | No | No | Yes | Yes | Yes | No | No |
snircd | # & | No | Yes | No | No | Yes | No | Yes | No | No |
solid-ircd | # | Yes | No | No | No | No | No | Partial | No | No |
Synchronet IRCd | # & | No | No | No | No | No | No | No | No | No |
UnrealIRCd | # | Yes | Yes | Yes | No | Third party module[56] | Third party module (netadmins)[57] | Yes, vhost block in conf | iso8859-1/2/7/8-I/9/16, windows-1250/1251, Multibyte | MySQL & PostgreSQL: Third party modules [58] |
WeIRCd | # | Yes | No | No | No | No | No | No | No | SQLite in services module |
IRC daemon | Connect-flood detection | Channel flood controls basic / advanced |
Join throttling | Spamfilter regexp / glob |
Channel censor IRCd config / chanop-controlled |
Variable per-channel banlist size | Timed bans | DNSBL | CGI:IRC/WEBIRC host spoofing |
---|---|---|---|---|---|---|---|---|---|
Bahamut | Yes | Yes / No | Yes | No / No | No / No | No | No | No | No |
bIRCd | No | No / No | No | No / No | No / No | No | No | No | No |
Charybdis | Yes | No / No | Yes | No / No | No / No | Yes | Yes | Yes | Yes |
ConferenceRoom | Yes | Yes / Yes | Yes | No / Yes | Partial / No | No | Partial | Yes | No |
InspIRCd | Yes | Yes / Yes | Yes | Yes / Yes | Yes / Yes | Yes | Yes | Yes | Yes |
IRCD | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | No |
IRCD-Hybrid | Yes | No / No | No | No / No | No / No | No | No | No | Yes (contrib module) |
ircd-ratbox | Yes | No / No | No | No / No | No / No | No | No | No | Yes |
ircu | Yes | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | No | No |
ithildin | Module | No / No | No | No / No | No / No | No | No | Unknown | Unknown |
Nefarious IRCu | Yes | No / No | No | Yes / No | No / No | No | No | Yes | Yes |
ngIRCd | No | No / No | No | No / No | No / No | No | No | No | Yes |
OfficeIRC Server | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Unknown |
PleXusIRCd | Yes | No / No | No | No / No | No / No | No | No | Unknown | Unknown |
pureIRCd | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown |
RockIRCd | No | Yes / No | No | No | No | No | No | No | Unknown |
ShadowIRCd | Yes | No / No | Yes | No / No | No / No | Yes | Yes | Yes | Yes |
solid-ircd | Yes | Yes / No | Yes | No / No | No / No | No | No | No | Unknown |
Synchronet IRCd | Yes | Yes / No | Yes | No / No | No / No | No / No | No | No | Unknown |
UnrealIRCd | yes / NO | Yes | Yes | Yes / No | Yes / third party module[59] | No | No | Third party module[60] | Yes |
WeIRCd | Partial | No / No | No | No / No | No / No | No | No | No | Yes |
|