Internet Relay Chat

Tuesday, July 17, 2007

How to link two servers with unrealircd?

Server One
Open up your unrealircd.conf file in your favourite text editor (pico -w unrealircd.conf if you're using SSH) and go to the listen block (normally starting around line 383). Add this line:

listen serveroneip:12345
{
options
{
serversonly;
};
};

You must replace your ip with the IP that your IRCd provider gave you. This line tells UnrealIRCd to listen for connections from servers only (no clients) on port 12345. As a rule, I like to use a 5 digit port somewhere between 10000 and 65535 (for this tutorial I will use port 12345).

Now we'll need to edit your link block. This is the block after the block that we just put our listen information into; about 40 lines down. This is where we tell UnrealIRCd that another server will be connecting, and that UnrealIRCd should authorize the connection. Add the following block:

link two.server.com
{
username *;
hostname servertwoip;
bind-ip *;
port 12345;
leaf *;
password-connect "anything10";
password-receive "anything20";
class servers;
options {
autoconnect;
};

Great, now lets explain what each part means. The top, after the word link, just defines the hostname of the server you're trying to link; this will displayed if you type /map, /links or if you /whois somebody on that server. After username, you'll find the port, this must be the same as what we specified in the listen block above. The next line down can either be 'hub' or 'leaf', since we're editing the server one's config file, and server one is the hub, we'll put server two as a leaf. Below that line, we have the two passwords; connecting and receiving. Normally these two passwords are the same, but we'll make them different for this tutorial just in case you'd like to. Below we define the class, as we're linking a server we'll keep it at that, and we'll tell UnrealIRCd to try to autoconnect to this server. You don't have to include this option, but I find it useful.

Start your server, check it works ... and now on to server two!

Server Two
Open up your unrealircd.conf file in your favourite text editor (pico -w unrealircd.conf if you're using SSH) and go to the listen block (normally starting around line 383). Add this line:

listen servertwoip:12345
{
options
{
serversonly;
};
};

You must replace yourip with the IP that your IRCd provider gave you. This line tells UnrealIRCd to listen for connections from servers only (no clients) on port 12345. As a rule, I like to use a 5 digit port somewhere between 10000 and 65535 (for this tutorial I will use port 12345).

Now we'll need to edit your link block. This is the block after the block that we just put our listen information into; about 40 lines down. This is where we tell UnrealIRCd that another server will be connecting, and that UnrealIRCd should authorize the connection. Add the following block:

link one.server.com
{
username *;
hostname serveroneip;
bind-ip *;
port 12345;
hub *;
password-connect "anything20";
password-receive "anything10";
class servers;
options {
autoconnect;
};
};

Most of this block is the same for the block in server one, but there are a few differences. On the first line, we define the hostname of the hub server, server one in this case. On the hostname line, we put the IP address of server one, as this is the IP address that server two will try to connect to. On the port line, we put the same port that we have defined in the listen blocks on both server one and server two, in this case 12345. On the next line, you'll noticed we've changed 'leaf', what we had on server one, to 'hub'. This is because we're connecting to server one this time, which is a hub. When we wrote the block on server one, we were connecting to server two, which is a leaf server. Below this line, we have the two password lines, you'll notice that the passwords are now around the other way, as the password-connect line on server two communicates with the password-receive line on server one. Once again, we have the autoconnect option enabled just for ease of use.

Start this server ... connect to the hub, type /map and make sure both servers are displayed there.

That's all done! You now have a true IRC network.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home