Tip of the day: You can exempt users dynamically from server bans, spamfilter, maxperip and other restrictions with the ELINE command on IRC.
|
Running a mixed UnrealIRCd 3.2 and UnrealIRCd 4 network
You can link UnrealIRCd 4 servers to a 3.2.x network. You can do so if are in the process of upgrading your 3.2.x servers. There are however a few things that won't work properly.
NOTE: This article was written in 2015 when 3.2.x was still supported and 4.x was new. However, since January 1, 2017 UnrealIRCd 3.2.x is deprecated and should no longer be used at all!
As a shorthand, follow these simple rules:
- If your 3.2.x IRCd has SSL enabled then you must use version 3.2.10.3 or later
- If you have more than one UnrealIRCd server then be sure to link in UnrealIRCd 4 as a leaf. Your hub should be upgraded last.
- On UnrealIRCd 4 use /SPAMFILTER add -posix when adding spamfilters
- Change any admin-only channels from +A to +O
For more information, see below.
Why you may want to run a mixed network
Ideally you should run your network 100% with UnrealIRCd 4 servers. However, we don't live in an ideal world. Many people run an UnrealIRCd 3.2.x network and there are two reasons why you may be running a mixed UnrealIRCd 3.2.x - UnrealIRCd 4 network:
- You may wish to evaluate UnrealIRCd 4. You can do so on a separate test network but some may opt to link in an UnrealIRCd 4 test server to the existing 3.2.x live network.
- When you're ready to migrate your UnrealIRCd 3.2.x network to UnrealIRCd 4 you can choose to upgrade all servers at once, or you may go the slow route and upgrade servers once at a time.
In both cases you will run a mixed network for a limited amount of time (say, a couple of weeks).
Important recommendations
We don't recommend running a mixed network for many months because as long as you run a mixed UnrealIRCd 3.2.x - UnrealIRCd 4 network you'll encounter a number of issues. These can only be resolved by running a true 100% UnrealIRCd 4 network.
Also, as long as you run a mixed network, you should probably keep your hub at 3.2.x. Upgrade the hub only after all the other 3.2.x servers have been upgraded to UnrealIRCd 4.
We use the following colors to indicate the impact of issues that occur when running a mixed network:
No impact | Minimal impact | Important | Bad! |
Linking toplogy
As long as you run a mixed network your UnrealIRCd 4 server should link in as a leaf, and your hub should be upgraded to UnrealIRCd 4 at the end (last server to upgrade)
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
UnrealIRCd 4 as hub | UnrealIRCd 4 having a direct connection to multiple 3.2.x servers at the same time | Not recommended | Not recommended |
UnrealIRCd 4 as leaf | UnrealIRCd 4 linked to one 3.2.x server (the 3.2.x server may have multiple links) | OK | OK |
Linking issues
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
UnrealIRCd 3.2.x version | UnrealIRCd 4 requires your 3.2.x server to be 3.2.10.3 or higher (if using SSL) | Lower versions won't link (if using SSL) | Lower versions won't link (if using SSL) |
The fix is simple: use 3.2.10.3 or higher on the 3.2.x side.
Issues with opers & user modes
In UnrealIRCd 4 we no longer have "Network administrator" and other such oper levels. These have been replaced with "oper classes". See Changes in the Oper block. You can still use titles in /WHOIS like "Network administrator", but ircops no longer have special ircop level user modes associated with them: user modes O/a/A/N/C have been removed.
We also removed or renamed some other ircop-only user modes, such as 'v' (DCC rejection notices) to snomask 'D'.
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
Removed oper user modes | User modes O/a/A/N/C |
|
None |
Multiple swhois titles | With UnrealIRCd 4 you can add multiple swhois lines to /WHOIS | None | Only 1 line is shown if you /WHOIS an UnrealIRCd 4 user from an UnrealIRCd 3.2.x server |
Issues with channel modes
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
Channel mode 'A' (Admins only) | Removed in UnrealIRCd 4 because there are no oper levels anymore. Replaced with extended ban ~O. | Channel mode +A won't be shown and won't be effective on UnrealIRCd 4. Workaround: set your channel +O instead of +A so no regular users can join. | None |
Channel mode 'j' (jointhrottle) | Joinflooding is now controlled via set::anti-flood::join-flood and enabled by default. Channel mode has been removed. | Channel mode +j not shown, but no problem as anti-flood feature is still in place | None |
Channel mode 'u' (auditorium) | Hide non-chanops in nicklist. Almost never used. | Ineffective. Joins and nicklist shown as usual. | None |
Channel mode 'd'/'D' (delayjoin) | New channel mode in UnrealIRCd 4 to hide join/parts until someone actually speaks | None | Ineffective. Joins shown as usual. |
Issues with extended bans
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
ExtBan ~S (sslfp) | UnrealIRCd 4 introduces an extended ban ~S:xxxxxxxxx for ban exceptions (+e) and invex (+I) so you can exempt/invex users based on their SSL Fingerprint | None | Ban exception/invex won't be effective. User can't join/bypass. |
ExtBan ~O (operclass) | UnrealIRCd 4 introduces an extended ban ~O:operclassname so you can create channels which only one (or multiple) oper classes can only join. Example: +iI ~O:*admin* to create an admin-only channel. |
None | Ban exception/invex won't be effective. User can't join/bypass. |
Issues with spamfilters
In UnrealIRCd 4 we switched the default regex engine from 'POSIX' to 'PCRE2'. We also changed the syntax of the /SPAMFILTER command so you can specify which engine to use (/SPAMFILTER add -type..). See Upgrading from 3.2.x: Spamfilter
What | Description | Impact on UnrealIRCd 4 side | Impact on UnrealIRCd 3.2.x side |
---|---|---|---|
POSIX Spamfilters | Added with /SPAMFILTER add on UnrealIRCd 3.2.x. Added on UnrealIRCd4 with /SPAMFILTER add -posix | Effective | Effective |
PCRE2 Spamfilters | Added by UnrealIRCd 4 with /SPAMFILTER add -regex. Does not exist on UnrealIRCd 3.2.x. | Effective | Not effective. We therefore suggest to use /SPAMFILTER add -posix on UnrealIRCd 4 if you run a mixed network. |
Simple Spamfilters | Added by UnrealIRCd 4 with /SPAMFILTER add -simple. Does not exist on UnrealIRCd 3.2.x. | Effective | Not effective. We therefore suggest to use /SPAMFILTER add -posix on UnrealIRCd 4 if you run a mixed network. |
Other
There are many features UnrealIRCd 4 introduces, including increased SSL security, better linking, safer killing of (the right) users, etc. These will only be effective on a 100% UnrealIRCd 4 network.