-
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. [edit] Servers - | IRC daemon | Creator/network | Basis | Programming language | First public release | Latest version (numeric 351) | Software license | Website | | Asuka[1] | QuakeNet Dev Team | ircu | C | ? | 1.2.1 (now replaced by snircd) | GPL | ? | | Austhex | AustNet Development | ircu2.9 | C, Scheme | ? | ? (now replaced by inspircd) | GPL | ? | | Bahamut[2] | DALnet | DreamForge, IRCD-Hybrid | C | 1999[3] | bahamut-1.8.6 | GPL | [1] | | bIRCd[4] | DAMnet | DreamForge | C | 1999 | bIRCd-2.1.0rc4 | GPL | [2] | | beware ircd[5] | beware | (from scratch) | Delphi | 2002? | ? (now unmaintained) | GPL | [3] | | Charybdis[6] | nenolod, jilles, dwr, gxti | ircd-ratbox, IRCD-Hybrid, ircu, ShadowIRCd | C | 2005 | charybdis-3.1.0 | GPL/BSD | ? | | ConferenceRoom | WebMaster Incorporated | (from scratch) | C++ | 1996 | ConferenceRoom/3.5 | Proprietary | [4] | | csircd | Comstud | (from scratch) | C | 1998 | csircd-1.14 | GPL | ? | | dancer-ircd | freenode | Hybrid 6 | C | 1999 | ? (replaced by hyperion) | GPL | ? | | DreamForge | DALnet | irc2.8.mu3 | C | 1994 (dal), 1997? (df) | ? (replaced by bahamut) | GPL | ? | | Faerion IRC Server[7] | vhex | DreamForge | C, C++ | 2003 | 1.17.7.1[8] | GPL | [5] | | hyperion[9] | freenode | dancer-ircd 1.0.35+pre2 | C | 2005 | ? (to be replaced by ircd-seven) | GPL | [6] | | InspIRCd [10] | InspIRCd Development Team | (from scratch) | C++ | 2002 | 1.2.1[11] | GPL | [7] | | ignitionServer[12] | The Ignition Project | Pure-IRCD (VB6 version) | Visual Basic | 2004 | ignitionServer-0.3.6-P1[13] | GPL[14] | [8] | | IRCd[15] | Jarkko Oikarinen, IRCnet[16] | (from scratch) | C[17] | 1988 | 2.95 | GPL | [9] | | IRCD-Hybrid | Hybrid Development Team, EFnet | irc2.8 | C | 1997 | 7.2.3 | GPL | ? | | ircd-ratbox | Aaron Sethman, Lee Hardy, EFnet | Hybrid 7-rc1 | C | 2002 | ircd-ratbox-3.0.0 | GPL | [10] | | ircd-seven | freenode | charybdis 3.1.x/trunk | C | — | in development | GPL | ? | | ircu[18] | Undernet Coder Committee | irc2.7[19] | C[20] | 1991 | u2.10.12.12 | GPL | ? | | IRCXpro Server | IRCXpro, Paul Heinlein | IRCPlus | Visual Basic | 2002 | 1.2 (build 1572) (now replaced by OfficeIRC) | Proprietary | ? | | ithildin[21] | Chip Norkus | (from scratch) | C | 2006 | 1.1[22] | BSD[23] | [11] | | Nefarious IRCu | Evilnet Development, AfterNET | ircu2 | C | 2004 | u2.10.11.07+Nefarious(1.2.0)+[2212 2008-08-03] | GPL | [12] | | ngIRCd[24] | Alex Barton | (from scratch) | C | 2001[citation needed] | ngircd-14.1[25] | GPL | [13] | | OfficeIRC Server | Office IRC Inc, Paul Heinlein | (from scratch) | VB.net | 2006 | 2.2 | Proprietary | [14] | | pircd | Jay F Kominek | (from scratch) | Perl | 1999 | ? (now unmaintained) | Open Source (custom) | [15] | | PleXusIRCd | Rizon, thaprince, static | Hybrid 7.2.3 | C | 2005 | hybrid-7.2.3+plexus-3.0.1(20081028_0-520) | GPL | [16] | | pureIRCd | Dennis Fisch aka Diligent | (from scratch) | C | 2002 | ? | GPL | ? | | PTlink IRC server | PTlink IRC Software | Hybrid 6 | C | 2001 (v.6) | 5.4.0 (now unmaintained) | GPL | [17] | | QuakeIRCd | QuakeIRCd Team, Tiburon, blackcomb | UnrealIRCd | C | 2003 (v1.1) | ? (now unmaintained) | GPL | [18] | | RockIRCd[26] | Mike Chambers | (from scratch) | QuickBASIC[27] | 2009 | 1.0.0-testing | GPL | [19] | | ShadowIRCd[28] | dwr, Eko, jdhore, jilles, nenolod | Charybdis[citation needed] | C | 2003 | shadowircd-6.0.0pre4 | GPL | [20] | | snircd | QuakeNet | IRCd[29] | C[29] | ? | 1.3.4a[30] | GPL[29] | [21] | | solid-ircd | Toshi Morita, Juan Baez | Bahamut | C | 2004[31] | solid-ircd 3.4.8 | GPL | [22] | | SorIrcd | SorceryNet | dal4.4.10 and irc2.8.mu3 | C | 1996 | ? (replaced by Charybdis) | GPL | [23] | | Synchronet IRCd[32] | Randy E. Sommerfeld | (from scratch) | JavaScript | 2003 | SynchronetIRCd-1.3a(1.151) | GPL | ? | | synIRCd | Nathan (nate) Bishop | (from scratch) | C++ | - | In Development[33] | GPL | [24] | | TR-IRCD [34] | Yusuf Iskenderoglu, Ekim Engin, Dimitris Ginosatiris, hybridus, Maksut Cagil, burak | Hybrid 7 and Bahamut | C | ? | ? | GPL | [25] | | UltimateIRCd | ShadowRealm Creations | DreamForge 2.8 | C | 2001 | 3.0.2 [35] (now unmaintained) | GPL | [26] | | UnrealIRCd [36] | UnrealIRCd Team | EliteIRCd (potvin)[37] | C | 1999 | Unreal3.2.8.1[38] | GPL | [27] | | Viagra IRCd[39] | Chris Schiffner | Titan | C | 2003 | 1.3.3 (now unmaintained) | GPL | [28] | | WeIRCd | Eloxoph IRC Network[40] | (from scratch)[40] | C[40] | 2007[41] | WeIRCd 0.7.2[42] | GPL[43] | [29] | [edit] Operating system support 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 | MS-DOS | Mac OS X | Linux | BSD | Solaris | HP-UX | AIX | select() | poll() | epoll[44] | kqueue[45] | RT signals[46] | /dev/poll | Windows IOCP | Solaris IOCP | | Bahamut | No | No | Yes | Yes | Yes | Yes | ? | ? | Yes | Yes | Yes | Yes | No | Yes | No | No | | bIRCd | Yes | No | ? | Yes | Yes | Yes | Yes | ? | 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[47] | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes[citation needed] | Yes | Yes | Yes | Yes | No | No | Yes | Yes | | IRCD | No | 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 | ? | ? | ? | Yes | Yes | No | Yes | No | No | No | No | | Nefarious IRCu | Yes | No | Yes | Yes | Yes | Yes | Yes | ? | 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 | ? | ? | No | No | No | No | Yes | No | | PleXusIRCd | Yes | 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 | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | | snircd | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | | solid-ircd | No | No | Yes | Yes | Yes | Yes | ? | ? | Yes | Yes | Yes | Yes | No | Yes | No | No | | Synchronet IRCd | Yes | No | Yes | Yes | Yes | Yes | ? | ? | Yes | Yes | Yes | Yes | No | Yes | No | No | | synIRCd | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | | UnrealIRCd | Yes | No | Yes | Yes | Yes | Yes | ? | ? | Yes | No | No | No | No | No | No | No | | WeIRCd | Yes[40] | No | Yes[40] | Yes[40] | Yes[40] | ? | ? | ? | Yes[43] | No | No | No | No | No | No | No | [edit] Technology 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 | No | No | No | No | 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 | | 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[48] | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | TS6 based Spanning Tree, proprietary | | IRCD | No | No | Yes | No | No | Yes | No | No | No | No | No | RFC 1459 and RFC 2813 with SID/UID | | 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 | No | No | Yes | No | No | No | No | P10 with extensions | | ngIRCd | No | No | Yes | No | No | Yes | No | No | No | No | No | RFC 1459 and RFC 2813 | | OfficeIRC Server | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | DreamForge/UnrealIRCd compatible | | PleXusIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | ? | 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 | RFC 1459 without linking | | ShadowIRCd | Yes | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | TS6 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[49] | No | Only on Unix systems | No | No | No | Yes | Yes (module) | No | No | No | No | [edit] Features IRC server features, mostly extensions to RFC 1459. Probably also implementations of RFC 2810, RFC 2811, RFC 2812, RFC 2813, and possibly IRCX. - +channels (In early IRCds, these were simply named channels. At least one modern IRCd (IRCD) uses the + prefix for modeless channels, ie no chanops and channel mode forced to +nt. This is described in RFC 2811.)
- #channels ("+channels" were later replaced with "#channels" in version 2.7, numeric channels were removed entirely and channel bans (mode +b) were implemented.)
- &channels (irc2.8, those that exist only on the current server, rather than the entire network)
- !channels (irc2.10, those that are theoretically safe from suffering from the many ways that a user could exploit a channel by "riding a netsplit"; IRCds using timestamping provide (most of) this functionality on #channels)
- %#channels (#channels whose name are in UTF-8 for IRCX)
- %&channels (&channels whose name are in UTF-8 for IRCX)
- %!channels (!channels whose name are in UTF-8 for IRCX)
| IRC daemon | Channel Types | Halfop Support (+h %) | Admin/Protect Support (+a/+u &/!/*) | Founder/Owner Support (+q ~/.) | Operator Prefixing[50] | Advanced Operator ACL | Operator "Levels"[51] | vHost via i:line (or equivalent) | i18n Nicknames | 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 | via 3.1 privilege system | Yes | No | No | | ConferenceRoom | # & | No | No | Yes | No | Yes | Yes | Yes | Partial | Partial | | InspIRCd | # | Yes | Yes | Yes | Module | Yes | Module | Yes | Module | MySQL, SQLite & PostgreSQL: Authorization, Services Integration, Logging, Operaccess | | IRCD | # & ! + | 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 | ? | Yes | ? | No | | pureIRCd | # | No | No | ? | ? | ? | ? | ? | ? | ? | | RockIRCd | # | No | Yes | Yes | ? | ? | Yes | No | ? | No | | ShadowIRCd | # & | 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 | No | No | No | iso8859-1/2/7/8-I/9/16, windows-1250/1251, Multibyte | No | | 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 | | Bahamut | Yes | Yes / No | Yes | No / No | No / No | No | No | No | | bIRCd | 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 | | InspIRCd | Yes | Yes / Yes | Yes | Yes / Yes | Yes / Yes | Yes | Yes | Yes | | IRCD | ? | ? / ? | ? | ? / ? | ? / ? | ? | ? | ? | | ircd-ratbox | Yes | No / No | No | No / No | No / No | No | No | No | | ircu | Yes | ? / ? | ? | ? / ? | ? / ? | ? | ? | No | | ithildin | Module | No / No | No | No / No | No / No | No | No | ? | | Nefarious IRCu | Yes | No / No | No | No / No | No / No | No | No | Yes | | ngIRCd | No | No / No | No | No / No | No / No | No | No | No | | OfficeIRC Server | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | | PleXusIRCd | Yes | No / No | No | No / No | No / No | No | No | ? | | pureIRCd | ? | ? / ? | ? | ? / ? | ? / ? | ? | ? | ? | | RockIRCd | No | Yes / No | No | No | No | No | No | No | | ShadowIRCd | Yes | No / No | Yes | No / No | No / No | Yes | Yes | Yes | | solid-ircd | Yes | Yes / No | Yes | No / No | No / No | No | No | No | | Synchronet IRCd | Yes | Yes / No | Yes | No / No | No / No | No / No | No | No | | UnrealIRCd | No | Yes | Yes | Yes / No | Yes / No | No | No | Third party module | | WeIRCd | Partial | No / No | No | No / No | No / No | No | No | No | [edit] See also [edit] External links |