BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
 Заголовок сообщения: Проверка ip-адреса
СообщениеДобавлено: 21 май 2018, 19:18 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Абоненту выдан диапазон адресов. Где и как сделать проверку что он подключается с адреса попадающего в данный диапазон? На данный момент если абонент вводит себе другой адрес авторизация проходит успешно.

inet: вер. 7.1.579 / 22.02.2018 12:21:46


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 21 май 2018, 19:39 
Не в сети
Разработчик
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 21 май 2018, 19:53 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
ipoe. vlan-per-user (почти). у клиента может быть несколько устройств одновременно включенных.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 21 май 2018, 20:14 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А какая авторизация проходит успешно? RADIUS-запрос от Cisco или что?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 21 май 2018, 20:22 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
accel-ppp
авторизация по логину например User-Name=eth2.10
так же при статическом адресе передается аттрибут Framed-IP-Address=172.16.0.6
как то можно его проверить попадает ли он в клиентский диапазон?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 13:56 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
неужели нет авторизации по логину + ip?
или как обычно костыли через предобработку?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 16:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Обычно биллинг выдает адрес по DHCP и после этого пускает адреса, которым выдал IP.
Или для "IP Subscriber + DHCP DISCOVER" выдает адрес и в RADIUS и в DHCP.
А там уже коммутатор не дает использовать адрес, который не был выдан через DHCP.

У вас адреса у абонентов назначены статически?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 16:18 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Абонент может использовать как статический, так и динамический адрес. с динамикой все в порядке, адрес выдается из диапазона клиента, а вот если вписать адрес статикой, то биллинг этот момент игнорирует.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 17:49 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Сейчас есть дополнительный поиск по адресу, но он берет значение IP-адреса из User-Name (т.е. сначала поиск идет по порту/VLAN по значениям из NAS-Port-Id или Option82-атрибутов, а далее дополнительный по IP из User-Name). Но User-Name у вас сейчас уже используется для поиска по логину.

На этой неделе наверно выложим обновление, чтобы при поиске по IP-адресу в случае, если IP нет в User-Name, пытался его достать из Framed-IP-Address.

Нужно только уточнить как работает:
Framed-IP-Address в Access-Request есть только в случае если абонент указал статический адрес? Если динамический - Framed-IP-Address отсутствует?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 17:56 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Т.е. в случае, если Framed-IP-Address отсутствует, то проверку IP-адреса не делаем и пускаем?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 22 май 2018, 18:00 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Да. Framed-IP-Address только если вписан статический адрес.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 30 май 2018, 22:58 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Выложили обновление, в конфигурации NAS-а нужно указать:
Код:
radius.address.fromRequest.check=1
В этом случае при наличии Framed-IP-Address при авторизации будет производится проверка, что такой адрес присутсвует в диапазоне сервиса.

Вместе с этим параметром рекомендуется использовать ранее существующий:
Код:
radius.address.fromRequest=1
С ним при наличии Framed-IP-Address в Access-Request будет выдан данный адрес (если авторизация пройдет удачно). Иначе, если в сервисе указан диапазон или подсеть - в Access-Accept будет первый свободный IP-адрес из диапазона/подсети сервиса и он может не совпасть c Framed-IP-Address из запроса.

Не забудьте сделать бэкап старых библиотек.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 04 июн 2018, 14:45 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Обновил модуль, не работает проверка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 04 июн 2018, 17:00 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Подробности нужны, вывод статуса InetAccess. Оба параметра указаны в конфиге устройства/типа устройства?
Лишних пробелов, опечаток в имени параметра нет?

Если NAS работает так как описывали, то должно работать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 04 июн 2018, 17:48 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Код:
Java Runtime: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM [1.8.0_162] /opt/java/jdk1.8.0_162/jre
  Runtime name: 2121@bgbilling-inet
  Java endorsed dirs: /lib/endorsed:/opt/java/jdk8/lib/endorsed
  OS: Linux 3.16.0-4-amd64 [amd64], file.encoding: UTF-8, user.name: root
  Heap sizes: current=15872k  free=14963k  max=249472k
Kernel version 7.1.964 / 16.03.2018 19:41:34
Inet version 7.1.595 / 31.05.2018 19:58:55

IP pool [radius.realm.default.ipCategories] ipCategoryIds: [1], size: 250, occupied: 13, reserved: 0, localRsrvd: 0, fetchSize: 50

Radius:
  accounting-requests per minute start: 0; stop: 0; update: 0
  access-requests per minute accept: 0; reject: 34
  ignore per minute access-request: 0; accounting: 0; accounting-update: 0
Antispam ban count: 0; used per minute: 0
InetDhcpProcessor:
  discovers per minute (1m/10m/1h): 0.00/0.00/0.00; requests per minute (1m/10m/1h): 0.00/0.00/0.00; others per minute (1m/10m/1h): 0.00/0.00/0.00
  offer per minute (1m/10m/1h): 0.00/0.00/0.00; ack per minute (1m/10m/1h): 0.00/0.00/0.00; nak per minute (1m/10m/1h): 0.00/0.00/0.00
  connection start avg time (ms): 0.00

