Features

If you were just looking for a small list of features then have a look at the About UnrealIRCd article instead.

Below we will explain a number of features in-depth. If you are still in the process of getting your UnrealIRCd server up and running then we recommend you to only quickly glance over them. Once your server is up and running you may want to read this section more in depth, or just use it as a reference when you want to find out more about a feature.

= Modules =

= Authentication = UnrealIRCd allows users to authenticate to their services account before they are online. This also means you can require authentication so unauthenticated users cannot enter the server. This can be done selectively (eg: only certain IP addresses, only TOR proxy users, etc.) or simply for everyone (if you want a closed chat server).

Read more on authentication here

= SSL/TLS =

= IPv6 =

= Security features = The Security article explains the many security features that UnrealIRCd has. Examples are: DNS Blacklists, anti-flood features, spam filtering, limiting of rates (eg msgs per minute, joins per minute) and commands that users may use (even differentiating between certain groups of users by use of security groups or reputation score), etc. etc. It also contains a section on how to deal with DoS and DDoS attacks.

= Cloaking = Cloaking is a security feature which hides the IP address and hostname of users on IRC.

With cloaking turned off, a join on IRC looks like this: *** User (~none@d5142341.example.net) has joined #test With cloaking turned on, users will see: *** User (~none@rox-2DCA3201.example.net) has joined #test The first part of the host is partially hidden or "cloaked". Other people won't see your real hostname or IP address. This security feature is useful to prevent users from flooding/attacking each other.

For a more detailed explanation and the possible settings, see Cloaking.

= Remote includes = Remote includes are a great way of sharing your configuration settings between servers, ideal for multi-server IRC networks. You simply put your (shared) configuration files on a secure location, like a trusted web server and IRC servers will load it from there when they startup or /REHASH. Remote includes support https and many other protocols.

Read more on remote includes here

= Spamfilter =

= JSON-RPC = UnrealIRCd's JSON-RPC API allows remote endpoints to query and control UnrealIRCd. The UnrealIRCd admin webpanel uses it and it could also used for statistics or by other programs.

= WebSocket Support = UnrealIRCd 4.0.10 and later support the WebSocket protocol (ws:// and wss://). This allows Javascript (internet browsers) to connect directly to IRC, without the need of intermediate 'gateways'. (Read more)

= WebIRC Support = UnrealIRCd supports the WEBIRC / CGIIRC protocol. Similarly to WebSocket support (see above) this allows users to use an internet browser rather than a "real" IRC client and still make them show up on IRC with their real IP. If you want your users to be able to use Mibbit or IRCCloud then you need to configure this. (Read more)

= Authentication types =

= Aliases =

= IRCOps and special users = IRCOps are basically the administrators of the IRC Server. You can define very precisely which rights to grant or deny to them in the Oper block with the rights defined in the Operclass block. We have also written an IRCOp guide which explains how to do everyday IRCOp tasks.

You can also give non-IRCOps more rights. For example, if you want to give trusted users/bots a higher "maximum channels per user" setting, or want to allow them to flood at a higher rate. See the Special users article.

= Snomasks =

= IRCOp commands =

= Extended bans =

= User modes =

= Channel modes =

= CIDR =

= Nick Character Sets =

= Helpop =