IRCd 2.0 Upgrade

From MIXXnet Wiki


MIXXnet is currently planning some major upgrades to our IRC server software. This article will outline our upgrade plans, testnet information, new features, and required actions by users as part of this upgrade.

The upgrades were completed as scheduled on 2011-03-15.

If you have any questions about this upgrade, please ask in #help and we will be glad to answer them.

New Features

There are many improvements under the hood as well as several new features that will be available as part of this upgrade. A short list of user-visible new features is below:

  • Extended Bans
  • Channel history mode - Channel mode "+H X:T" to replay last X lines to new users joining (T = max time to keep buffer)
  • Delay message mode - Channel mode "+d X" to require joiners to wait X seconds before sending to channel
  • Exempt ops mode - Channel mode +X; per-channel list of modes that do not enforce their limits on channel ops
  • Timed invites - Have invites expire after a set amount of time (/invite user #chan 60s)
  • IPv6 access will be restored as a software bug in the old IRCd version prevented us from offering IPv6

Switching Over

The switchover process itself will be quick with very little downtime. Less than a minute of complete downtime is expected while we restart servers with the new version. All services data (NickServ/ChanServ/HostServ/BotServ/MemoServ) will be carried over to the new version, however certain channel modes cannot be preserved across the upgrade.

Required User Actions

Due to the two major versions we are upgrading across, linking the old version to the new version to preserve channel modes/bans/exceptions is not possible. Channel operators will need to take a few steps in conjunction with this upgrade:

  • Note channel bans and re-apply them on the new server version. If you use ChanServ's AKICK or your own channel bot to manage your channel bans you will not need to do this, however if you use channel mode +b (or +e) you will need to make a list of channel bans and reapply them. You can get a channel's banlist by typing "/mode #channel +b".
  • Re-apply channel modes like keys (+k), limits and redirects (+l and +L), invite only (+i), secret (+s), private (+p), etc. This can also be done with ChanServ by setting MLOCK for your modes on the current production network.

Manually performing these tasks should not be required when upgrading in the future as the IRCd now supports backwards linking to previous versions which would transfer this data automatically.

Test Network

A fully functional test network is currently up and running, and we invite interested users to connect, test things out, and let us know of any issues so they can be addressed before the upgrade is performed.

You can connect to the test network now using the following info:

Ports: 6659 (plain text), 6699 (SSL)

You must use one of the above two ports to get to the testnet; any other ports may bring you to the current network or not work at all.

Please keep in mind that this is a test network and we may need to make modifications which could require us to restart servers or services.