Локальный траффик считает по тарифу глобального

Установка, настройка, поддержка
Ответить
Serg
Сообщения: 10
Зарегистрирован: Вс окт 15, 2006 12:17 pm

Локальный траффик считает по тарифу глобального

Сообщение Serg »

День добрий!
Встановив абілс, настроїв та пропатчив все що потрібно, встановив тип НАС в lepppd... почав тестувати
вивід лога радіуса:
Thread 1 got semaphore
Thread 1 handling request 20, (5 handled so far)
Acct-Session-Id = "45EEF6ED1A8F00"
User-Name = "test"
Acct-Status-Type = Stop
Service-Type = Framed-User
Framed-Protocol = PPP
Acct-Authentic = RADIUS
Acct-Session-Time = 544
Acct-Output-Octets = 39835955
Acct-Input-Octets = 616602
Acct-Output-Packets = 28483
Acct-Input-Packets = 15398
PPPD-Output-Packets-Zones-0 = 16
PPPD-Input-Packets-Zones-0 = 15398
PPPD-Output-Octets-Zones-0 = 1
PPPD-Input-Octets-Zones-0 = 616602
PPPD-Output-Packets-Zones-1 = 0
PPPD-Input-Packets-Zones-1 = 0
PPPD-Output-Octets-Zones-1 = 0
PPPD-Input-Octets-Zones-1 = 0
PPPD-Output-Packets-Zones-2 = 0
PPPD-Input-Packets-Zones-2 = 135181464
PPPD-Output-Octets-Zones-2 = 0
PPPD-Input-Octets-Zones-2 = 0
PPPD-Output-Packets-Zones-3 = 0
PPPD-Input-Packets-Zones-3 = 0
PPPD-Output-Octets-Zones-3 = 0
PPPD-Input-Octets-Zones-3 = 0
Calling-Station-Id = "172.16.141.7"
NAS-Port-Type = Async
Acct-Terminate-Cause = User-Request
Framed-IP-Address = 172.16.146.95
NAS-IP-Address = 172.16.141.2
NAS-Port = 0
Acct-Delay-Time = 0
Processing the preacct section of radiusd.conf
modcall: entering group preacct for request 20
modcall[preacct]: module "preprocess" returns noop for request 20
rlm_acct_unique: Hashing 'NAS-Port = 0,Client-IP-Address = 172.16.141.2,NAS-IP-Address = 172.16.141.2,Acct-Session-Id = "45EEF6ED1A8F00",User-Name = "test"'
rlm_acct_unique: Acct-Unique-Session-ID = "667c50d734fddf86".
modcall[preacct]: module "acct_unique" returns ok for request 20
rlm_realm: No '@' in User-Name = "test", looking up realm NULL
rlm_realm: No such realm "NULL"
modcall[preacct]: module "suffix" returns noop for request 20
acct_users: Matched entry DEFAULT at line 19
modcall[preacct]: module "files" returns ok for request 20
modcall: leaving group preacct (returns ok) for request 20
Processing the accounting section of radiusd.conf
modcall: entering group accounting for request 20

по зоні 0 все підраховує вірно.

вивід радіуса при роботі з зоною 1:
Thread 2 got semaphore
Thread 2 handling request 26, (6 handled so far)
Acct-Session-Id = "45EEFB6A1CB600"
User-Name = "test"
Acct-Status-Type = Interim-Update
Service-Type = Framed-User
Framed-Protocol = PPP
Acct-Authentic = RADIUS
Acct-Session-Time = 240
Acct-Output-Octets = 39832875
Acct-Input-Octets = 607770
Acct-Output-Packets = 28506
Acct-Input-Packets = 15170
PPPD-Output-Packets-Zones-0 = 16
PPPD-Input-Packets-Zones-0 = 3
PPPD-Output-Octets-Zones-0 = 0
PPPD-Input-Octets-Zones-0 = 696
PPPD-Output-Packets-Zones-1 = 28465
PPPD-Input-Packets-Zones-1 = 15167
PPPD-Output-Octets-Zones-1 = 39832875
PPPD-Input-Octets-Zones-1 = 607074
PPPD-Output-Packets-Zones-2 = 0
PPPD-Input-Packets-Zones-2 = 135134528
PPPD-Output-Octets-Zones-2 = 0
PPPD-Input-Octets-Zones-2 = 0
PPPD-Output-Packets-Zones-3 = 0
PPPD-Input-Packets-Zones-3 = 0
PPPD-Output-Octets-Zones-3 = 0
PPPD-Input-Octets-Zones-3 = 0
Calling-Station-Id = "172.16.141.7"
NAS-Port-Type = Async
Framed-IP-Address = 172.16.146.95
NAS-IP-Address = 172.16.141.2
NAS-Port = 0
Acct-Delay-Time = 0
Processing the preacct section of radiusd.conf
modcall: entering group preacct for request 26
modcall[preacct]: module "preprocess" returns noop for request 26
rlm_acct_unique: Hashing 'NAS-Port = 0,Client-IP-Address = 172.16.141.2,NAS-IP-Address = 172.16.141.2,Acct-Session-Id = "45EEFB6A1CB600",User-Name = "test"'
rlm_acct_unique: Acct-Unique-Session-ID = "6b8453a6ac432d06".
modcall[preacct]: module "acct_unique" returns ok for request 26
rlm_realm: No '@' in User-Name = "test", looking up realm NULL
rlm_realm: No such realm "NULL"
modcall[preacct]: module "suffix" returns noop for request 26
acct_users: Matched entry DEFAULT at line 16
modcall[preacct]: module "files" returns ok for request 26
modcall: leaving group preacct (returns ok) for request 26
Processing the accounting section of radiusd.conf
modcall: entering group accounting for request 26
radius_xlat: '/var/log/radius/radacct/172.16.141.2/detail-20070307'
rlm_detail: /var/log/radius/radacct/%{Client-IP-Address}/detail-%Y%m%d expands to /var/log/radius/radacct/172.16.141.2/detail-20070307
modcall[accounting]: module "detail" returns ok for request 26
modcall[accounting]: module "unix" returns noop for request 26
radius_xlat: '/var/log/radius/radutmp'
radius_xlat: 'test'
modcall[accounting]: module "radutmp" returns ok for request 26
modcall: leaving group accounting (returns ok) for request 26
radius_xlat: '/usr/abills/libexec/racct.pl'
Exec-Program: /usr/abills/libexec/racct.pl
Sending Accounting-Response of id 245 to 172.16.141.2 port 32769
Finished request 26
Going to the next request
Thread 2 waiting to be assigned a request

З лога видно, що по зонах розкидано вірно, а підрахунок ведеться по тарифу зони 0.

В чому може бути проблема?
Аналогічна ситуація спостерігаеться під mandriva 2006 & SuSe 10.1
Вона не залежить від версії радіуса (перевіряв на декількох версіях)
В данний момент
abills 0,35
freeradius 1.1.3
SuSe 10.1

Serg
Сообщения: 10
Зарегистрирован: Вс окт 15, 2006 12:17 pm

Сообщение Serg »

Мабуть розібрався, але попрошу, вкого є можливість перевірити.
Річ в тім, що у мене, радіус передає такі параметри:

(1)-Сумарний трафік по всіх зонах
Acct-Output-Octets = 39832875
Acct-Output-Packets = 28506

(2)-Трафік по зоні 1
PPPD-Output-Octets-Zones-1 = 39832875
PPPD-Output-Packets-Zones-1 = 28465

Якщо з (1) не вибрати (2) то і получається, що рахується по глобальному тарифу
Тому і прошу, в кого є можливість закинути в цей пост частинку лога радіуса (radiusd -xx) слідуючого зміста:

Код: Выделить всё

Acct-Output-Octets = 39832875 
Acct-Input-Octets = 607770 
Acct-Output-Packets = 28506 
Acct-Input-Packets = 15170 
PPPD-Output-Packets-Zones-0 = 16 
PPPD-Input-Packets-Zones-0 = 3 
PPPD-Output-Octets-Zones-0 = 0 
PPPD-Input-Octets-Zones-0 = 696 
PPPD-Output-Packets-Zones-1 = 28465 
PPPD-Input-Packets-Zones-1 = 15167 
PPPD-Output-Octets-Zones-1 = 39832875 
PPPD-Input-Octets-Zones-1 = 607074 
PPPD-Output-Packets-Zones-2 = 0 
PPPD-Input-Packets-Zones-2 = 135134528 
PPPD-Output-Octets-Zones-2 = 0 
PPPD-Input-Octets-Zones-2 = 0 
PPPD-Output-Packets-Zones-3 = 0 
PPPD-Input-Packets-Zones-3 = 0 
PPPD-Output-Octets-Zones-3 = 0 
PPPD-Input-Octets-Zones-3 = 0 
Це не суттєво тим в кого зони дві - глобальна, що тарифікується та локальна, що не тарифікується.

Але,якщо у Вас тарифікується і локальний траффік, то в цьому виникає вже нагальна потреба.

І питання до ~Asmodeus~:
Якщо я вірно зрозумів з сирців Billing.pm то у Вас для лінукса можлива
лише одна зона з локальною тарифікацією - зона 1 ?[/code]

Stas
Сообщения: 64
Зарегистрирован: Ср май 31, 2006 6:07 am

Сообщение Stas »

Serg писал(а):Мабуть розібрався, але попрошу, вкого є можливість перевірити.
Річ в тім, що у мене, радіус передає такі параметри:

(1)-Сумарний трафік по всіх зонах
Acct-Output-Octets = 39832875
Acct-Output-Packets = 28506

(2)-Трафік по зоні 1
PPPD-Output-Octets-Zones-1 = 39832875
PPPD-Output-Packets-Zones-1 = 28465

Якщо з (1) не вибрати (2) то і получається, що рахується по глобальному тарифу
Я не зрозумів, навіщо такі складнощі :( Є зона 0, у яку попадає весь трафік, що не попав у інші зони. Тому якщо є локальний і глобальний, то достатньо отримувати PPPD-Output-Packets-Zones-0, PPPD-Input-Packets-Zones-0, PPPD-Output-Octets-Zones-0, PPPD-Input-Octets-Zones-0, PPPD-Output-Packets-Zones-1, PPPD-Input-Packets-Zones-1, PPPD-Output-Octets-Zones-1, PPPD-Input-Octets-Zones-1 - тобто зконфігурувати лише зону 1. А взагалі щось не так у цьому radius-пакеті... можна поглянути на config.xml?

Ответить