Pin Me

A Comparison of IRC Daemons/Servers For Linux

written by: Pranav Thadeshwar•edited by: Lamar Stonecypher•updated: 5/20/2011

If you run a website or are part of a large community, you'll have wished that there was some way by which you could interact live with all the members. Forums are slow and messengers are 1-to-1. In this article, we look at Internet Relay Chat and how it can help you communicate with your community.

  • slide 1 of 5

    Building communities

    Whether you have a popular website or a group of people working on something, one of the most important things is communication. And while messengers and messenger conferences can be useful for certain purposes, they don't allow you to have a free-for-all chat room where anyone can join and talk with other people. Fortunately for us, IRC serves this purpose incredibly well. IRC is a shortened form of Internet Relay Chat, a place where people can connect and talk about anything under the sun. Networks and channels (chat rooms) are dedicated to various purposes, whether it's talking about movies, technical discussions, lolcats, or anything you can think about.

    Since the barrier to entry for hosting your own chat room is quite low, lots of communities have popped up for all sorts of purposes. While there are popular networks like EFNet or DALnet with tens or hundreds of servers linked together, some people still setup their own networks to have complete control. In this article, we will take a look at some popular IRC servers and how you can set them up. This article will get a bit technical, depending on your comfort with tcp/ip networking and working with large configuration files through the command line.

  • slide 2 of 5

    UnrealIRCd

    If you're looking for a feature-filled IRC server and have a fast server to boot, Unreal will be one of the most useful for you. With a vast number of features, and an equally large number of modules (addons), you can tweak this server to your heart's content. While there are a large number of IRC daemons (server applications) today, almost all of them are forks of other server applications. For example, UnrealIRCd was a fork of EliteIRCd. They then went on to add lots of features to the codebase to make Unreal what it is today. The new version of UnrealIRCd in development right now - 4.0, is a fork of another well-known server daemon/application, InspIRCd.

    UnrealIRCd runs on Windows, Linux and BSD (Unix) operating systems. You will need to download the corresponding archive for your platform. Linux and Unix archives will be source files which will have to be compiled manually before installing. The Windows archive is a pre-compiled binary which is to be installed directly. Helping you configure UnrealIRCd is beyond the scope of this article since the configuration file starts at almost 800 lines and can go up to 1500 lines depending on your configuration, but if you're comfortable with large configuration files and networking/ip-addressing, you should be good to go. The official docs are very good and will help you with whatever problems/queries you have.

    UnrealIRCd Website. (As of writing, this website is down. It should hopefully be up soon)

  • slide 3 of 5

    ircd-ratbox

    While not the most popular IRC daemon around, it's probably the one which is the most suited for large networks and lower resource usage. Running on a majority of the EFNet servers, ratbox has proven itself as one of the most stable IRCds around. While it doesn't have a number of features found in other IRCds, you can be sure that it will run well even on a moderately powerful server and a few hundred users. Going by size of the configuration file, ratbox has close to 1000 lines which makes it moderately easy to configure. Again, having knowledge about TCP/IP networking and ip-addressing is essential to running your own IRC server.

    ircd-ratbox Website.

  • slide 4 of 5

    InspIRCd

    Inspire IRCD, better known as InspIRCd is the second-to-most popular IRC daemon after Unreal. It owes this popularity to a modular approach. Depending on what modules you install and load, you can add/remove features without the main daemon getting larger and slower. Here is a comparison page given by InspIRCd developers so you can compare the features between them and other IRC daemons.

    If you were scared by the large configuration file for UnrealIRCd, InspIRCd is going to scare you even more. A sample configuration file with comments weighs in at a whopping 2300 lines. Add extra configuration to that and you're looking at close to 2500 lines of configuration. But once configured, InspIRCd is a tamed beast which can help your IRC network reach great heights. Proof of that is in the fact that UnrealIRCd will be using InspIRCd's codebase to create the new version of their own IRC daemon.

    Inspire IRCd (InspIRCd) Website.

  • slide 5 of 5

    Conclusion

    While nowhere near an exhaustive list of all the IRCds around, this small list should help you choose one from the most popular daemons available today. To choose between other IRC daemons, check out this page on Wikipedia which compares and lists all the features found in different IRC daemons. Choose one, go to its respective site, and download the archive to check it out. If you have a spare Linux box lying around and you are what most people would call "nerdy," it'll be a lot of fun to configure your own IRC server. And once you're able to configure one of the daemons to run the way you want it, it should be pretty easy trying out other IRCds. If you run a popular website and need a way to attract permanent membership and create new friendships among your users, no better way than to run an IRC server where your visitors can interact and build communities.