What is Ctrlproxy?

Ctrlproxy is an IRC server with multiserver support. It runs as a daemon and connects to a number of IRC servers, then lets you connect from a workstation and work as the user who is logged in to the IRC server. You can also host your own IRC application with very little cost using cheap hosting services today. See some recommendations here, here, and here.

After you disconnect, it maintains the connection to the server. It acts like any normal IRC server, so you can use any IRC client to connect to it. It supports multiple client connections to one IRC server (under the same nick), so you can connect to IRC using your IRC nick, even if you have an IRC session open somewhere else.

It supports logging (in the same format as the irssi IRC client), password authentication, and ctcp (in case no clients are connected).


Background

Ctrlproxy first took form in the early 2000s and went through an initially turbulent existence. After being scrapped and rewritten entirely over the first few revisions, version 3 was released as a more or less stable offering.

Even then, much experimentation went on and at various times the build was subject to varying configurations, implementation languages, file formats and even control systems. It was truly an extraordinary journey.

You can find out more about the release history and the requirements to run this project here.


Features

  • Connect to one server with many clients under one nick transparently
  • Connect to multiple servers using only one process
  • CTCP support when no client is attached
  • irssi-style logging support
  • Transparent detaching and attaching of clients
  • Password support
  • Auto-Away support
  • Backlog replication. Replicate from last client quit or last line said by user
  • Keeping track of number of times a certain user uses a certain pattern
  • Direct, inetd-style interfacing with local IRC servers (such as BitlBee)
  • Responses to queries are only sent to the originating client of the query
  • SSL support
  • Flood protection
  • Logging in a user-specified format
  • IPv6 support

If you are interested to find out more, here is a comparison of ctrlproxy with other IRC proxies/bouncers.


Resources