I have a problem with my UnrealIrcD 3.2.10.2.
I think it is related to Ping timeouts every 10 mins or so.
I've set it up on my home PC (which has a pretty good connection for a home line, 100MBit/s down, 5MBit/s up) and everything works fine excepting for 2 of 10 clients connecting.
2 of my Users are disconnecting very periodically, one of them every 7 minutes, the other one every 9 minutes, but only when they are idling!
The disconnected user sees "*10* Software caused connection abort*" while th other users see "*(Connection reset by peer)".
They are the only users who have problems, so it made me think it's a problem on their side.
I'm the only "server" they have problems with, so it made me think it's a problem on my side.
This is how it looks like:
Code: Select all
[23:12:03] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:13:50] * user1 (user1@provider1) has joined #test
[23:20:48] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:21:41] * user1 (user1@provider1) has joined #test
[23:28:42] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:29:37] * user1 (user1@provider1) has joined #test
[23:36:41] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:37:28] * user1 (user1@provider1) has joined #test
[23:44:30] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:45:21] * user1 (user1@provider1) has joined #test
[23:52:20] * user1 (user1@provider1) Quit (Connection reset by peer)
[23:53:13] * user1 (user1@provider1) has joined #test
[00:00:12] * user1 (user1@provider1) Quit (Connection reset by peer)
[00:01:05] * user1 (user1@provider1) has joined #test
[00:07:51] * user1 (user1@provider1) Quit (Connection reset by peer)
[00:08:20] * user1 (user1@provider1) has joined #test
[00:15:23] * user1 (user1@provider1) Quit (Connection reset by peer)
[00:16:15] * user1 (user1@provider1) has joined #test
[00:39:35] * user1 (user1@provider1) Quit (Connection reset by peer)
[00:40:02] * user1 (user1@provider1) has joined #test
[00:47:03] * user1 (user1@provider1) Quit (Connection reset by peer)
[00:47:57] * user1 (user1@provider1) has joined #test
[01:11:13] * user1 (user1@provider1) Quit (Connection reset by peer)
[01:12:07] * user1 (user1@provider1) has joined #test
[01:19:06] * user1 (user1@provider1) Quit (Connection reset by peer)
[01:19:59] * user1 (user1@provider1) has joined #test
[01:46:51] * user1 (user1@provider1) Quit (Connection reset by peer)
[01:47:43] * user1 (user1@provider1) has joined #test
[01:54:46] * user1 (user1@provider1) Quit (Connection reset by peer)
[01:55:38] * user1 (user1@provider1) has joined #test
[02:02:37] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:03:29] * user1 (user1@provider1) has joined #test
[02:10:33] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:11:19] * user1 (user1@provider1) has joined #test
[02:18:22] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:19:14] * user1 (user1@provider1) has joined #test
[02:26:07] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:27:01] * user1 (user1@provider1) has joined #test
[02:48:27] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:49:22] * user1 (user1@provider1) has joined #test
[02:56:03] * user1 (user1@provider1) Quit (Connection reset by peer)
[02:56:34] * user1 (user1@provider1) has joined #test
[03:03:34] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:04:27] * user1 (user1@provider1) has joined #test
[03:11:18] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:12:13] * user1 (user1@provider1) has joined #test
[03:19:13] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:20:02] * user1 (user1@provider1) has joined #test
[03:26:44] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:27:20] * user1 (user1@provider1) has joined #test
[03:50:19] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:50:47] * user1 (user1@provider1) has joined #test
[03:57:47] * user1 (user1@provider1) Quit (Connection reset by peer)
[03:58:35] * user1 (user1@provider1) has joined #test
[04:05:28] * user1 (user1@provider1) Quit (Connection reset by peer)
[04:06:21] * user1 (user1@provider1) has joined #test
[04:13:17] * user1 (user1@provider1) Quit (Connection reset by peer)
[04:14:10] * user1 (user1@provider1) has joined #test
[04:21:11] * user1 (user1@provider1) Quit (Connection reset by peer)
[04:21:58] * user1 (user1@provider1) has joined #test
[04:32:10] * user1 (user1@provider1) Quit (Connection reset by peer)
[04:33:01] * user1 (user1@provider1) has joined #test
[04:40:04] * user1 (user1@provider1) Quit (Connection reset by peer)
[04:40:57] * user1 (user1@provider1) has joined #test
[05:04:35] * user1 (user1@provider1) Quit (Connection reset by peer)
[05:05:26] * user1 (user1@provider1) has joined #test
[05:32:15] * user1 (user1@provider1) Quit (Connection reset by peer)
[05:33:02] * user1 (user1@provider1) has joined #test
[05:40:02] * user1 (user1@provider1) Quit (Connection reset by peer)
[05:40:55] * user1 (user1@provider1) has joined #test
[05:47:54] * user1 (user1@provider1) Quit (Connection reset by peer)
[05:48:47] * user1 (user1@provider1) has joined #test
[06:28:31] * user1 (user1@provider1) Quit (Connection reset by peer)
[06:29:24] * user1 (user1@provider1) has joined #test
[06:36:24] * user1 (user1@provider1) Quit (Connection reset by peer)
[06:37:18] * user1 (user1@provider1) has joined #test
[07:50:21] * user1 (user1@provider1) Quit (Connection reset by peer)
[07:51:13] * user1 (user1@provider1) has joined #test
[07:58:21] * user1 (user1@provider1) Quit (Connection reset by peer)
[07:59:07] * user1 (user1@provider1) has joined #test
[08:06:07] * user1 (user1@provider1) Quit (Connection reset by peer)
[08:07:01] * user1 (user1@provider1) has joined #test
[08:17:39] * user1 (user1@provider1) Quit (Connection reset by peer)
[09:25:42] * user1 (user1@provider1) has joined #test
No one of them had a single disconnect.
For one of the clients, I've found a work-around: If he periodically sends an unknown raw command to the server, which it replies by "unklnown command <command>", the disconnects stopped for him.
He managed this by .timerLag -io 0 10 .scid -at1 .lagtime. $!+ $!ticks (in an mrc script), which sends ".lagtime.<cpu-ticks>" to the server and could hide the server-replies by raw 421:*:/halt.
It also prevents him from disconnecting, when I use /ctcp <user> PING every few seconds/minutes.
For the other client, /ctcp <user> PING wasn't enough, it seemed like I needed to do something that triggers a reply by his client, so /ctcp <user> version did the job. (He didn't test the lagtime-timer yet).
At first it seemed like this worked, but now he's disconnecting again, but not so periodically:
Code: Select all
[02:50:01] * user2 (ident2@provider2) Quit (Connection reset by peer)
[02:56:58] * user2 (ident2@provider2) has joined #test
[11:30:02] * user2 (ident2@provider2) Quit (Connection reset by peer)
[11:37:07] * user2 (ident2@provider2) has joined #test
[12:50:02] * user2 (ident2@provider2) Quit (Connection reset by peer)
[12:57:06] * user2 (ident2@provider2) has joined #test
[13:50:09] * user2 (ident2@provider2) Quit (Connection reset by peer)
[13:56:57] * user2 (ident2@provider2) has joined #test
[15:00:16] * user2 (ident2@provider2) Quit (Connection reset by peer)
[15:07:00] * user2 (ident2@provider2) has joined #test