DhcpListener:
  dhcp-requests per minute (1m/10m/1h): 0.00/0.00/0.00


Started: 04.06.2018 14:40:40    Uptime: 0 d 00:03:38
Memory total: 30 470 144; max: 259 522 560; free: 9 764 480
Memory pools:
  Non-heap memory[Code Cache]: max: 251 658 240; used: 13 431 040; peek: 13 474 880
  Non-heap memory[Metaspace]: max: -1; used: 36 415 320; peek: 36 415 320
  Non-heap memory[Compressed Class Space]: max: 1 073 741 824; used: 4 413 520; peek: 4 413 520
  Heap memory[Eden Space]: max: 71 630 848; used: 1 516 112; peek: 8 454 144
  Heap memory[Survivor Space]: max: 8 912 896; used: 49 088; peek: 1 048 568
  Heap memory[Tenured Gen]: max: 178 978 816; used: 19 144 688; peek: 19 144 688
Buffer pools:
  [direct]: count: 12; memoryUsed: 1 048 859
  [mapped]: count: 1; memoryUsed: 67
Thread count: 227
Trees in cache: 0
Connections pool to Master status Idle: 3; Active: 0; maxActive: 300; maxIdle: 20


сейчас вообще получаю ошибку
Код:
radius 06-04/14:46:41  INFO [rdsLstnr-p-7-t-4] RadiusListenerWorker - REQUEST:
Packet type: Access-Request
Identifier: 1
Authenticator: {41 89 65 49 5A 7A 41 04 E6 5D F8 BA 95 11 6B E7}
Attributes:
  NAS-Identifier=accel-ppp
  User-Name=eth1.10
  User-Password=eth1.10
  NAS-IP-Address=100.64.1.4
  NAS-Port=79
  NAS-Port-Id=ipoe0
  Framed-IP-Address=172.16.0.2
  NAS-Port-Type=15
  Called-Station-Id=eth1.10
  Calling-Station-Id=50:af:73:5e:bb:8d

radius 06-04/14:46:41  INFO [rdsLstnr-p-7-t-4] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 1
Authenticator: {41 89 65 49 5A 7A 41 04 E6 5D F8 BA 95 11 6B E7}
Attributes:
  NAS-Identifier=accel-ppp
  User-Name=eth1.10
  User-Password=eth1.10
  NAS-IP-Address=100.64.1.4
  NAS-Port=79
  NAS-Port-Id=ipoe0
  Framed-IP-Address=172.16.0.2
  NAS-Port-Type=15
  Called-Station-Id=eth1.10
  Calling-Station-Id=50:af:73:5e:bb:8d

radius 06-04/14:46:41  INFO [rdsLstnr-p-7-t-4] InetNas - Search by username=eth1.10
radius 06-04/14:46:41  INFO [rdsLstnr-p-7-t-4] InetRadiusProcessor - [username=eth1.10] Authenticated as inetServId:1
radius 06-04/14:46:41  INFO [rdsLstnr-p-7-t-4] InetRadiusListenerWorker - RESPONSE (5ms):
Packet type: Access-Reject
Identifier: 1
Authenticator: {C4 93 C9 AC 55 B0 53 36 62 52 96 B3 D5 41 6D C7}
Attributes:

Process time auth: 6

radius 06-04/14:46:41 ERROR [rdsLstnr-p-7-t-4] RadiusListenerWorker - ru.bitel.bgbilling.kernel.contract.runtime.ContractRuntime.getDomainId()I
java.lang.NoSuchMethodError: ru.bitel.bgbilling.kernel.contract.runtime.ContractRuntime.getDomainId()I
        at ru.bitel.bgbilling.modules.inet.runtime.InetApplication.tarifficate(InetApplication.java:412)
        at ru.bitel.bgbilling.modules.inet.runtime.InetApplication.authorization(InetApplication.java:995)
        at ru.bitel.bgbilling.modules.inet.runtime.InetApplication.authorization(InetApplication.java:920)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authorization(InetRadiusProcessor.java:895)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authenticationImpl(InetRadiusProcessor.java:676)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:488)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.authentication(InetRadiusProcessor.java:88)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.authentication(RadiusSession.java:115)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusSession.accessRequest(RadiusSession.java:92)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequestImpl(RadiusProcessor.java:480)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:404)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor.accessRequestImpl(InetRadiusProcessor.java:88)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusProcessor.accessRequest(RadiusProcessor.java:465)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:65)
        at ru.bitel.bgbilling.modules.inet.radius.InetRadiusListenerWorker.accessRequest(InetRadiusListenerWorker.java:36)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.processPacket(RadiusListenerWorker.java:304)
        at ru.bitel.bgbilling.kernel.network.radius.RadiusListenerWorker.runImpl(RadiusListenerWorker.java:158)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 04 июн 2018, 17:59 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Нельзя обновлять только один модуль, нужно обновлять всё вместе, т.е. ядро - тоже.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проверка ip-адреса
СообщениеДобавлено: 04 июн 2018, 18:17 
Не в сети
Аватара пользователя

Зарегистрирован: 14 ноя 2017, 17:15
Сообщения: 18
Карма: 0
Ага, спасибо, похоже все заработало.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ] 

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

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