forum.bitel.ru http://forum.bitel.ru/ |
|
Решение SmartEdge 100 с авторизацией по порту коммутатора http://forum.bitel.ru/viewtopic.php?f=44&t=5361 |
Страница 3 из 7 |
Автор: | Администратор [ 24 окт 2011, 14:23 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Добавил. Спасибо. |
Автор: | Anayalore [ 21 дек 2011, 20:56 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
А планируется ли гайд на вики по этой теме для статик CLIPS ? |
Автор: | Администратор [ 29 дек 2011, 12:48 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
А статик CLIPS это что такое? |
Автор: | Anayalore [ 29 дек 2011, 13:55 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Основным отличием такого типа CLIPS доступа (от Dynamic CLIPS, пример для которого висит на вики) является то, что SmartEdge не участвует в назначении IP адреса для абонента. Но сам IP адрес для данного абонента всегда известен и не меняется. Такой способ доступа в SmartEdge называется Static CLIPS. Уже разобрался, настраивается так же, только DHCP не используется. |
Автор: | sergey-xxi [ 28 янв 2012, 18:56 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Пытаемся сейчас настроить данное решение. Документации по параметрам inet-accounting.xml и inet-access.xml я так понял что еще просто нет. |
Автор: | stark [ 31 янв 2012, 15:08 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
sergey-xxi писал(а): Пытаемся сейчас настроить данное решение. Документации по параметрам inet-accounting.xml и inet-access.xml я так понял что еще просто нет. Спрашивайте - опишем . Там не так уж много параметров. |
Автор: | Alex-XXI [ 13 фев 2012, 18:07 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
У нас схема немного отличающаяся от вики: Клиент - Коммутатор с Options.82 - Коммутатор L3 (DHCP-relay) - SE100 - Мир | Сервер биллинга Коммутатор L3 является DHCP-релеем, перенаправляет DHCP-запросы на редбек и одновременно является шлюзом для абонентов. Конфиг редбека: Код: context IPOE ! no ip domain-lookup ! # Интерфейс, к которому будут "биндиться" абоненты после авторизации interface CLIENTS multibind ip address 10.25.0.1/24 dhcp proxy 65535 ip arp secured-arp ! # Интерфейс, к которому будут "биндиться" абоненты, не прошедшие авторизацию (аналог Reject-To-Accept) interface NOAUTH multibind ip address 10.26.0.1/24 dhcp proxy 65535 ! # Интерфейс для общения с Radius-сервером interface loop0 loopback ip address 192.168.3.1/32 ip source-address radius dhcp-server no logging console ! # Акцесс-лист для абонентов, не прошедших авторизацию. Разрешает работу DNS и DHCP, а также позволяет выйти на страницу управления и сайт провайдера. policy access-list HTTP-REDIRECT seq 10 permit tcp any host x.x.x.x eq www class CLS-NORMAL seq 19 permit udp any host x.x.x.x eq domain class CLS-NORMAL seq 20 permit tcp any host x.x.x.x eq www class CLS-NORMAL seq 21 permit udp any eq bootpc host x.x.x.x eq bootps class CLS-NORMAL seq 22 permit udp any eq bootpc host 10.26.0.1 eq bootps class CLS-NORMAL seq 30 permit tcp any any eq www class CLS-REDIRECT seq 40 permit ip any any class CLS-DROP ! # Классы для разделения трафика по зонам (локальный и внешний) 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 x.x.x.x 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 x.x.x.x 0.0.3.255 any class INTERNAL seq 30 permit ip any any class EXTERNAL ! # Профиль http-редиректа (всех не прошедних авторизацию перенаправлять на страницу с ошибкой) http-redirect profile NOAUTH url "http://www.site.ru" ! # Настройки Radius aaa authentication administrator local aaa authentication administrator maximum sessions 1 aaa authentication subscriber radius aaa accounting subscriber radius aaa update subscriber 10 aaa accounting event dhcp aaa hint ip-address radius accounting server 192.168.7.5 encrypted-key XXXXXXXXXXXXXXX port 11813 radius coa server 192.168.7.5 encrypted-key XXXXXXXXXXXXXXX port 3799 ! radius server 192.168.7.5 encrypted-key XXXXXXXXXXXXXXX port 11812 radius attribute nas-ip-address interface loop0 radius attribute nas-port format session-info radius attribute nas-identifier Redback-IPOE ! # Полиси по умолчанию для абонента (переопределяется через Radius-атрибуты) subscriber default qos policy policing DEF-IPOE-IN qos policy metering DEF-IPOE-OUT ! # Профиль сервиса. В нем задаются параметры подключения (скорость), а также указывается на то, что учет трафика необходимо вести по qos классу EXTERNAL 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 ! ip route 0.0.0.0/0 context local ! # Адрес DHCP-сервера dhcp relay server 192.168.4.1 #здесь указан адрес коммутатора L3 ! В логах биллинга пусто, подскажите куда копать? |
Автор: | rush [ 13 фев 2012, 22:49 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Копать в сторону выяснения того, приходят ли на биллинг Radius-запросы. И уточните, на каком порту слушают BGInetAccess и BGInetAccounting. У вас в конфиге это 11812 и 11813, а по умолчанию там 1812 и 1813 |
Автор: | sergey-xxi [ 16 фев 2012, 19:25 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
теперь стали приходить dhcp запросы, но дальше дело не идет. Должны ли радиус запросы приходить в месте dhcp-запросами? Или они приходят после того как серв dhcp отвечает. Код: dhcp 02-16/21:09:00 INFO [dhcpLstnr-p-13-t-10] InetAbstractDhcpProcessor - REQUEST_AFTER_PREPROCESS: Message type: BOOT_REQUEST Dhcp message type: DHCP Discover{1} htype: 1, hlen: 6, hops: 1 xid: 1569594634, secs: 7168, flags: -32768 Client IP: 0.0.0.0 Your IP: 0.0.0.0 Server IP: 0.0.0.0 Relay IP: 192.168.3.1 Client MAC: {0034A1340011} {116}={01} {61}={010034A1340011} Requested IP Address{50}=192.168.4.10 Host name{12}={sercomp} {60}={4D53465420352E30} Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, -7, 43} Agent information{82}= sub{1}={00040003010F} sub{2}={00060012CFF2A740} dhcp 02-16/21:09:00 INFO [dhcpLstnr-p-13-t-10] InetDhcpDevice - SearchMode: 1; vlan: 3; interfaceId: 15; remoteId: 0012CFF2A740 dhcp 02-16/21:09:00 INFO [dhcpLstnr-p-13-t-10] InetDhcpProcessor - InetServ not found. смущает вот эта строчка InetDhcpProcessor - InetServ not found |
Автор: | sergey-xxi [ 02 мар 2012, 19:59 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
С предыдущим постом разобрались, релей слал запросы на прямую к биллингу, а не через редбэк. Теперь другая проблема, нет dhcp запросов то есть accesse-request приходит, далее идет access-accept а dhcp-discover нет! Код: adius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS: Packet type: Access-Request Identifier: 40 Authenticator: {A4 DC 11 34 ED A3 9A 29 62 74 B9 0B E6 C2 C3 8F} Attributes: User-Name=0012cff2a740:14@test NAS-Port-Id=2/1 vlan-id 26 clips 147960 NAS-Identifier=RedBack User-Password=RedBack NAS-IP-Address=192.168.12.247 NAS-Port=553648154 Service-Type=5 Calling-Station-Id=000c42823fd4 NAS-Port-Type=5 Called-Station-Id=192.168.4.1 Platform-Type=4 DHCP-Field={01 C0 A8 04 01} Medium-Type=11 Agent-Remote-Id={00 06 00 12 CF F2 A7 40} 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} Agent-Circuit-Id={00 04 00 03 01 14} OS-Version=6.5.1.4 Mac-Addr=00-0c-42-82-3f-d4 NAS-Real-Port=553648154 UNKNOWN[3561--1]={02 0A 00 06 00 12 CF F2 A7 40} UNKNOWN[3561--1]={01 08 00 04 00 03 01 14} radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusProcessor - [username=0012cff2a740:14] Authenticated as inetServId:17 radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] Access - inetServ[id=17] balance ok: 0.00 [0] radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetApplication - TariffOptionMap: {} radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusProcessor - Return code=0 radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS: Packet type: Access-Accept Identifier: 40 Authenticator: {} Attributes: Acct-Interim-Interval=900 Framed-IP-Address=192.168.4.188 DHCP-Max-Leases=1 Service-Name:1=RSE-SVC-EXT Service-Options:1=1 Service-Parameter:1=Rate=10000 Burst=1250000 IP-Interface-Name=subnet-192.168.4.0/24 Process time auth: 4 radius 03-02/17:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusListenerWorker - RESPONSE: Packet type: Access-Accept Identifier: 40 Authenticator: {16 E9 84 C7 F6 3B 84 3C 52 6A AB 79 89 8F 19 EA} Attributes: Acct-Interim-Interval=900 DHCP-Max-Leases=1 Service-Name:1=RSE-SVC-EXT Service-Options:1=1 Service-Parameter:1=Rate=10000 Burst=1250000 IP-Interface-Name=subnet-192.168.4.0/24 dhcp.log пуст. Слушаю трафик между биллингом и редбеком. Идут только радиус пакеты, DHCP запросов нет кто нибудь может выложить конфиг редбека, для сравнения. |
Автор: | rush [ 06 мар 2012, 11:37 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
debug dhcp-relay all debug clips all debug aaa all |
Автор: | Alex-XXI [ 10 мар 2012, 14:30 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Отключили в редбеке авторизацию через радиус, стали приходить отрелееные DHCP-запросы, но в логах биллинга сыпят ошибки, IP-адрес не выдается: Код: dhcp 03-10/12:28:09 INFO [dhcpLstnr-p-8-t-1] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST Dhcp message type: DHCP Discover{1} htype: 1, hlen: 6, hops: 2 xid: -373344361, secs: 11, flags: -32768 Client IP: 0.0.0.0 Your IP: 0.0.0.0 Server IP: 0.0.0.0 Relay IP: 192.168.4.254 Client MAC: {000C42823FD4} {61}={01000C42823FD4} Parameter request list{55}={1, 121, 3, 33, 6, 42} Host name{12}={test} Agent information{82}= sub{1}={000400030114} sub{2}={00060012CFF2A740} dhcp 03-10/12:28:09 INFO [dhcpLstnr-p-8-t-1] InetAbstractDhcpProcessor - REQUEST_AFTER_PREPROCESS: Message type: BOOT_REQUEST Dhcp message type: DHCP Discover{1} htype: 1, hlen: 6, hops: 2 xid: -373344361, secs: 11, flags: -32768 Client IP: 0.0.0.0 Your IP: 0.0.0.0 Server IP: 0.0.0.0 Relay IP: 192.168.4.254 Client MAC: {000C42823FD4} {61}={01000C42823FD4} Parameter request list{55}={1, 121, 3, 33, 6, 42} Host name{12}={test} Agent information{82}= sub{1}={14} sub{2}={0012CFF2A740} dhcp 03-10/12:28:09 ERROR [dhcpLstnr-p-8-t-1] InetDhcpProcessor - 2 java.lang.ArrayIndexOutOfBoundsException: 2 at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpDevice.searchServ(InetDhcpDevice.java:198) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processRequestImpl(InetDhcpProcessor.java:128) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:40) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:1) at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:52) at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40) |
Автор: | Amir [ 10 мар 2012, 14:59 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Цитата: Agent information{82}= По умолчанию из option82 извлекаются данные как для dlink'аsub{1}={14} sub{2}={0012CFF2A740} Код: #код субопции У вас, возможно, vlan находится в субопции 2. Или можно указать dhcp.82.vlanOptionCode=-1, чтобы значение vlan не извлекалось, если вдруг оно не нужно.dhcp.82.vlanOptionCode=1 #положение значения vlan в субопции (из-за этого ошибка появляется, т.к. со второго байта пытается считать, к тому же длиной два байта) dhcp.82.vlanPosition=2 dhcp.82.interfaceOptionCode=1 dhcp.82.interfacePosition=5 Но без Radius-Access по такой схеме работать вроде бы не будет, т.к. параметры доступа выдаются через Access-Accept, и ip, который выдастся определяется тогда же. |
Автор: | Alex-XXI [ 10 мар 2012, 15:47 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Amir писал(а): Цитата: Agent information{82}= По умолчанию из option82 извлекаются данные как для dlink'аsub{1}={14} sub{2}={0012CFF2A740} Код: #код субопции У вас, возможно, vlan находится в субопции 2. Или можно указать dhcp.82.vlanOptionCode=-1, чтобы значение vlan не извлекалось, если вдруг оно не нужно.dhcp.82.vlanOptionCode=1 #положение значения vlan в субопции (из-за этого ошибка появляется, т.к. со второго байта пытается считать, к тому же длиной два байта) dhcp.82.vlanPosition=2 dhcp.82.interfaceOptionCode=1 dhcp.82.interfacePosition=5 Но без Radius-Access по такой схеме работать вроде бы не будет, т.к. параметры доступа выдаются через Access-Accept, и ip, который выдастся определяется тогда же. Тогда может подскажите в чем проблема. Радиус отправляет access-accept, но редбек все равно не отрелеивает DHCP-запрос. В access-accept отправляем по минимуму: Код: radius 03-10/12:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusListenerWorker - RESPONSE: Packet type: Access-Accept Identifier: 40 Authenticator: {16 E9 84 C7 F6 3B 84 3C 52 6A AB 79 89 8F 19 EA} Attributes: DHCP-Max-Leases=1 IP-Interface-Name=clients При получении этого пакета редбек в дебаге пишет Код: %AAA-7-EXCEPT: rad_process_received_pkt: Could not find rad_msg (227) from srv tbl Конфиг редбека: Код: context local
! interface clients multibind ip address 192.168.4.254/24 dhcp proxy 250 ! interface vlan2 ip address 192.168.12.247/25 ip source-address radius dhcp-server ! interface vlan26 ip address 192.168.10.3/24 ! aaa authentication subscriber radius aaa hint ip-address radius coa server 192.168.12.221 encrypted-key .......... port 3799 ! radius server 192.168.12.221 encrypted-key .......... radius attribute nas-ip-address interface vlan2 radius attribute nas-port format session-info radius attribute nas-identifier RedBack ! subscriber default dhcp max-addrs 1 subscriber profile clients dhcp max-addrs 1 ip interface name clients ! ip route 192.168.4.0/24 192.168.10.11 connected tag 777 ! dhcp relay option dhcp relay server 192.168.12.221 ! port ethernet 2/1 no shutdown medium-type copper encapsulation dot1q dot1q pvc 2 bind interface vlan2 local ! port ethernet 2/3 no shutdown bind interface vlan26 local service clips dhcp context local |
Автор: | Alex-XXI [ 10 мар 2012, 15:51 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Amir писал(а): Но без Radius-Access по такой схеме работать вроде бы не будет, т.к. параметры доступа выдаются через Access-Accept, и ip, который выдастся определяется тогда же. Тогда может подскажите в чем проблема. Радиус отправляет access-accept, но редбек все равно не отрелеивает DHCP-запрос. В access-accept отправляем по минимуму: Код: radius 03-10/12:52:25 INFO [rdsLstnr-p-6-t-1] InetRadiusListenerWorker - RESPONSE: Packet type: Access-Accept Identifier: 40 Authenticator: {16 E9 84 C7 F6 3B 84 3C 52 6A AB 79 89 8F 19 EA} Attributes: DHCP-Max-Leases=1 IP-Interface-Name=clients При получении этого пакета редбек в дебаге пишет Код: %AAA-7-EXCEPT: rad_process_received_pkt: Could not find rad_msg (227) from srv tbl Конфиг редбека: Код: context local
! interface clients multibind ip address 192.168.4.254/24 dhcp proxy 250 ! interface vlan2 ip address 192.168.12.247/25 ip source-address radius dhcp-server ! interface vlan26 ip address 192.168.10.3/24 ! aaa authentication subscriber radius aaa hint ip-address radius coa server 192.168.12.221 encrypted-key .......... port 3799 ! radius server 192.168.12.221 encrypted-key .......... radius attribute nas-ip-address interface vlan2 radius attribute nas-port format session-info radius attribute nas-identifier RedBack ! subscriber default dhcp max-addrs 1 subscriber profile clients dhcp max-addrs 1 ip interface name clients ! ip route 192.168.4.0/24 192.168.10.11 connected tag 777 ! dhcp relay option dhcp relay server 192.168.12.221 ! port ethernet 2/1 no shutdown medium-type copper encapsulation dot1q dot1q pvc 2 bind interface vlan2 local ! port ethernet 2/3 no shutdown bind interface vlan26 local service clips dhcp context local |
Автор: | Amir [ 10 мар 2012, 16:33 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
В 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 |
Автор: | Alex-XXI [ 10 мар 2012, 17:15 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Пробовали и с указанием сервисов, результат такой же, мистика какая-то. Периодически редбек дропает приходящие с биллинга 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-адрес не выдется |
Автор: | Amir [ 10 мар 2012, 22:34 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Цитата: Причиной оказалось, что биллинг по какой-то причине не использует секрет из параметра "radius.secret" конфига устройства. Да, секрет брался только из поля Секрет/community устройства. Выложили новый билд модуля, где параметр конфига radius.secret будет переопределять это значение.
|
Автор: | Alex-XXI [ 10 мар 2012, 22:52 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Проблема с DHCP была в том, что использовался InetDhcpProcessor вместо InetDhcpHelperProcessor, с последним все сразу заработало. |
Автор: | sergey-xxi [ 13 мар 2012, 20:53 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
пытаемся сейчас настроить 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 заменили на - все стало работать |
Автор: | Alex-XXI [ 16 мар 2012, 21:44 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Подскажите в чем может быть проблема с аккаунтингом. Пакеты приходят в такой последовательности:
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 |
Автор: | Amir [ 16 мар 2012, 22:45 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Возможно что-то с привязкой трафика не так. Можно скриншот? |
Автор: | Amir [ 17 мар 2012, 00:39 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Сервисная сессия создается? Имя сервиса в сервисном радиус пакете точно SE? |
Автор: | Alex-XXI [ 17 мар 2012, 00:57 ] | ||
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор | ||
Amir писал(а): Сервисная сессия создается? Имя сервиса в сервисном радиус пакете точно SE? Предполагаю, что нет. В мониторе сессий сессия есть, но если выбрать у нее сервисные сессии, то там пусто. В договоре в отчете сессии есть, но сервисных сессий также нет. В приложении лог InetAccounting при старте сессии.
|
Автор: | Amir [ 17 мар 2012, 02:22 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
В типе устройства SE прописан SmartedgeClipsProtocolHandler как обработчик процессора протокола? |
Автор: | Alex-XXI [ 17 мар 2012, 13:39 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
В качестве обработчика протокола прописан класс 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; } } } |
Автор: | Amir [ 17 мар 2012, 15:25 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Поменяйте обработчики на ru.bitel.bgbilling.modules.inet.dyn... |
Автор: | Alex-XXI [ 17 мар 2012, 15:58 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Поменять название не проблема, проблема, что в этом классе должно быть. Для метода preprocessAccountingRequest в вики 2 варианта, а еще в биллинге есть 3 варианта. Какой все-таки нужно использовать? |
Автор: | Amir [ 17 мар 2012, 16:36 ] |
Заголовок сообщения: | Re: Решение SmartEdge 100 с авторизацией по порту коммутатор |
Нужно использовать те, что в биллинге уже есть, в ru.bitel.bgbilling.modules.dyn.device.redback. |
Страница 3 из 7 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |