BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 28 апр 2024, 23:43

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 210 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
СообщениеДобавлено: 10 мар 2012, 16:33 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В wiki возращается
Код:
Acct-Interim-Interval=900
  Framed-IP-Address=193.106.88.119
  # Атрибут, необходимый для получения абонентом IP-адреса
  DHCP-Max-Leases=1
  # Атрибуты для включения сервиса для абонента. Устанавливают скорость соединения и включают посервисный аккаунтинг.
  Service-Name:1=RSE-SVC-EXT
  Service-Options:1=1
  Service-Parameter:1=Rate=6000 Burst=750000
  # Обязательный атрибут, указывает, к какому IP-интерфейсу "привязать" абонента
  IP-Interface-Name=CLIENTS
Может быть нужно обязательно указывать какой-нибудь сервис?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 мар 2012, 17:15 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Пробовали и с указанием сервисов, результат такой же, мистика какая-то.
Периодически редбек дропает приходящие с биллинга access-accept пакеты:
Код:
%AAA-7-EXCEPT: rad_response_sanity_check: Authenticator check failed. Dropping the request.
%AAA-7-EXCEPT: rad_process_received_pkt: Sanity check fail, drop this packet.

Не может ли быть причиной ошибка в вычислении радиусом атрибута Authenticator ?

Причиной оказалось, что биллинг по какой-то причине не использует секрет из параметра "radius.secret" конфига устройства. В свойствах устройства поле секрет было пустым, биллинг использовал это значение.
Не смотря на это ошибка с DHCP осталась, IP-адрес не выдется

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 мар 2012, 22:34 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Причиной оказалось, что биллинг по какой-то причине не использует секрет из параметра "radius.secret" конфига устройства.
Да, секрет брался только из поля Секрет/community устройства. Выложили новый билд модуля, где параметр конфига radius.secret будет переопределять это значение.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 10 мар 2012, 22:52 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Проблема с DHCP была в том, что использовался InetDhcpProcessor вместо InetDhcpHelperProcessor, с последним все сразу заработало.

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 13 мар 2012, 20:53 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 янв 2012, 19:36
Сообщения: 89
Откуда: Волгодонск
Карма: 0
пытаемся сейчас настроить qos policy, куска конфига в вики нет.
вот наш конфиг
Код:
policy access-list SUB-IN
  seq 10 permit ip any 10.0.0.0 0.255.255.255 class INTERNAL
  seq 20 permit ip any 192.168.0.0 0.0.255.255 class INTERNAL
  seq 30 permit ip any ххх.ххх.ххх.0 0.0.3.255 class INTERNAL
  seq 40 permit ip any any class EXTERNAL
!
 policy access-list SUB-OUT
  seq 10 permit ip 10.0.0.0 0.255.255.255 any class INTERNAL
  seq 20 permit ip ххх.ххх.ххх.0 0.0.3.255 any class INTERNAL
  seq 30 permit ip any any class EXTERNAL
 

subscriber default
   qos policy policing DEF-IPOE-IN
   qos policy metering DEF-IPOE-OUT
   dhcp max-addrs 1
 
 radius service profile RSE-SVC-EXT
  parameter value Rate 100000
  parameter value Burst 12500000
  accounting in qos EXTERNAL
  accounting out qos EXTERNAL
  seq 10 attribute Dynamic-Policy-Filter "ip in forward class EXTERNAL qos"
  seq 20 attribute Dynamic-Policy-Filter "ip out forward class EXTERNAL qos"
  seq 30 attribute Dynamic-Qos-Parameter "meter-class-rate EXTERNAL rate-absolute $Rate"
  seq 40 attribute Dynamic-Qos-Parameter "meter-class-burst EXTERNAL $Burst"
  seq 50 attribute Dynamic-Qos-Parameter "police-class-rate EXTERNAL rate-absolute $Rate"
  seq 60 attribute Dynamic-Qos-Parameter "police-class-burst EXTERNAL $Burst"
  seq 70 attribute Service-Interim-Accounting 900
 

qos policy DEF-IPOE-IN policing
 ip access-group SUB-IN local
  class INTERNAL
   rate 1000 burst 125000
  class EXTERNAL
   rate 2000 burst 250000
 rate-calculation exclude layer-2-overhead
!
qos policy DEF_IPOE-OUT metering
 ip access-group SUB-OUT local
  class INTERNAL
   rate 1000 burst 125000
  class EXTERNAL
   rate 2000 burst 250000
 rate-calculation exclude layer-2-overhead


при этом redback перестает слать dhcp запросы, идет только радиус
как только из subscriber default убираем qos policy:
Код:
qos policy policing DEF-IPOE-IN
   qos policy metering DEF-IPOE-OUT

redback начинает слать dhcp запросы и пользватель получает ip и начинает работать
кто может подсказать что не так с конфигом ?
проблему решили сами, ошибка в конфиге qos policy DEF_IPOE-OUT metering заменили на - все стало работать

_________________
Клиент: вер. 7.2.146 / 14.05.2019 16:00:05
Сервер: вер. 7.2.1001 / 14.05.2019 16:02:13
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_121

