Simult Chek: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 5: Строка 5:
 
Это связано с особенностью провеки одновременности подключений - запрос
 
Это связано с особенностью провеки одновременности подключений - запрос
 
<PRE>simul_count_query = "SELECT COUNT(*) FROM ${acct_table1} WHERE UserName=\'%{SQL-User-Name}\' AND AcctStopTime = 0"</PRE>
 
<PRE>simul_count_query = "SELECT COUNT(*) FROM ${acct_table1} WHERE UserName=\'%{SQL-User-Name}\' AND AcctStopTime = 0"</PRE>
проверяет тольк наличие сессий в таблице acct_table1 (обычно radacct). Сессии в таблице acct_table1 создаются только при получении Acct-пакета от NAS (VPN-сервер), и время между
+
проверяет тольк наличие сессий в таблице acct_table1 (обычно radacct).
  +
Сессии в таблице acct_table1 создаются только при получении Acct-пакета от NAS (VPN-сервер), и время между
   
 
<TABLE>
 
<TABLE>

Версия 10:23, 29 апреля 2009

Описание проблемы

В сети используется VPN (accel-pptp) с авторизацией на центральном radius-сервере (freeradius). При попытке авторизации 2 и более клиентов с одинаковыми UserName может возникнуть ситуация когда пытающиеся авторизоваться (или часть из них) пройдут авторизацию успешно.

Это связано с особенностью провеки одновременности подключений - запрос

simul_count_query = "SELECT COUNT(*) FROM ${acct_table1} WHERE UserName=\'%{SQL-User-Name}\' AND AcctStopTime = 0"

проверяет тольк наличие сессий в таблице acct_table1 (обычно radacct).

Сессии в таблице acct_table1 создаются только при получении Acct-пакета от NAS (VPN-сервер), и время между 
   111