Welcome to
What is

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, modern and lightweight. It provides a tunable number of features through the use of an advanced but well documented module system. By keeping core functionality to a minimum we hope to increase the stability, security and speed of InspIRCd while also making it customisable to the needs of many different users.

And after all it’s free and open source.

or take a look at our installation guide followed by our configuration guide

InspIRCd v3.13.0 released!

Posted by ~Sadie on April 29, 2022

InspIRCd v3.13.0 is now available, download it from the releases page. The most notable changes in this release are: Added <override:timeout> to allow automatically removing user mode O (override) after a defined time period. Changed specifying a DH parameter file in the ssl_gnutls module to be optional on GnuTLS 3.6. Changed specifying a DH parameter file in the ssl_openssl module to be optional on OpenSSL 3.0. Fixed building the NSIS installer on Windows. Fixed not parsing the constraint field properly for multi-constraint /LIST requests. Fixed the o field in /WHO returning InspIRCd prefix ranks instead of WHOX op levels. Fixed the privdeaf module overriding other private message checks.

InspIRCd v3.12.0 released!

Posted by ~Sadie on December 31, 2021

InspIRCd v3.12.0 is now available, download it from the releases page. The most notable changes in this release are: Added support for retrieving client TLS (SSL) certificate fingerprints from WebIRC gateways. Added the inspircd.org/account-id tag to expose immutable account identifiers to users. Fixed automatic bans and xlines on shared providers banning the entire provider. Fixed looking up server IPv4 addresses when the server has one or more IPv6 address. Fixed reading WebSocket proxy headers when the IRC server is behind multiple reverse proxies. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd v3.11.0 released!

Posted by ~Sadie on August 27, 2021

InspIRCd v3.11.0 is now available, download it from the releases page. The most notable changes in this release are: Added <connectban:bootwait> to allow delaying connectban until the specified time period has passed after boot. Added <connectban:splitwait> to allow delaying connectban until the specified time period has passed after a network partition. Added <gnutls:onrehash>, <mbedtls:onrehash>, and <openssl:onrehash> to allow reloading TLS (SSL) profiles on rehash. Added support for setting TLS 1.3+ ciphersuites in ssl_openssl. Changed <oper:autologin> to accept a value of if-host-match to allow autologin to only proceed if the user’s hostname matches the value in <oper:host>. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd v3.10.0 released!

Posted by ~Sadie on May 14, 2021

InspIRCd v3.10.0 is now available, download it from the releases page. The most notable changes in this release are: Added support for multiple hosts in <connect:allow> and <connect:deny>. Added support for per-DNSBL timeouts and raised the default for torexit.dan.me.uk to 10 seconds. Fixed an memory disclosure vulnerability in the core. Fixed unknown DNS record types preventing the retrieval of other DNS records. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd v3.9.0 released!

Posted by ~Sadie on February 26, 2021

InspIRCd v3.9.0 is now available, download it from the releases page. The most notable changes in this release are: Added <chanhistory:enableumode> to allow enabling user mode N (nohistory) which allows users to opt-out of receiving channel history on join. Added extbans to the S2S protocol to allow services to validate bans easier. Added the <shun:allowconnect> option to allow configuring whether shuns should only be applied to users who are fully connected to the server. Fixed <class:snomask> not being parsed correctly when a type has multiple oper classes. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd binary packages

Posted by ~Sadie on December 09, 2020

Given the popularity of our existing CentOS, Debian, and Ubuntu binary packages we are looking into shipping support for more platforms. If you use a platform which supports binary packages that does not currently have an official InspIRCd package then please open an issue here.

InspIRCd v3.8.0 released!

Posted by ~Sadie on October 30, 2020

InspIRCd v3.8.0 is now available, download it from the releases page. The most notable changes within this release are: Added <cban:glob> to allow using glob matches within cbans. Added <joinflood:bootwait> to allow disengaging channel mode j (joinflood) when a server first starts up. Added <joinflood:splitwait> to allow disengaging channel mode j (joinflood) when a server splits from the network. Added <shun:allowtags> to allow configuring whether shunned users can send client-to-client tags. Added <shun:cleanedcommands> to allow configuring the commands that shunned users can run but that will be censored. Added support for the Argon2 key derivation function. Fixed disconnecting users who try to enable user mode x (cloak) when the md5 module is not loaded. Fixed xlines not being rechecked when a user’s real hostname changes. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd v3.7.0 released!

Posted by ~Sadie on July 31, 2020

InspIRCd v3.7.0 is now available, download it from the releases page. This release contains a few new features but is mostly bug fixes. Most notably: Added <botmode:forcenotice> to allow forcing bots to use NOTICEs instead of PRIVMSGs. Added support for disabling the creation/expiry notices sent to channel operators by the timedbans module. Fixed /SVSHOLD sending a global snotice instead of a local one. Fixed shuns not being applied correctly. Fixed the <class:dnsbl> option not matching marked DNSBL users. Fixed the <hostchange:ports> option never matching users. Fixed WebSocket users not being detected as using a secure connection when they are. No breaking configuration changes have been made since the v3.0.0 release but if you are upgrading from v2 please consult our list of config changes in v3.

InspIRCd v2.0 maintenance schedule updated

Posted by ~Sadie on May 20, 2020

In a few days InspIRCd v2 was planned to reach the end of its life. However, as many things have been suspended for a few months due to COVID-19 and will likely remain suspended for a few more we are extending security fixes and support for v2 to the end of 2020. Please do not consider this an excuse to push off upgrading unless you really have to though. We will not be extending this date again. If you are an upgrading v2 user please consult our list of config changes in v3 on the docs site for information on how to upgrade to v3.