card: вер. 7.2.198 / 28.03.2019 16:11:52
dialup: вер. 7.2.301 / 07.02.2019 11:16:31
inet: вер. 7.2.591 / 14.05.2019 16:02:31
ipn: вер. 7.2.229 / 07.02.2019 11:15:34
mps: вер. 7.2.166 / 14.05.2019 16:02:47
npay: вер. 7.2.170 / 11.04.2019 18:27:20
phone: вер. 7.2.250 / 04.04.2019 18:32:01
reports: вер. 7.2.196 / 23.04.2019 20:46:16
trayinfo: вер. 7.2.159 / 07.02.2019 11:21:06
voice: вер. 7.2.30 / 13.05.2019 15:19:29
voiceip: вер. 7.2.175 / 19.03.2019 16:40:51


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 мар 2012, 21:44 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Подскажите в чем может быть проблема с аккаунтингом. Пакеты приходят в такой последовательности:
    Accounting-Request Start
    Accounting-Request Update
    Accounting-Request Service Start
    проходит 15 минут
    Accounting-Request Update
    Accounting-Request Service Update
В апдейт пакетах трафик есть, а в биллинге трафика нет.
Код:
radius 03-16/19:30:25  INFO [rdsLstnr-p-6-t-4] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Accounting-Request
Identifier: 71
Authenticator: {0F 6C D5 6C 54 92 A9 06 7C 9B 38 1B F7 C9 C8 8F}
Attributes:
  User-Name=0012cff2a740:0f
  User-Password=RedBack
  NAS-Identifier=RedBack
  NAS-IP-Address=192.168.12.247
  NAS-Port=33751040
  Service-Type=5
  Framed-IP-Address=192.168.4.2
  Acct-Input-Octets=21000
  Acct-Output-Octets=21334
  Acct-Status-Type=3
  Acct-Session-Time=900
  Acct-Input-Packets=350
  Acct-Session-Id=0102FFFF78006C90-4F6358C1
  Acct-Authentic=1
  Acct-Multi-Session-Id=0102FFFF78006C90-4F6358C1
  NAS-Port-Id=2/3 clips 158864
  Acct-Output-Packets=351
  Event-Timestamp=1331911750
  Acct-Output-Gigawords=0
  Acct-Input-Gigawords=0
  Calling-Station-Id=000c42823fd4
  NAS-Port-Type=5
  Called-Station-Id=192.168.4.1
  Acct-Mcast-Out-Packets-64={00 00 00 00 00 00 00 00}
  DHCP-Max-Leases=1
  DHCP-Field={01 C0 A8 04 01}
  DHCP-Option={3D 3D 07 01 00 0C 42 82 3F D4}
  DHCP-Option={0C 0C 08 4D 69 6B 72 6F 54 69 6B}
  Acct-Output-Octets-64={00 00 00 00 00 00 53 56}
  Acct-Input-Octets-64={00 00 00 00 00 00 52 08}
  Acct-Output-Packets-64={00 00 00 00 00 00 01 5F}
  Acct-Input-Packets-64={00 00 00 00 00 00 01 5E}
  Acct-Mcast-In-Octets-64={00 00 00 00 00 00 00 00}
  Service-Parameter=Rate=10000 Burst=1250000
  Assigned-IP-Address=192.168.4.2
  Acct-Mcast-In-Packets-64={00 00 00 00 00 00 00 00}
  Acct-Mcast-Out-Octets-64={00 00 00 00 00 00 00 00}
  Acct-Update-Reason=26
  Acct-Mcast-In-Octets=0
  Acct-Mcast-Out-Octets=0
  Acct-Mcast-In-Packets=0
  Acct-Mcast-Out-Packets=0
  Platform-Type=4
  Medium-Type=11
  Agent-Remote-Id={00 06 00 12 CF F2 A7 40}
  Agent-Circuit-Id={00 04 00 03 01 0F}
  IP-Interface-Name=clients
  Service-Name=SE
  Service-Options:0=1
  OS-Version=6.5.1.4
  NAS-Real-Port=33751040
  UNKNOWN[3561--1]={02 0A 00 06 00 12 CF F2 A7 40}
  UNKNOWN[3561--1]={01 08 00 04 00 03 01 0F}

radius 03-16/19:30:25  INFO [rdsLstnr-p-6-t-4] InetRadiusProcessor - Session 0102FFFF78006C90-4F6358C1 found.
radius 03-16/19:30:25 DEBUG [rdsLstnr-p-6-t-4] connection - 941:919 Add time 300
radius 03-16/19:30:25 DEBUG [rdsLstnr-p-6-t-4] connection - 941:919 Add traffic 0=300
radius 03-16/19:30:25 DEBUG [rdsLstnr-p-6-t-4] connection - 941:919 Add traffic 0=300

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 мар 2012, 22:45 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Возможно что-то с привязкой трафика не так. Можно скриншот?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 00:07 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Вот


Вложения:
traf2.gif
traf2.gif [ 46.67 КБ | Просмотров: 16578 ]
traf1.gif
traf1.gif [ 15.76 КБ | Просмотров: 16578 ]
traf.gif
traf.gif [ 15.53 КБ | Просмотров: 16578 ]

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 00:39 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Сервисная сессия создается? Имя сервиса в сервисном радиус пакете точно SE?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 00:57 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Amir писал(а):
Сервисная сессия создается? Имя сервиса в сервисном радиус пакете точно SE?

Предполагаю, что нет. В мониторе сессий сессия есть, но если выбрать у нее сервисные сессии, то там пусто. В договоре в отчете сессии есть, но сервисных сессий также нет. В приложении лог InetAccounting при старте сессии.


