ocserv tun issues with more than 4 connections

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2018-11-21 22:04:53, Marc West wrote:
> Hi,
> 
> I'm running into an issue with ocserv-0.12.1 on OpenBSD 6.4
> (gnutls-3.5.19) where if there are 4 existing users connected, 
> any new connection attempts fail with errors like the logs below.
> 
> If one of the 4 existing users disconnects then the next connection
> attempt succeeds, but any connections above 4 simultaneous seem to 
> always fail. max-clients is set to 50.
> 
> Regarding the log lines about tun interfaces, tun0 through tun254 all
> exist even though less than 10 users have ever connected so far. The
> first 4 users create tun0-tun3 and they get destroyed upon disconnect
> as expected. When the 5th user attempts to connect, tun4-tun254 all 
> get created at once and persist in the down state indefinitely.
> 
> If I manually destroy the unused tun4-tun254 they all get recreated 
> again upon the next login attempt (which fails with: main: tun.c:724:
> Can't open tun device: No such file or directory).
> 
> To note, ifconfig shows tun0-tun254 as existing but under /dev only
> the active 4 exist:
> 
> # ls /dev/tun*
> /dev/tun0    /dev/tun1    /dev/tun2    /dev/tun3    /dev/tuner0
> # 
> 
> I've left the current ocserv process running in case there is any
> additional info that should be gathered while running, otherwise I
> can restart with debug if needed.
> 
> Thanks!
> 
> ocserv log:
> Nov 20 18:31:24 server ocserv[82641]: main:ip.ip.ip.ip:57758 user disconnected (reason: unspecified, rx: 0, tx: 0)
> Nov 20 18:31:24 server ocserv[2082]: sec-mod: initiating session for user 'username' (session: n2oOOP)
> Nov 20 18:31:24 server ocserv[82641]: main[username]:ip.ip.ip.ip:57760 new user session
> Nov 20 18:31:24 server ocserv[82641]: main: tun.c:724: Can't open tun device: File exists
> Nov 20 18:31:24 server ocserv[82641]: main[username]:ip.ip.ip.ip:57760 failed authentication attempt for user 'username'
> Nov 20 18:31:24 server ocserv[35469]: worker: ip.ip.ip.ip failed cookie authentication attempt
> Nov 20 18:31:24 server ocserv[82641]: main[username]:ip.ip.ip.ip:57760 user disconnected (reason: unspecified, rx: 0, tx: 0)
> Nov 20 18:31:24 server ocserv[2082]: sec-mod: temporarily closing session for username (session: n2oOOP)
> Nov 20 18:31:24 server ocserv[82641]: main: tun.c:774: /dev/tun254: Error destroying interface: Invalid argument

For the list archives: the 4 connection limit was due to only tun0
through tun3 device nodes existing under /dev. On OpenBSD, these 4 are
created by default (see /dev/MAKEDEV) and the rest need to be explicitly
created on a newly installed system to allow more than 4 tun interfaces.

#!/bin/sh
i=4
cd /dev

while [ $i -le 254 ]; do
        ./MAKEDEV "tun$i"
        i=`expr $i + 1`
done



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux