View Issue Details

IDProjectCategoryView StatusLast Update
0002612unrealircdpublic2007-04-27 04:10
Reporterpinstrate Assigned To 
PrioritynormalSeveritytweakReproducibilityalways
Status closedResolutionfixed 
Product Version3.2.4 
Summary0002612: Connection throttling works a bit wrong
DescriptionI have configuration of 3 connections in a period of 35 seconds. On my testnet, I hit the throttle, however:
a) it expires after about 30 seconds, doesn't matter which time I hit it: 1st or 999th.
b) throttle time is not reset by my further connections: Let's say I got throttled and I keep reconnecting every 1 second: it displays 'throttled bla bla', but despite of my reconnection attempts, the throttle nevertheless is gone after ~30 seconds :( In my opinion, each such connection attempt should reset the throttle (something like: last_connection_attempt = TStime())

I've noticed this issue after some people managed to set up big clone/bot armies in such way on my network..
3rd party modules

Activities

syzop

2005-08-03 11:37

administrator   ~0010310

(a)) Whenever you connect first it starts the throttle period, then for any subsequent connect it checks if currenttime-starttime < throttleperiod and of course if num_connects < throttlenumconnects. Whenever the "time is over" it starts over again.

b) We decided not to do that... In our opinion you punish people then too much. codemastr probably has a bit more extensive explanation on this.

pinstrate

2005-08-03 15:40

reporter   ~0010312

Weel then there probably should exit a module which would allow that strict punishement :) Because in recent days I disovered a botnet which managed to slip through the throttle: simply there are some infected home computers (I guess so) which try to connect X number of bots: the N bot connects, the N+1 bot starts connecting but gets throttled, however, keeps connecting until the throttle ends and finally it is in irc. Anyway, as a permanent solution I use Antirandom module, but dunno how long that would help :)

w00t

2005-08-08 04:30

reporter   ~0010316

So have a maxperip limit, and you'll be fine :p

Issue History

Date Modified Username Field Change
2005-08-03 06:01 pinstrate New Issue
2005-08-03 11:37 syzop Note Added: 0010310
2005-08-03 15:40 pinstrate Note Added: 0010312
2005-08-08 04:30 w00t Note Added: 0010316
2007-04-27 04:10 stskeeps Status new => closed
2007-04-27 04:10 stskeeps Resolution open => fixed