Вложения:
all.log [13.99 КБ]
Скачиваний: 532

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 02:22 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В типе устройства SE прописан SmartedgeClipsProtocolHandler как обработчик процессора протокола?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 13:39 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
В качестве обработчика протокола прописан класс ru.clink.bgbilling.module.inet.serv.SmartEdgeProtocolHandler, вот его содержимое:
Код:
package ru.clink.bgbilling.module.inet.serv;

import org.apache.log4j.Logger;
import ru.bitel.bgbilling.kernel.network.dhcp.*;
import ru.bitel.bgbilling.kernel.network.radius.*;
import ru.bitel.bgbilling.modules.inet.access.sa.*;
import ru.bitel.common.*;
import ru.bitel.common.sql.*;
 
public class SmartEdgeProtocolHandler
   extends ProtocolHandlerAdapter
 implements RadiusProtocolHandler, DhcpProtocolHandler
{
   private static final Logger log = Logger.getLogger( SmartEdgeServiceActivator.class );
   @Override
    public void preprocessAccessRequest( RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
        throws Exception
    {
      String macAddr = request.getStringAttribute( 2352, 145, null );
      byte[] remoteId = request.getByteAttribute( 2352, 96, null );
      byte[] circuitId = request.getByteAttribute( 2352, 97, null );
 
      if( macAddr != null && remoteId != null && circuitId != null )
      {
         String callingStation = macAddr.replaceAll( "\\-", "" );
 
         String userName = "";
 
         
            log.info( "Format of Option 82 is D-link" );
            userName = Utils.bytesToHexString( remoteId ).substring(4, 16) + ":" + Utils.bytesToHexString( circuitId ).substring(10, 12);
         
 
         userName = userName.toLowerCase();
         request.setStringAttribute( -1, 1, userName );
         request.setStringAttribute( -1, 2, "RedBack" );
         request.setStringAttribute( -1, 31, callingStation );
      }
    }
 
   @Override
    public void postprocessAccessRequest( RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
        throws Exception
    {
      response.removeAttributes( -1, 8 );      
    }
 
 
   @Override
    public void preprocessAccountingRequest( RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
        throws Exception
    {
 int acctStatusType = request.getIntAttribute( -1, 40, 0 );
      // старты получается не обрабатываем, сессия стартует по апдейту
      if( acctStatusType != 1 && acctStatusType != 101 && acctStatusType != 2)
      {
         preprocessAccessRequest( request, response, connectionSet );

         Integer ipaddr = request.getIntAttribute( 2352, 132, null );
         if( ipaddr != null )
         {   
            request.setIntAttribute( -1, 8, ipaddr );   
         }
      }
      if ( acctStatusType == 3 ) {
         // обнуляем общие счетчики трафика (нас интересуют только посервисные)
         request.setIntAttribute(-1, 42, 0);
         request.setIntAttribute(-1, 43, 0);
      }
//      if ( acctStatusType == 1 ) {
//         preprocessAccessRequest( request, response, connectionSet );
//      }
      if ( acctStatusType == 103 || acctStatusType == 102) {
         String sessionID = request.getStringAttribute(-1, 50, null);
         request.setStringAttribute(-1, 44, sessionID);
      }
     
      /*if ( acctStatusType == 102) {
         request.setIntAttribute(-1, 40, 2);
      }*/
     
      if ( acctStatusType == 103 || acctStatusType == 102) {
         request.setIntAttribute(-1, 40, 3);
      }

    }
 
 
   @Override
    public void preprocessDhcpRequest( DhcpPacket request, DhcpPacket response )
        throws Exception
    {
      //String userName = Utils.bytesToHexString( remoteId ).substring(4, 16) + ":" + Utils.bytesToHexString( circuitId ).substring(10, 12);
      try {
         byte[] circuitId = request.getSubOption( (byte)1 ).value;
         byte[] remoteId = request.getSubOption( (byte)2 ).value;
            byte[] mac = new byte[6];
            byte[] port = new byte[1];
            System.arraycopy(circuitId, 5, port, 0, 1);
            System.arraycopy(remoteId, 2, mac, 0, 6);
            request.setSubOption( (byte)1, port);
            request.setSubOption( (byte)2, mac);
         
      } catch (java.lang.NullPointerException e) {
         return;
      }
    }
}


_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 15:25 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Поменяйте обработчики на ru.bitel.bgbilling.modules.inet.dyn...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 15:58 
Не в сети
Клиент

Зарегистрирован: 04 авг 2007, 19:57
Сообщения: 157
Карма: 0
Поменять название не проблема, проблема, что в этом классе должно быть. Для метода preprocessAccountingRequest в вики 2 варианта, а еще в биллинге есть 3 варианта. Какой все-таки нужно использовать?

_________________
Клиент: вер. 7.2.198 / 19.08.2019 19:30:12
Сервер: вер. 7.2.1061 / 19.08.2019 19:32:26
card: вер. 7.2.201 / 24.07.2019 03:56:11
dialup: вер. 7.2.303 / 04.07.2019 17:11:44
inet: вер. 7.2.639 / 19.08.2019 19:32:59
ipn: вер. 7.2.232 / 19.08.2019 19:32:53
mps: вер. 7.2.177 / 08.08.2019 16:32:31
npay: вер. 7.2.174 / 25.07.2019 19:48:57
phone: вер. 7.2.260 / 08.08.2019 16:32:32
reports: вер. 7.2.203 / 12.08.2019 21:56:13
trayinfo: вер. 7.2.160 / 25.06.2019 16:47:08
voice: вер. 7.2.63 / 19.08.2019 19:33:01
voiceip: вер. 7.2.176 / 25.06.2019 16:46:56


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 мар 2012, 16:36 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Нужно использовать те, что в биллинге уже есть, в ru.bitel.bgbilling.modules.dyn.device.redback.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 мар 2012, 03:33 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 янв 2012, 19:36
Сообщения: 89
Откуда: Волгодонск
Карма: 0
поменяли обработчики, на те что в на ru.bitel.bgbilling.modules.inet.dyn...
вот хеандлер
Код:
package ru.bitel.bgbilling.modules.inet.dyn.device.redback;

import ru.bitel.bgbilling.kernel.network.dhcp.DhcpPacket;
import ru.bitel.bgbilling.kernel.network.dhcp.DhcpProtocolHandler;
import ru.bitel.bgbilling.kernel.network.radius.RadiusDictionary;
import ru.bitel.bgbilling.kernel.network.radius.RadiusPacket;
import ru.bitel.bgbilling.kernel.network.radius.RadiusProtocolHandler;
import ru.bitel.common.Utils;
import ru.bitel.common.sql.ConnectionSet;
import ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor;

public class SmartEdgeClipsProtocolHandler
    extends SmartEdgeProtocolHandler
    implements RadiusProtocolHandler, DhcpProtocolHandler
{
   /**
    * Установка username
    * @param request
    */
   private void setUsername( RadiusPacket request )
   {
      String macAddr = request.getStringAttribute( 2352, 145, null );
      byte[] remoteId = request.getByteAttribute( 2352, 96, null );
      byte[] circuitId = request.getByteAttribute( 2352, 97, null );

        String realm = request.getStringAttribute(30);

                if( macAddr != null && remoteId != null && circuitId != null )
                {
                        String callingStation = macAddr.replaceAll( "\\-", "" );

                        String userName = Utils.bytesToHexString( remoteId ).substring(4, 16) + ":" + Utils.bytesToHexString( circuitId ).substring(10, 12);
                        userName = userName.toLowerCase();
                        request.setStringAttribute( -1, 1, userName );
                        request.setStringAttribute( -1, 31, callingStation );
                }
   }

   @Override
   public void preprocessAccessRequest( RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
       throws Exception
   {
      super.preprocessAccessRequest( request, response, connectionSet );
      // устанавливаем поле username
      setUsername( request );
   }

   @Override
   public void postprocessAccessRequest( RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
       throws Exception
   {
      super.postprocessAccessRequest( request, response, connectionSet );

      response.removeAttributes( -1, RadiusDictionary.Framed_IP_Address );
   }

   @Override
   protected void preprocessAccountingRequestImpl( int acctStatusType, RadiusPacket request, RadiusPacket response, ConnectionSet connectionSet )
       throws Exception
   {
      acctStatusType = request.getIntAttribute( -1, 40, 0 );
      // старты получается не обрабатываем, сессия стартует по апдейту
      if( acctStatusType != 1 && acctStatusType != 101 )
      {
         preprocessAccessRequest( request, response, connectionSet );
 
         Integer ipaddr = request.getIntAttribute( 2352, 132, null );
         if( ipaddr != null )
         {   
            request.setIntAttribute( -1, 8, ipaddr );   
         }
      }
      if ( acctStatusType == 3 || acctStatusType == 2) {
         // обнуляем общие счетчики трафика (нас интересуют только посервисные)
         request.setIntAttribute(-1, 42, 0);
         request.setIntAttribute(-1, 43, 0);
      }
 
      if ( acctStatusType == 103 || acctStatusType == 102) {
         String sessionID = request.getStringAttribute(-1, 50, null);
         request.setStringAttribute(-1, 44, sessionID);
      }
 
 
      if ( acctStatusType == 103 || acctStatusType == 102) {
         request.setIntAttribute(-1, 40, 3);
      }      
        setUsername( request );

   }



   @Override
   public void preprocessDhcpRequest( DhcpPacket request, DhcpPacket response )
       throws Exception
   {
      // подмена
      try
      {
         byte[] circuitId = request.getSubOption( (byte)1 ).value;
         byte[] remoteId = request.getSubOption( (byte)2 ).value;
         byte[] mac = new byte[6];
         byte[] port = new byte[1];
         System.arraycopy( circuitId, 5, port, 0, 1 );
         System.arraycopy( remoteId, 2, mac, 0, 6 );
         request.setSubOption( (byte)1, port );
         request.setSubOption( (byte)2, mac );
      }
      catch( java.lang.NullPointerException e )
      {
         return;
      }
   }

   @Override
   public void postprocessDhcpRequest( DhcpPacket request, DhcpPacket response )
       throws Exception
   {
   }
}

создается только родительская сессия, сервисной все равно нет.
пакет сервисной сесии
Код:
radius 03-24/01:16:01  INFO [rdsLstnr-p-6-t-7] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Accounting-Request
Identifier: 38
Authenticator: {30 64 11 F4 88 40 CD 07 B5 EE 70 AD B8 C0 67 44}
Attributes:
  User-Name=0012cff2a740:0f
  NAS-Identifier=RedBack
  NAS-IP-Address=192.168.1.247
  NAS-Port=33751040
  Service-Type=5
  Framed-IP-Address=192.168.4.105
  Acct-Input-Octets=197208
  Acct-Output-Octets=334
  Acct-Status-Type=3
  Acct-Session-Time=900
  Acct-Input-Packets=594
  Acct-Session-Id=0102FFFF78007140-4F6CE42B
  Acct-Authentic=1
  Acct-Multi-Session-Id=0102FFFF78007140-4F6CE42B
  NAS-Port-Id=2/3 clips 160064
  Acct-Output-Packets=1
  Event-Timestamp=1332537263
  Acct-Output-Gigawords=0
  Acct-Input-Gigawords=0
  Calling-Station-Id=000c42823fd4
  NAS-Port-Type=5
  Called-Station-Id=192.168.4.1
  Acct-Mcast-Out-Packets-64={00 00 00 00 00 00 00 00}
  DHCP-Max-Leases=1
  UNKNOWN[2352-201]={01 C0 A8 04 01}
  UNKNOWN[2352-202]={3D 3D 07 01 00 0C 42 82 3F D4}
  UNKNOWN[2352-202]={0C 0C 08 4D 69 6B 72 6F 54 69 6B}
  Acct-Output-Octets-64={00 00 00 00 00 00 01 4E}
  Acct-Input-Octets-64={00 00 00 00 00 03 02 58}
  Acct-Output-Packets-64={00 00 00 00 00 00 00 01}
  Acct-Input-Packets-64={00 00 00 00 00 00 02 52}
  Acct-Mcast-In-Octets-64={00 00 00 00 00 00 00 00}
  Service-Parameter=Rate=10000 Burst=1250000
  Assigned-IP-Address=192.168.4.105
  Acct-Mcast-In-Packets-64={00 00 00 00 00 00 00 00}
  Acct-Mcast-Out-Octets-64={00 00 00 00 00 00 00 00}
  Acct-Update-Reason=26
  Mac-Addr=00-0c-42-82-3f-d4
  Acct-Mcast-In-Octets=0
  Acct-Mcast-Out-Octets=0
  Acct-Mcast-In-Packets=0
  Acct-Mcast-Out-Packets=0
  Platform-Type=4
  Medium-Type=11
  Agent-Remote-Id={00 06 00 12 CF F2 A7 40}
  Agent-Circuit-Id={00 04 00 03 01 0F}
  IP-Interface-Name=clients
  Service-Name=SE
  Service-Options:0=1
  OS-Version=6.5.1.4
  NAS-Real-Port=33751040
  UNKNOWN[3561--1]={02 0A 00 06 00 12 CF F2 A7 40}
  UNKNOWN[3561--1]={01 08 00 04 00 03 01 0F}


radius 03-24/01:16:01  INFO [rdsLstnr-p-6-t-7] InetRadiusProcessor - Session 0102FFFF78007140-4F6CE42B found.
radius 03-24/01:16:01 DEBUG [rdsLstnr-p-6-t-7] connection - 1038:1247 Add time 300
radius 03-24/01:16:01 DEBUG [rdsLstnr-p-6-t-7] connection - 1038:1247 Add traffic 0=300
radius 03-24/01:16:01 DEBUG [rdsLstnr-p-6-t-7] connection - 1038:1247 Add traffic 0=300
radius 03-24/01:16:01 DEBUG [rdsLstnr-p-6-t-7] ProcessorRequest - Sending to /192.168.1.247:1812
radius 03-24/01:16:01  INFO [rdsLstnr-p-6-t-7] RadiusListenerWorker - RESPONSE:
Packet type: Accounting-Response
Identifier: 38
Authenticator: {42 5B B9 8F F1 2B B0 85 15 9F F7 68 72 86 24 5C}
Attributes:
343

accounting 03-24/01:16:01 DEBUG [accwrkr-3-p-10-t-1] SessionFinishManager - Run SessionFinishManager...
accounting 03-24/01:16:01 DEBUG [worker-p-13-t-1] InetLogProccessor - Run InetLogProcessor...
accounting 03-24/01:16:01 DEBUG [accwrkr-3-p-10-t-1] SessionFinishManager - Finished 0 auto (checked 0) sessions for 0 ms.
accounting 03-24/01:16:01 DEBUG [worker-p-13-t-1] InetLogProccessor - Proccesed 0 hours for 3 ms.
accounting 03-24/01:16:01 DEBUG [worker-p-13-t-1] InetLogProccessor - InetLogProcessor finished
mq 03-24/01:16:02 DEBUG [evpool-pblsh-p-4-t-2] EventProcessor - Publish: Event[pool:ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] timestamp: 1332537362106; moduleId: 1; pluginId: -1; cid: -1; scid: -1; userId: -1
accounting 03-24/01:16:11 DEBUG [accwrkr-1-p-12-t-1] connection - 1038:1247 Before calc inetOptions: 1
accounting 03-24/01:16:11  INFO [accwrkr-1-p-12-t-1] SessionTarifficationManager - Calculate for 24.03.2012 01:01:01
accounting 03-24/01:16:11  INFO [accwrkr-1-p-12-t-1] SessionTarifficationManager - TariffOptionMap: {}
accounting 03-24/01:16:11 DEBUG [accwrkr-1-p-12-t-1] connection - 1038:1247 TariffRequest:
PARAMS: mid: 1; cid: 2
ServiceCost [serviceId: -3; date1: ; date2: ; serviceStart: ; serviceEnd: ; accountingPeriodDays: 0; amount: 0; cost: null]
 

имя сервиса передает правильно "SE"
вот статус сессии из редбэка
Код:
Session state Up
        Circuit   2/3 clips 160064
        Internal Circuit   2/3:511:63:31/7/2/28992
        Interface bound  clients
        Current port-limit unlimited
        Protocol Stack IPV4
        dhcp max-addrs 1 (applied)
        ip interface clients (applied)
        dhcp option client id 0x3d0701000c42823fd4 (applied)
        dhcp option hostname 0x0c084d696b726f54696b (applied)
        qos-policing-policy DEF-IPOE-IN (applied from sub_default)
        qos-metering-policy DEF-IPOE-OUT (applied from sub_default)
        service  (applied)
           [svc id: 0] SE (acct enabled)
        service-parameter  (applied)
           [svc id: 0] Rate=10000 Burst=1250000
        dynamic policy acl  [svc mask: 0x0001] (applied in: qos out: qos)
           [svc id: 0] ip out forward class EXTERNAL qos
           [svc id: 0] ip in forward class EXTERNAL qos
        qos-dynamic-param  [svc mask: 0x0001] (applied)
           [svc id: 0] meter-class-rate EXTERNAL rate-absolute 10000 (applied)
           [svc id: 0] meter-class-burst EXTERNAL 1250000 (applied)
           [svc id: 0] police-class-rate EXTERNAL rate-absolute 10000 (applied)
           [svc id: 0] police-class-burst EXTERNAL 1250000 (applied)
        service-acct (in)  [svc mask: 0x0001] (applied)
           [svc id: 0] qos class-mask 0x02
        service-acct (out)  [svc mask: 0x0001] (applied)
           [svc id: 0] qos class-mask 0x02
        service-interim-acct-interval  [svc mask: 0x0001] (applied)
           [svc id: 0] 900
          IP host entries installed by DHCP: (max_addr 1 cur_entries 1)
                192.168.4.105    00:0c:42:82:3f:d4

на редбэке debug aaa exception
%AAA-7-EXCEPT: aaa_process_dhcp_iphost_del: DHCP DEL lookup failed for pvc slot 1 port 2 channel 0xffff ip_addr 192.168.4.105 : drop
что не так может быть ?

_________________
Клиент: вер. 7.2.146 / 14.05.2019 16:00:05
Сервер: вер. 7.2.1001 / 14.05.2019 16:02:13
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_121

card: вер. 7.2.198 / 28.03.2019 16:11:52
dialup: вер. 7.2.301 / 07.02.2019 11:16:31
inet: вер. 7.2.591 / 14.05.2019 16:02:31
ipn: вер. 7.2.229 / 07.02.2019 11:15:34
mps: вер. 7.2.166 / 14.05.2019 16:02:47
npay: вер. 7.2.170 / 11.04.2019 18:27:20
phone: вер. 7.2.250 / 04.04.2019 18:32:01
reports: вер. 7.2.196 / 23.04.2019 20:46:16
trayinfo: вер. 7.2.159 / 07.02.2019 11:21:06
voice: вер. 7.2.30 / 13.05.2019 15:19:29
voiceip: вер. 7.2.175 / 19.03.2019 16:40:51


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 11 апр 2012, 06:54 
Не в сети

Зарегистрирован: 09 июн 2010, 08:32
Сообщения: 38
Карма: 0
Ну так кто-нибудь уже ввёл эту железяку в реальную работу или нет?

В wiki не увидел как же netflow снимать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 апр 2012, 14:38 
Не в сети

Зарегистрирован: 30 янв 2012, 16:41
Сообщения: 45
Карма: 5
Коллеги, а где можно найти специалистов, которые за деньги донастроят нам BGBill версии 5.2 и интегрируют с SE100?
А то у нас все в зависшем состоянии, плюс до конца не ясно, как Inet настроить с SE, нужно переносить весь код управления им из примеров для IPN для 5.1?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 апр 2012, 09:01 
Не в сети

Зарегистрирован: 09 июн 2010, 08:32
Сообщения: 38
Карма: 0
Поддерживаю вопрос, может тоже нанимать будем на интеграцию.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 апр 2012, 19:09 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Биллинг и мы можем настроить. Железки - нет.
Работает у нескольких клиентов. Можно и по netflow собирать, но зачем, если она, насколько помню, в посервисном аккаунтинге может сама разделять трафик на виды?
Цитата:
как Inet настроить с SE, нужно переносить весь код управления им из примеров для IPN для 5.1?
Скорее всего, вам хватит того, что уже есть в модуле inet. Какие скрипты у вас были в ipn?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 11 май 2012, 12:31 
Не в сети

Зарегистрирован: 09 июн 2010, 08:32
Сообщения: 38
Карма: 0
Думаю с настройка биллинга будут минимальные проблемы. Больше интересует как ведет себе данная железка. Будет ли успевать натить, шейпить и собирать статистику с 8000 абонентов, как заявлено? Вот и интересно, есть ли опыт.
А то в рекламе одно пишут, а в реале получаешь кота в мешке. Типа ну да расчитано на 8000 абонентов, но мы же не говорили что одновременно она натить и шейпить будет. В такой конфигурации только 3000.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 11 май 2012, 15:02 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 16 сен 2010, 11:53
Сообщения: 501
Карма: 15
это на наге. если железка есть, то даже пустят в закрытый раздел

_________________
Клиент: вер. 7.0.806 / 29.04.2016 13:18:28 os: Windows 7; java: Java HotSpot(TM) Client VM, v.1.8.0_66
Сервер: вер. 7.0.1035 / 29.04.2016 13:17:38 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_92


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 май 2012, 12:35 
Не в сети

Зарегистрирован: 30 янв 2012, 16:41
Сообщения: 45
Карма: 5
Коллеги, задали вопрос на наге, решили и сюда продублировать, т.к. пока не ясно, в какую сторону смотреть. Вот он:

====
Вопрос из разряда "странного хочется":
Можно ли "сэмулировать" выдачу клиенту серой подсети?
Тоесть к примеру есть сеть 10.0.0.0/8 из которой мы хотим каждому клиенту выдать /24 сетку. При этом SmartEdge должен быть с адресом 10.xxx.yyy.1/24 в каждой подсети.
DHCP сервер выдал клиенту нужные параметры (ip-адрес, маску, шлюз, ДНС). Собственно вопрос: как SmartEdge-у присвоить адрес 10.xxx.yyy.1/24? Или как-то убедить клиента что у SE есть этот адрес... Или как-то извернуться через proxy-arp...
====

По идее, после аутентификации и авторизации пользователя, биллинг что-то должен передать какими-то атрибутами на SE100, чтобы он прописал себе адрес из этой сети.
Вопрос: возможно ли это и как это сделать?

Спасибо.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 май 2012, 13:07 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
akornilov
Событие изменение сервиса, вешается скрипт который заходит на se и делает что нужно

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 май 2012, 13:17 
Не в сети

Зарегистрирован: 30 янв 2012, 16:41
Сообщения: 45
Карма: 5
Ну может все-таки SE может по атрибутам как-то сам понять, что этот адрес его и ему его нужно прописать самому себе?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 июн 2012, 17:21 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
babay951 писал(а):
интересует как ведет себе данная железка

Я на наге спрашивал, да и тут, где-то, тоже (с ходу не нашел - поищите).

babay951 писал(а):
Будет ли успевать натить, шейпить и собирать статистику с 8000 абонентов, как заявлено?

В теории - да, т.к. все на ASIC-ах, если, конечно, не выходить за оговоренные в даташите/доке рамки.

P.S. Господа админы, вынесите, пожалуйста, обсуждение железки в отдельную тему, куда нить сюда.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 18 июл 2012, 07:05 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Неудобно:

Для SmartEdgeServiceActivator атрибуты опций Inet задаются через префикс "sa.radius.option.",
а для ISGPPPoEServiceActivator - через "nas.radius.inetOption."


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 18 июл 2012, 13:08 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Не понял, почему так. Возможно, из-за обратной совместимости.
Чтобы было правильно и удобно, укажите в конфигурации устройства (типа устройства)
Код:
sa.radius.option.attributesPrefix=radius.inetOption.
Тогда всегда будет "radius.inetOption.".
Кстати, nas.radius.inetOption. - это устаревший вариант, правильно указывать "radius.inetOption.".
При Access-Request по умолчанию именно оттуда берутся RADIUS-атрибуты.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 июл 2012, 07:26 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Пробуем схему с Reject-To-Accept.

Сервер: вер. 5.2 сборка 1241 от 20.07.2012 10:05:29
os: Linux; java: Java HotSpot(TM) Client VM, v.1.6.0_27
inet вер. 5.2 сборка 932 от 17.07.2012 14:25:38

Код:
@redirect.attributes=HTTP-Redirect-Profile-Name=REDIRECT;Forward-Policy=in:HTTP-REDIRECT
@const.access.attributes=Service-Type=2;Framed-Protocol=1;Acct-Interim-Interval=900;Sub-Profile-Name=base-unlimited

#
#test
sa.radius.disable.attributes={@const.access.attributes};{@redirect.attributes}
#
sa.radius.connection.withoutBreak=1

# Коды ошибок, при которых пользователю выдается серый адрес и устанавливается HTTP-редирект.
realm.reject.error=1,2,3,4,10,11,12
 
# Используемый для отключенных пул адресов и параметры http-редиректа.
nas.radius.realm.reject.pool=7
nas.radius.realm.reject.attributes={@const.access.attributes};{@redirect.attributes}


Клиент подключается, ему выдаётся Ip из пула - всё ок. Но после этого приходит ServiceActivatorEvent с oldState=1 и уже редиректнутому клиенту посылается CoA

Цитата:
07-25/10:08:39 DEBUG [sa-p-11-t-2] AcknowledgeConsumer - Caught BGInetAccountingPPPoE:Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaAccountingEvent] moduleId: 25; pluginId: no; cid: 191468; scid: -1; userId: 0; type: 1; deviceId: 7; connectionId: 13695; timestamp: 1343178519593
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorDeviceWorker - Do task deviceId: 7; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaAccountingEvent] moduleId: 25; pluginId: no; cid: 191468; scid: -1; userId: 0; type: 1; deviceId: 7; connectionId: 13695; timestamp: 1343178519593
07-25/10:08:39 INFO [sa-p-11-t-2] InetApplication - TariffOptionMap: {12=ru.bitel.bgbilling.kernel.tariff.option.server.bean.ContractTariffOptionList$OptionItem@ea3cdf, 5=ru.bitel.bgbilling.kernel.tariff.option.server.bean.ContractTariffOptionList$OptionItem@11e281f}
07-25/10:08:39 DEBUG [sa-p-11-t-2] TrafficRangeManager - Add to RangeKey[21071109755400:3:-603979569] 0 (0, 3600)
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=4; inetServId: 22; call: true; oldState: 0; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorDeviceWorker - Processing deviceId:7; command ServiceActivatorEvent type=4; inetServId: 22; call: true; oldState: 0; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorSet - Invoking onAccountingStart
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorDeviceWorker - Process event type[4] result=true
07-25/10:08:44 INFO [sa-p-11-t-2] ServiceActivatorSet - Disconnecting from device
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorSet - Connecting to device
07-25/10:08:54 DEBUG [sa-p-11-t-1] AcknowledgeConsumer - Caught BGInetAccountingPPPoE:Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaStateModifyEvent] moduleId: 25; pluginId: no; cid: 191468; scid: -1; userId: 0; deviceId: 7; inetServId: 22; connectionId: 13695; state: 0; accessCode: 10; timestamp: 1343178533906
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorDeviceWorker - Do task deviceId: 7; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaStateModifyEvent] moduleId: 25; pluginId: no; cid: 191468; scid: -1; userId: 0; deviceId: 7; inetServId: 22; connectionId: 13695; state: 0; accessCode: 10; timestamp: 1343178533906
07-25/10:08:54 INFO [sa-p-11-t-1] InetApplication - TariffOptionMap: {12=ru.bitel.bgbilling.kernel.tariff.option.server.bean.ContractTariffOptionList$OptionItem@ea3cdf, 5=ru.bitel.bgbilling.kernel.tariff.option.server.bean.ContractTariffOptionList$OptionItem@11e281f}
07-25/10:08:54 DEBUG [sa-p-11-t-1] TrafficRangeManager - Add to RangeKey[21071109755400:3:-603979569] 0 (0, 3600)
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=2; inetServId: 22; call: true; oldState: 1; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorDeviceWorker - Processing deviceId:7; command ServiceActivatorEvent type=2; inetServId: 22; call: true; oldState: 1; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorSet - Invoking connectionModify
07-25/10:08:54 INFO [sa-p-11-t-1] SmartEdgeServiceActivator - Connection modify: oldState: 1; newState: 0; oldOptionSet: [20, 43, 738, 13, 14]; newOptionSet: [20, 43, 738, 13, 14]
07-25/10:08:54 INFO [sa-p-11-t-1] SmartEdgeServiceActivator - Send CoA lock:
Packet type: CoA-Request
Identifier: 1
Authenticator: {39 A4 09 C0 47 29 3B 44 7B 83 94 3F 92 50 AC 3B}
Attributes:
Acct-Interim-Interval=900
Acct-Interim-Interval=900
Service-Type=2
Framed-Protocol=1
Acct-Session-Id=0100FFFF680000B5-500F474C
Forward-Policy=in:HTTP-REDIRECT
HTTP-Redirect-Profile-Name=REDIRECT
Sub-Profile-Name=base-unlimited

07-25/10:08:54 INFO [sa-p-11-t-1] RadiusClient - Sending to /x.x.x.x:3799
Packet type: CoA-Request
Identifier: 1
Authenticator: {39 A4 09 C0 47 29 3B 44 7B 83 94 3F 92 50 AC 3B}
Attributes:
Acct-Interim-Interval=900
Acct-Interim-Interval=900
Service-Type=2
Framed-Protocol=1
Acct-Session-Id=0100FFFF680000B5-500F474C
Forward-Policy=in:HTTP-REDIRECT
HTTP-Redirect-Profile-Name=REDIRECT
Sub-Profile-Name=base-unlimited

07-25/10:08:54 INFO [sa-p-11-t-1] DatagramChannelListener - ru.bitel.bgbilling.kernel.network.radius.RadiusClient$RadiusDatagramChannelListener socket init ok.
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorDeviceWorker - Process event type[2] result=true
07-25/10:08:54 INFO [rds-clnt-/x.x.x.x-3799] RadiusClient - Recieved from /x.x.x.x:3799
Packet type: CoA-NAK
Identifier: 1
Authenticator: {6F 2A A3 EB 79 1A AD 01 E6 AA 48 E2 87 2A 30 FE}
Attributes:
Error-Cause=405
Event-Timestamp=1343178586
Service-Type=2

07-25/10:08:59 DEBUG [sa-p-11-t-1] EventWorker - Waiting 5000 millis for last future results will done...
07-25/10:08:59 INFO [sa-p-11-t-1] EventWorker - Future is done
07-25/10:08:59 WARN [sa-p-11-t-1] ServiceActivatorDeviceWorker - Task return false
07-25/10:08:59 INFO [sa-p-11-t-1] ServiceActivatorSet - Disconnecting from device


Т.е. при старте oldState=0, а потом становится =1:

Цитата:
07-25/10:08:39 INFO [sa-p-11-t-2] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=4; inetServId: 22; call: true; oldState: 0; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14


Цитата:
07-25/10:08:54 INFO [sa-p-11-t-1] ServiceActivatorDeviceWorker - Processing deviceId:7; command ServiceActivatorEvent type=2; inetServId: 22; call: true; oldState: 1; newState: 0; oldOptionSet: 20,43,738,13,14; newOptionSet: 20,43,738,13,14


Как правильно реализовать Reject-To-Accept?


Последний раз редактировалось Cromeshnic 25 июл 2012, 13:04, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 июл 2012, 13:03 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Ещё такой момент.
Подключаем сессию при положительном балансе, затем загоняем в минуса - всё ок, отрабатывает connectionModify, уходит CoA с редиректом.
Но после этого, если баланс опять сделать положительным, connectionModify не вызыватеся - только serviceModify.
Это нормально?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 210 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.269s | 79 Queries | GZIP : On ]