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.
This article is neither all-inclusive nor necessarily up-to-date, be warned.
IRC daemon | Creator/network | Basis | Programming language | First public release | Latest version (numeric 351) | Software license |
---|---|---|---|---|---|---|
Asuka[1] | QuakeNet Dev Team | ircu | C | Unknown | 1.2.1 (now replaced by snircd) | GPL |
Bahamut[2] | DALnet | DreamForge, IRCD-Hybrid | C | 1999[3] | bahamut-2.0.7 | GPL |
bIRCd[4] | DAMnet | DreamForge | C | 1999 | bIRCd-2.1.0rc4 | GPL |
beware ircd[5] | beware | from scratch | Delphi | Unknown | beware1.6 | GPL |
Charybdis[6] | atheme.org (nenolod, jilles, dwr, gxti) | ircd-ratbox, IRCD-Hybrid, ircu, ShadowIRCd | C | 2005 | charybdis-3.4.2 | GPL/BSD |
dancer-ircd | freenode | Hybrid 6 | C | 1999 | ? (replaced by hyperion) | GPL |
Elemental-IRCd[7] | [8] | ShadowIRCD | C | 2007 | 6.6.2 | GPL2 |
DreamForge | DALnet | irc2.8.mu3 | C | 1994 (dal), 1997? (df) | ? (replaced by bahamut) | GPL |
Faerion IRC Server[9] | vhex | DreamForge | C, C++ | 2003 | 1.17.7.1[10] | GPL |
FoxEye (ircd module) | Andriy Grytsenko | from scratch | C | 2011(draft), 2016(working) | 0.11.0 | GPL2 |
hyperion[11] | freenode | dancer-ircd 1.0.35+pre2 | C | 2005 | ? (replaced by ircd-seven) | GPL |
IgniteIRCd[12] | Lloyd Dilley | ircd-hybrid 6.3.1 | C | 2004 | 0.9.41 (now unmaintained) | GPL |
InspIRCd [13] | InspIRCd Development Team | from scratch | C++ | 2002 | 3.1.0[14] | GPL |
ignitionServer[15] | The Ignition Project | Pure-IRCD (VB6 version) | Visual Basic | 2004 | ignitionServer-0.3.6-P1[16] | GPL[17] |
IRCd[18] | Jarkko Oikarinen, IRCnet[19] | from scratch | C[20] | 1988 | 2.11.2[21] | GPL v1 |
ircd-hybrid[22] | ircd-hybrid Development Team,[23] Rizon, OFTC, EFnet | irc2.8[24] | C[24] | 1997[24] | 8.2.21[25] | GPL[26] |
ircd-ratbox | Aaron Sethman, Lee Hardy, EFnet | Hybrid 7-rc1 | C | 2002 | ircd-ratbox-3.0.10 | GPL |
ircd-seven | freenode | charybdis 3.1.x/trunk | C | — | stable | GPL |
ircu[27] | Undernet Coder Committee | irc2.7[28] | C[29] | 1991 | u2.10.12.14[27] | GPL |
ithildin[30] | Chip Norkus | from scratch | C | 2006 | 1.1[31] | BSD[32] |
miniircd[33] | Joel Rosdahl | from scratch | Python | 2003 | 1.3[34] | GPL |
Nefarious IRCu | Evilnet Development, AfterNET | ircu2.10.12.14 | C | 2004 | u2.10.12.14+Nefarious(2.0.0) | GPL |
ngIRCd[35] | Alex Barton | from scratch | C | 2001[36] | ngircd-24[37] | GPL |
OfficeIRC Server | Office IRC Inc, Paul Heinlein | from scratch | VB.NET | 2006 | 2.2 | Proprietary |
Oragono | Daniel Oaks, Oragono Contributors | Ergonomadic | Go | 2016 | 0.12.0 | MIT |
PleXusIRCd | Rizon, thaprince, static | Hybrid 7.2.3 | C | 2005 | hybrid-7.2.3+plexus-3.0.1(20090612_0-523) | GPL |
ProvisionIRCd[38] | Sirius, Y4kuzi | from scratch | Python3 | 2006 | 1.3 | GPL |
pureIRCd | Dennis Fisch aka Diligent | from scratch | C | 2002 | Unknown | GPL |
RockIRCd[39] | Mike Chambers | from scratch | QuickBASIC[40] | 2009 | 1.0.0-testing | GPL |
RubIRCd[41] | Lloyd Dilley | from scratch | Ruby | 2013 | 0.1a-maiden voyage | GPL |
ShadowIRCd[42] | Taros, jdhore, jilles, nenolod | Charybdis[42] | C | 2003 | 6.3.3 | GPL |
snircd | QuakeNet | ircu2.10.12[43] | C[43] | Unknown | 1.3.4a[1] | GPL[43] |
solid-ircd | Toshi Morita, Juan Baez,Gabriel Baez | Bahamut | C | 2004[44] | solid-ircd 3.4.8 | GPL |
Synchronet IRCd[45] | Randy E. Sommerfeld | from scratch | JavaScript | 2003 | SynchronetIRCd-1.3a(1.151) | GPL |
TR-IRCd [46] | Yusuf Iskenderoglu, Ekim Engin, Dimitris Ginosatiris, Maksut Cagil, Burak Cifter | Hybrid 7 and Bahamut | C | 1999 | 5.6.1 | GPL |
UltimateIRCd | ShadowRealm Creations | DreamForge 2.8 | C | 2001 | 3.0.2 [47] (now unmaintained) | GPL |
UnrealIRCd[48] | UnrealIRCd Team | EliteIRCd (potvin)[49] | C | 1999 | 4.2.3[50] | GPL |
Viagra IRCd[51] | Chris Schiffner | Titan | C | 2003 | 1.3.3 (now unmaintained) | GPL |
WeIRCd | Eloxoph IRC Network[52] | from scratch | C | 2007 | 0.8.2 (now unmaintained) | GPL |
Pocosi[53] | Chris Williams, Hinrik Örn Sigurðsson | POE::Component::Server::IRC[54] | Perl | 2003 | 0.02 (1.53 of POE::Component::Server::IRC) | Artistic |
The operating systems the daemons can run on without emulation; also supported I/O facilities for network sockets (see IRCd for further information).
IRC daemon | Windows | DOS | Mac OS | Linux | BSD | Solaris | HP-UX | AIX | select() | poll() | epoll[55] | kqueue[56] | threads | RT signals[57] | /dev/poll[58] | Windows IOCP[59] | Solaris IOCP[60] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Bahamut | No | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | No | No | Yes | No | No |
bIRCd | Yes | No | Unknown | Yes | Yes | Yes | Yes | Unknown | Yes | Yes | No | No | Unknown | No | No | No | No |
Charybdis | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes |
ConferenceRoom | Yes | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Unknown | No | Yes | Yes | No |
FoxEye ircd | No | No | Yes | Yes | Yes | Yes | Unknown | Unknown | No | Yes | No | No | Yes | No | No | No | No |
InspIRCd[61][62] | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Partial | No | Yes | Yes | Yes |
IRCD[63] | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No |
ircd-hybrid | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | No | No | Yes | No | No |
ircd-ratbox | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes |
ircu | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | No |
ithildin | No | No | No | Yes | Yes | Unknown | Unknown | Unknown | Yes | Yes | No | Yes | Unknown | No | No | No | No |
miniircd | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No |
Nefarious IRCu | No | No | Yes | Yes | Yes | Yes | Yes | Unknown | Yes | Yes | Yes | Yes | No | No | Yes | No | No |
ngIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | No |
OfficeIRC Server | Yes | No | Yes | Emulated | Yes | No | No | No | Unknown | Unknown | No | No | Unknown | No | No | Yes | No |
Oragono | Yes | No | Yes | Yes | Yes | Unknown | Unknown | No | No | Yes | No | No | No | No | No | No | No |
PleXusIRCd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Unknown | Yes | Yes | No | No |
pureIRCd | Yes | No | No | No | No | No | No | No | Yes | No | No | No | Unknown | No | No | No | No |
RockIRCd | No | Yes | No | No | No | No | No | No | No | No | No | No | Unknown | No | No | No | No |
RubIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No |
ShadowIRCd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes |
snircd | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Unknown | No | Yes | No | No |
solid-ircd | No | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | Unknown | No | Yes | No | No |
Synchronet IRCd | Yes | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | Unknown | No | Yes | No | No |
UnrealIRCd | Yes | No | Yes | Yes | Yes | Yes | Unknown | Unknown | Yes | Yes | Yes | Yes | No | No | No | No | No |
WeIRCd | Yes | No | Yes | Yes | Yes | Unknown | Unknown | Unknown | Yes | No | No | No | Unknown | 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 | SASL EXTERNAL support | Server protocol |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Bahamut | Yes | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | TS5 with extensions |
bIRCd | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | RFC 1459 and TSpre8 |
beware ircd | No | No | Yes | No | No | No | Yes | No | No | No | No | No | P10 |
Charybdis | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | TS6 with extensions |
ConferenceRoom | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Proprietary, binary |
FoxEye ircd | Yes | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | RFC2813 with extensions, split-free network |
InspIRCd | Yes[64] | Yes | Yes | Yes | Yes | Yes | Yes | Partial | Yes | Partial | Yes | Yes | custom[65] |
IRCD | No | No | Yes | No | No | Yes | No | No | No | No | No | No | RFC 2813 with IDs |
IRCD-Hybrid | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | TS6 |
ircd-ratbox | Yes | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | TS6 |
ircu | No | No | Yes | No | No | No | Yes | No | No | No | No | No | P10 |
ithildin | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Module-dependent |
miniircd | No | No | No | Yes | No | No | No | No | No | No | No | No | No |
Nefarious IRCu | No | No | 2.0+ | Yes | Yes | No | Yes | No | No | No | 2.0+ | 2.0+ | P10 with extensions |
ngIRCd | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | RFC 2813 |
OfficeIRC Server | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Compatible with DreamForge and UnrealIRCd |
Oragono | No | No | Yes | Yes | No | No | Yes | Yes | No | No | Yes | Yes | No |
PleXusIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | No | TS5/TS6 |
pureIRCd | No | 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 | No |
RubIRCd | Yes | No | Yes | Yes | No | No | Yes | Partial | No | No | No | No | TS5 with extensions |
ShadowIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | TS6 with extensions |
snircd | No | No | Yes | No | No | No | Yes | No | No | No | No | No | P10 with extensions |
solid-ircd | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | TS5 with extensions |
Synchronet IRCd | No | No | No | No | No | No | No | No | No | No | No | No | TS5 with extensions |
UnrealIRCd | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Module | No | Yes | Yes | DreamForge/TS5 with extensions |
WeIRCd | Partial | No | Yes | No | No | No | Yes | Yes (module) | No | 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[66] | Advanced operator ACL | Operator "levels"[67] | vHost via I-line (or equivalent) | i18n nicknames[68] | 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 |
FoxEye ircd | # & ! + | Module | No | No | No | No | No | Yes | Yes | No |
InspIRCd | # | Yes | Module | Module | Module | Yes | Module | Yes | Module | Old versions: MySQL, SQLite & PostgreSQL: Authorization, Services Integration, Logging, Operaccess |
IRCD | # & ! + | No | No | No | No | No | No | No | No | No |
IRCD-Hybrid | # | Yes | No | No | No | No | No | Yes | 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 | No |
miniircd | + # & ! | No | No | No | No | No | No | No | No | No |
Nefarious IRCu | # & | Yes | No | No | No | Yes | No | Yes | No | No |
ngIRCd | # & + | Yes[69] | Yes | Yes | No | No | No | No | No | No |
OfficeIRC Server | # %# & %& | No | Yes | Yes | Yes | Partial | Yes | Yes | Yes | Partial |
Oragono | # | Yes | Yes | Yes | No | Yes | Unknown | No | Yes | No |
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 |
RubIRCd | # | Yes | Yes | Yes | Yes | No | Yes | Yes | No | 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 | Yes | Third party module (netadmins)[70] | Yes, vhost block in conf | iso8859-1/2/7/8-I/9/16, windows-1250/1251, Multibyte | MySQL & PostgreSQL: Third party modules [71] |
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 | Yes |
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 | |
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 | No | No | No | No | No | No | No | No | No |
IRCD-Hybrid | Yes | No / No | No | No / No | No / No | No | No | No | Yes |
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 |
miniircd | No | No | No | No | No | No | No | No | No |
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 |
Oragono | Yes | Yes / No | Unknown | No | No | No | Unknown | No | Yes |
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 |
RubIRCd | No | No | No | No | No | No | No | No | No |
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 | Yes | Yes | Yes | Yes / third party module[72] | No | Yes | Yes | Yes |
WeIRCd | Partial | No / No | No | No / No | No / No | No | No | No | Yes |