UnrealIRCd common issues

Table of Content

configure: error: no acceptable C compiler found in $PATH

openssl binary and openssl development libraries

Unrealircd 4.0.1 failing during ./Config fix on FreeBSD

Linking - Rejecting link: clock is ... seconds behind/ahead.

Synch the server clock

Please build UnrealIRCd with --with-system-cares when enabling --enable-libcur

 

configure: error: no acceptable C compiler found in $PATH


Trys this:
apt-get install build-essential
apt-get install tcl tcl-dev

Apparently you do not have both the openssl binary and openssl development libraries installed.


You have two options:
a) Install the needed binaries and libraries
and run ./Config
OR
b) If you don't need SSL...
Run ./Config and say 'no' when asked about SSL
(or pass --disable-ssl to ./configure)
Try this:
apt-get install openssl
apt-get install libssl-dev

Unrealircd 4.0.1 failing during ./Config fix on FreeBSD


configure: error:
You have decided to build unrealIRCd with libcURL (remote includes) support.
However, you have disabled system-installed c-ares support (--with-system-cares).
Because UnrealIRCd will use a bundled copy of c-ares which may be incompatible
with the system-installed libcURL, this is a bad idea which may result in error
messages looking like:
``[error] unrealircd.conf:9: include: error downloading '(http://example.net/ex.conf)': Could not resolve host: example.net (Successful completion)''
Or UnrealIRCd might even crash.
Please build UnrealIRCd with --with-system-cares when enabling --enable-libcurl
To fix this, you will have to

cd unrealircd-4.0.1
nano configure

and than find this line:

# Check whether --with-system-cares was given.
if test "${with_system_cares+set}" = set; then :
withval=$with_system_cares;
else
with_system_cares=no and change this line to: with_system_cares=yes
fi

Linking - Rejecting link: clock is ... seconds behind/ahead.


When trying to link to another server the link may be rejected if the clocks don't match. Example error:

Rejecting link xx.xx.xx[@X.X.X.X.X]: our clock is XXX seconds ahead. Correct time is very important in IRC. Please verify the clock on both services.test.net (them) and maintest.test.net (us), fix it and then try linking again

Or from a link error: Your clock is -1337 seconds ahead of my clock. Please verify both your clock and mine, fix it and try linking again.
This is a safety measure from UnrealIRCd, as having incorrect clocks can be a major source of trouble.

Linking - (sync) Possible negative TS split at link server.blah.net (1078875430 - 1078875478 = -48)

If you get such a warning this means your clocks are not synched.
Correct time is VERY important for IRC servers, if the clocks are off for just 20 seconds you may run into trouble already. If your clocks are minutes or even hours off, you are guaranteed to have problems.
To name a number of problems that will occur if your time is off:

  • temporary *lines/shuns will not expire correctly, they might expire like an hour earlier (or even directly on add) or later
  • sudden (wrong) nick collision kills
  • channels might not show up in /LIST (this requires the time to be off by 24h or more)
  • services might be unable to set a user +r (+r = register user)
  • more..


Solution 1 (RECOMMENDED) (*NIX):

Synch the server clock


You should run ntpd (=daemon) or ntpdate(=simple util, usually ran via cron) on all your servers.. this is pretty easy to set up and once it's working it should take care of all your worries. Note however that this requires root access. On most Linux distro's you simply run

<b>apt-get install ntp</b>

or

<b>yum install ntp</b>


Once you are certain ntp is running (check your system log), then we recommend you to disable the build-in time synchronization in UnrealIRCd by adding this to your configuration file:

<b>set { timesynch { enabled no; }; };</b>


Solution 1 (RECOMMENDED) (Windows): Synch the server clock
Newer Windows versions (XP and later) should automatically synchronize the clock. If it isn't working, google around.

Solution 2: build-in time synchronization in UnrealIRCd
UnrealIRCd has build-in NTP support and will try to synchronize the clock when it boots and then maintain an internal offset. This will make time appear correct (for the IRCd). Unfortunately this does not help against 'clock drift' where the time offset will change, for example if your clock is too slow it may be off by 2 seconds on the first day.. 4 seconds on the 2nd day.. and so on. Only NTP (see Solution 1) can help with this.

Solution 3: Synch via services or /TSCTL
We no longer recommend this. This can ONLY be used if your clock is off just for like <30 seconds because otherwise the IRCd may do all kinds of weird things (it really doesn't like time jumps of 30 seconds or more, in the future or in the past).
Your services may provide this command, it's usually called TSCTL or something with TIME.

Last Solution:
If none of the above solution didn`t work, you may try to set the time on all your servers by using TSCTL OFFSET +|-
We will give you example for error that can look like this: (taken from ircd.logs)

[Sat Jun 25 05:59:52 2016] - Rejecting link [@50.100.200.254.39560]: our clock is 70 seconds ahead. Correct time is very important in IRC. Please verify the clock on both (them) and irc.sisrv.net (us), fix it and then try linking again

In this case the time in the current server is 70 seconds ahead from the server we are trying to link to, which means we will have to take 70 seconds off and we can do that like this:

/TSCTL OFFSET - 70

I hope this did resolve your linking problem, and wish you better luck in the future :)

About time zones
Note that linking ircds from different timezones is NO PROBLEM because GMT/UTC time is used for everything. It is however important that you have your time zone (and time) configured correctly. For example if you are on the eastcoast USA then don't set the time zone to westcoast with an eastcoast time.

Please build UnrealIRCd with --with-system-cares when enabling --enable-libcur

checking /usr/bin/curl-config... yes
configure: error:

You have decided to build unrealIRCd with libcURL (remote includes) support.
However, you have disabled system-installed c-ares support (--with-system-cares).
Because UnrealIRCd will use a bundled copy of c-ares which may be incompatible
with the system-installed libcURL, this is a bad idea which may result in error
messages looking like:

``[error] unrealircd.conf:9: include: error downloading '(http://example.net/ex.conf)': Could not resolve host: example.net (Successful completion)''

Or UnrealIRCd might even crash.
Please build UnrealIRCd with --with-system-cares when enabling --enable-libcurl
Do ./Config again, and when u`ll get to the step which is asking for custom parameters:

Would you like to pass any custom parameters to configure?
See `./configure --help' and write them here: type: --with-system-cares

also make sure you do update and make sure you have installed libc-ares

sudo apt-get update
sudo apt-get install libc-ares-dev

  • 1 Los Usuarios han Encontrado Esto Útil
¿Fue útil la respuesta?

Artículos Relacionados

Anope IRC Services Issues

Here we will give short but correct answers to all your issues regarding Anope IRC Services...

EggDrop common issues

Here we will give short but correct answers to all your issues regarding EggDrop Eggdrop...

Powered by WHMCompleteSolution