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.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.

InspIRCd v3.6.0 released!

Posted by ~Sadie on April 24, 2020

InspIRCd v3.6.0 is now available, download it from the releases page. This release fixes a crash bug in the pgsql module as well as adding several minor features. Most notably: Added <class:snomasks> to allow configuring the snomasks that a server operator can use. Added support for the IRCv3 SETNAME specification. Added support for using environment variables in the server configuration using the &env.FOO; syntax. Fixed a crash in the pgsql module when connecting to a server fails. Fixed a bug where previously changed display hostnames would be reset when a hostname lookup finishes. Improved the error message shown when trying to load a module which is too old or too new for the current version. 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.29 released!

Posted by ~Sadie on April 24, 2020

InspIRCd v2.0.29 is now available, download it from the releases page. This release fixes a crash bug in the pgsql module. As mentioned previously InspIRCd v2 is now deprecated and will no longer receive security updates after 2020-05-31 2020-12-31. You should strongly consider updating to the v3 branch as soon as possible. Documentation on how to do so is available on the docs site.