How to link UnrealIRCd with Anope Services

November 8, 2017

Apparently there is a lot of confusion when it comes to linking Unreal and Anope together. Surprisingly this is a very simple task.

What’s required to follow this “tutorial” if you will is a bit of knowledge that you as a Server Admin should already have:

1> basic understanding of editing files in your OS.
2> basic understanding of how to start applications in your OS.
3> knowledge of /squit and /connect
4> In depth knowledge of IRC and how it works is recommended.
5> the patience required to actually read this.

ok, lets begin by understanding that Anope is connected to the network as a trusted connection as is any other ircd. Where Services is different is it has some “super powers”, these special permissions are granted via ulines. ulines are case sensitive and must exist on every server BEFORE services connects! This is very important. If I have already confused you, stop reading and consult your IRCd documentation of ulines, aka U:Lines aka ulines block, super block or trusted block.

So we can see the relationship between the components better I have elected to color code each requirement so that you can see how everything matches up.

Now down to business:

1> services is going to be named services.sisrv.net
2> our ircd is unreal-4
3> our services are anope 2
4> our services IP is 1.2.3.4
5> our server IP is 2.3.4.5
6> our port is 7070 { any unused port between 1025 and 65535 may be used for linking services. }
7> our numeric is 250 – This MUST be different to the other servers on the network!!!!!
8> our password is the word ‘password‘ (without the quotes)

unrealircd.conf
————————-

listen 2.3.4.5:7070;

link services.sisrv.net {
incoming {
mask *;
};
outgoing {
bind-ip *;
hostname 1.2.3.4;
port 7070;
options { ssl; };
};
password “Services Link Password”;
class servers;
};

ulines { services.sisrv.net; };

set { services-server “services.sisrv.net“; };

include “aliases/anope.conf”;

———–
services.conf

module
{
name = “unreal4”
}
Numeric 250

RemoteServer 2.3.4.5 7070password

ServerName “services.sisrv.net

 

uplink
{

host = “2.3.4.5″
ipv6 = no
ssl = yes
port = 7070
password = “Services Link Password”
}

P.S. you can add more than one uplink block to your services.conf, in case one server goes down, your services will link to your next server, and also you have to add your services link block to your second unrealircd.conf.