Tip of the day: To upgrade UnrealIRCd on *NIX simply run: ./unrealircd upgrade

Linking servers (genlinkblock)

From UnrealIRCd documentation wiki
Jump to navigation Jump to search

If you are linking two UnrealIRCd 6 servers *NIX (not on Windows) then linking is very easy. Using ./unrealircd genlinkblock all configuration is done for you. Follow the instructions below.

NOTE: The process below is quick and easy and mostly automatic. If you don't want this and prefer to learn everything about linking then see Tutorial: Linking servers.

On side A

Run the command ./unrealircd genlinkblock on the shell of server A (irc1.example.org in this case):

[email protected]:~/unrealircd$ ./unrealircd genlinkblock

Add the following link block to the unrealircd.conf on the OTHER side of the link
(so NOT in the unrealircd.conf on THIS machine). Here it is, just copy-paste:
################################################################################
link irc1.example.org {
    incoming {
        mask *;
    }
    outgoing {
        hostname irc1.example.org;
        port 6900;
        options { tls; autoconnect; }
    }
    password "..." { spkifp; }
    class servers;
}
################################################################################

Do what it says and copy-paste the link block to server B (so the other server!)

NOTE: If the hostname in link::outgoing::hostname (hostname irc1.example.org;) does not actually exist in your case (eg: because you have not bought or registered the domain irc1.example.org yet), then you may have to modify it to be the IP address of server A, like: hostname 198.51.100.1;

On side B

Run the same command on the shell of server B:

[email protected]:~/unrealircd$ ./unrealircd genlinkblock

Add the following link block to the unrealircd.conf on the OTHER side of the link
(so NOT in the unrealircd.conf on THIS machine). Here it is, just copy-paste:
################################################################################
link irc2.example.org {
    incoming {
        mask *;
    }
    outgoing {
        hostname irc2.example.org;
        port 6900;
        options { tls; autoconnect; }
    }
    password "..." { spkifp; }
    class servers;
}
################################################################################

And copy-paste the outputted link block to server A (so to the server from the previous step).

NOTE: Again, here too. If the hostname in link::outgoing::hostname (hostname irc2.example.org;) does not actually exist in your case (eg: because you have not bought or registered the domain yet), then you may have to modify it to be the IP address of server B, like: hostname 198.51.100.2;

Rehash

Now REHASH both servers.

Link!

The servers should now automatically link to each other.

Do you see any errors? Or are the servers not linked? Check out Troubleshooting: linking servers

You can always tell UnrealIRCd to try to link the servers right now by executing (as IRCOp) /CONNECT name.of.other.server. This can be used if you disabled autoconnect, or simply if you don't want to wait ;)

Successfully linked your two servers? Now that you have a multi-server network, you may want to read about Distributing user load and doing server maintenance.