BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 20 ] 
Автор Сообщение
СообщениеДобавлено: 06 сен 2017, 22:26 
Не в сети
Клиент

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
есть такая настройка:
Код:
#DISABLE
dhcp.servSearchMode=1-2
dhcp.disable.mode=0
dhcp.disable.ipCategories=170
dhcp.disable.servId=21932

при условии что существующий сервис приостановлен - выдает адрес из 170 пула - привязывает соединение к существующему сервису, при активном сервисе - выдает адрес из настроек сервиса.
если сервиса нет на этом устройстве\порту:
Код:
09-06/19:22:44  INFO [dhcpLstnr-p-8-t-3] InetDhcpDevice - Search serv on deviceId: 565; 1; interfaceId: 23
09-06/19:22:44  INFO [dhcpLstnr-p-8-t-3] InetDhcpProcessor - InetServ not found.

если сервис есть, но удален с даты:
Код:
09-06/19:24:35 DEBUG [dhcpLstnr-p-8-t-5] InetServRuntimeMap - inetServ[565:23] exist but with time period not.
09-06/19:24:35  INFO [dhcpLstnr-p-8-t-5] InetDhcpProcessor - InetServ not found.


а как сделать так, чтобы если сервиса нет или он удален с даты, то его соединение создавалось на сервисе которое указано в dhcp.disable.servId


Код:
 Сервер: вер. 7.0.1256 / 07.08.2017 03:07:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  inet: вер. 7.0.767 / 07.08.2017 13:39:01


Последний раз редактировалось Dog 06 сен 2017, 23:02, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 сен 2017, 22:38 
Не в сети
Клиент

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
собственно о сервисе:
Код:
ContractId: 12641; status: 0; servId: 21932
        DISABLED SERVICE
        Options [] TariffModuleTreeSet []
        Device state: 0; optionSet:
        Balance: 0.00 [1.00]

у сервиса указано только устройство, которое является родительским с коммутатору доступа и является DHCP релеем.


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Нужно использовать
ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor2
в inet-access.xml чтобы disable.servId работал.

С 7.0 он вроде бы по умолчанию установлен в inet-access.xml
С 7.1 InetDhcpProcessor == InetDhcpProcessor2


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

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
да, с ним все заработало. спасибо

Код:
С 7.0 он вроде бы по умолчанию установлен в inet-access.xml

в моем от 20 февраля этого года там еще InetDhcpProcessor


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 сен 2017, 20:05 
Не в сети
Клиент

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
:!: поправка
почему то на InetDhcpProcessor2 при переходе сервиса из Активен <=> Отключен(Недостаточно средств) адрес продолжает выдаваться тот, который выдавался до, т.е. либо реальный, либо из disabled. по сути не работает? dhcp.connection.closeOnNew=1. Вернулся на InetDhcpProcessor


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 сен 2017, 04:45 
Не в сети
Клиент

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
Я так понимаю надо сделать по аналогии с radius.connection.checkDuplicate


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 сен 2017, 15:19 
Не в сети
Клиент

Зарегистрирован: 21 сен 2009, 13:01
Сообщения: 835
Откуда: Москва
Карма: 15
решилось dhcp.connection.checkDuplicate=8


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В InetDhcpProcessor2 в отличие от старого не производится авторизация на каждый DHCP-запрос, если сессия уже есть.
Вместо этого он ожидает команды от InetAccounting на переключение состояния сессии подключена/отключена.
Если у сессии текущее состояние не равно необходимому (которое пришло от InetAccounting), то отвечает NAK.

Возможно дело в этом - InetAccounting не успел тарифицировать/авторизировать эту сессию.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 ноя 2017, 11:17 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
Добрый день!

У меня такая же ситуация на InetDhcpProcessor2: при недостатке средств на договоре или при приостановке договора адрес продолжает выдаваться тот, который выдавался до. В логах InetAccounting не найду записей, относящихся к этой сессии. Подскажите, куда копать?
Фрагмент лога BGInetAccess (DHCP обмен при приостановленном договоре):
Код:
mq 11-22/10:58:51 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 16406; scid: -1; userId: 0; type: 3; deviceId: 7; connectionId: 2266630; timestamp: 1511326731756
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: 850611512, secs: 646, flags: 0
Client IP: 192.168.76.149
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 77.221.218.114
Client MAC: {A8F94B288E5E}
  Client-ident.{61}={01A8F94B288E5E}
  Max Msg Size{57}=0
  Vendor class ident.{60}={456C7465782D4E563530315741432D726576412D656C7465782D312E302E32332D623738}
  Host name{12}={NV-501-Wac-revA}
  Param request list{55}={1, 121, 33, 3, 6, 12, 15, 28, 42, 51, 58, 59, 119}
  Agent information{82}=
    sub{1}={0004029A0009}
    sub{2}={0006802689EDB8BE}

dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - OP_BOOT_REQUEST
dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - Found device by giaddr id=16
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - REQUEST_AFTER_PREPROCESS:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: 850611512, secs: 646, flags: 0
Client IP: 192.168.76.149
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 77.221.218.114
Client MAC: {A8F94B288E5E}
  Client-ident.{61}={01A8F94B288E5E}
  Max Msg Size{57}=0
  Vendor class ident.{60}={456C7465782D4E563530315741432D726576412D656C7465782D312E302E32332D623738}
  Host name{12}={NV-501-Wac-revA}
  Param request list{55}={1, 121, 33, 3, 6, 12, 15, 28, 42, 51, 58, 59, 119}
  Agent information{82}=
    sub{1}={029A0009}
    sub{2}={0006802689EDB8BE}

dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - Found subDevice by identifier id=18
dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] InetDhcpProcessor2 - DHCP_REQUEST
dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] InetDhcpProcessor2 - request.giaddr= 77.221.218.114, clientAddress=/77.221.218.114:67
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] InetDhcpDevice - Search serv on deviceId: 18; 1; interfaceId: 9
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] InetDhcpProcessor2 - InetServ found: ContractId: 18834; status: 4; servId: 4580
   802689EDB8BE:9
   Options [] TariffModuleTreeSet [284:16.10.2017-…; ]
   Device state: 0; optionSet:2
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] InetDhcpProcessor2 - Updating of existing connection: InetConnection [id=2267108-0, iface=18:9, sessId=8836ac8f, start=22.11.2017 10:48:47, uname=null, addr=192.168.76.149]
dhcp 11-22/10:58:51  INFO [dhcpLstnr-p-11-t-4] AbstractInetDhcpProcessor2 - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP ACK{5}
htype: 1, hlen: 6, hops: 1
xid: 850611512, secs: 0, flags: 0
Client IP: 192.168.76.149
Your IP: 192.168.76.149
Server IP: 0.0.0.0
Relay IP: 77.221.218.114
Client MAC: {A8F94B288E5E}
  Agent information{82}=
    sub{1}={029A0009}
    sub{2}={0006802689EDB8BE}
  IP Address Lease Time{51}=120
  Server Identifier{54}={4DDDDA72}
  Router{3}=192.168.76.145
  Subnet mask{1}=255.255.255.248
  DNS{6}={4DDDC8024DDDCB02}

dhcp 11-22/10:58:51 DEBUG [dhcpLstnr-p-11-t-4] ProcessorRequest - Sending to /77.221.218.114:67
mq 11-22/10:58:51 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 6476; scid: -1; userId: 0; type: 3; deviceId: 7; connectionId: 2266484; timestamp: 1511326731900
mq 11-22/10:58:52 DEBUG [evpool-pblsh-p-4-t-1] EventProcessor - Publish: Event[pool:ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingManagePoolEvent] timestamp: 1511326732045; moduleId: 23; pluginId: -1; cid: -1; scid: -1; userId: -1
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 18834; scid: -1; userId: 0; type: 3; deviceId: 18; connectionId: 2267108; timestamp: 1511326732047
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 676; scid: -1; userId: 0; type: 3; deviceId: 9; connectionId: 2266227; timestamp: 1511326732247
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 10909; scid: -1; userId: 0; type: 3; deviceId: 9; connectionId: 2266632; timestamp: 1511326732497
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 9232; scid: -1; userId: 0; type: 3; deviceId: 7; connectionId: 2266732; timestamp: 1511326732507
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 485; scid: -1; userId: 0; type: 3; deviceId: 11; connectionId: 2266920; timestamp: 1511326732533
mq 11-22/10:58:52 DEBUG [event-proc-p-2-t-1] Consumer - Caught BGInetAccounting:Event[ru.bitel.bgbilling.modules.inet.accounting.event.InetAccountingEvent] moduleId: 23; pluginId: no; cid: 13751; scid: -1; userId: 0; type: 3; deviceId: 9; connectionId: 2253270; timestamp: 1511326732580




Код:
Сервер: вер. 7.0.1217 / 31.03.2017 15:26:50
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_102

  bill: вер. 7.0.119 / 22.03.2017 01:01:35
  card: вер. 7.0.43 / 21.03.2017 15:12:24
  dialup: вер. 7.0.319 / 29.08.2016 16:38:40
  drweb: вер. 7.0.73 / 08.04.2016 17:52:33
  email: вер. 7.0.181 / 02.12.2016 16:05:50
  inet: вер. 7.0.744 / 28.03.2017 21:55:20
  ipn: вер. 7.0.267 / 13.03.2017 11:35:50
  mps: вер. 7.0.212 / 28.03.2017 21:55:49
  npay: вер. 7.0.206 / 15.03.2017 18:44:23
  phone: вер. 7.0.291 / 13.03.2017 11:36:18
  rentsoft: вер. 7.0.66 / 24.11.2016 20:07:12
  reports: вер. 7.0.231 / 15.03.2017 18:48:01
  rscm: вер. 7.0.184 / 10.02.2017 13:51:11
  ru.bitel.bgbilling.plugins.cladr: вер. 7.0.123 / 08.04.2016 17:52:32
  trayinfo: вер. 7.0.175 / 10.06.2016 17:00:23
  tv: вер. 7.0.239 / 30.11.2016 18:20:31
  voiceip: вер. 7.0.190 / 02.12.2016 16:07:44



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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
dhcp.disable.mode в конфигурации есть? Какое значение?
Если в клиенте на сессии правой кнопкой - Сбросить (закрыть) сессию, то что при этом в логах InetAccess?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 ноя 2017, 17:47 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
В конфигурации типа устройства
dhcp.disable.mode=0

При нажатии правой кнопкой "Сбросить соединение (отключить) (послать PoD...)" в логах InetAccess ничего не добавляется. Обработчик активации сервиса для NAS еще не настроен. Тестовый клиент подключен в порт дочернего для этого NAS коммутатора.


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Может быть после добавления устройства в дереве не нажимали "Перечитать конфигурацию на серверах"?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 ноя 2017, 12:15 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
Нажимал, перечитывал.

Схема собрана такая:
клиент включен в порт коммутатора, отправляет DHCP-запрос, далее запрос с option82.agentRemoteId и option82.interfaceId проходит через DHCP-релей на биллинг.
В параметре dhcp.option.serverIdentifier указан IP-адрес релея, поэтому все запросы, в т.ч. renew, проходят через релей.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 ноя 2017, 14:39 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
Up. Перечитывал конфиг кнопкой. Ничего не помогает.


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
rootDeviceId в InetAccess/InetAccounting совпадает?
accounting.deviceTypeIds указан в конфигурации модуля (и убран из inet-access.xml)?
Значение в accounting.deviceTypeIds точно правильное - ID типа устройства?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 30 ноя 2017, 10:39 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
1. rootDeviceId в InetAccess и в InetAccounting совпадает с ID корневого устройства Access+Accounting
2. accounting.deviceTypeIds указан в конфигурации модуля, убран из inet-access.xml
и равен ID типа устройства Access+Accounting


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 04 дек 2017, 21:40 
Не в сети
Разработчик
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 дек 2017, 16:28 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
Доступ отправил в личку.

Напоследок решил перепроверить всё.
В типе сервиса изменил Тип инициации сессии: По трафику -> по сигналу
Перечитал конфигурацию сервера
и проблема исчезла.

После этого я попытался вернуть все как было. Вернул Тип инициации сессии: По трафику
Однако сломать теперь ничего не получилось. Выключал клиентское устройство, дожидался, пока сессия в биллинге завершится.
Однако теперь DHCP-сервер в приостановленном состоянии выдает NAK, как и должно быть.
При этом сравнивал информацию в логах с ранее сохраненной и не смог обнаружить отличий (при успешной выдаче адреса).
Приходит мысль, что это может повториться на следующем договоре.
Может быть, имеет смысл поподробнее логировать?

На NASе маршрутизация клиентского трафика не настроена. Клиент только пытается всё время обратиться к DNS-серверу, но не получает от него ответа. Может быть, в этом причина?


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Скорее всего проблема была в этом - что для DHCP-сессии тип инициации стоял по трафику.
Где-то в августе добавляли, чтобы ругалось в лог и отправляло письмо-оповещение, если для RADIUS- или DHCP- стоит инициация по трафику.

Сейчас, с "по сигналу" для новых сессий должно быть нормально. Для уже активных должно стать нормально после перезагрузки Access/Accounting.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 дек 2017, 10:49 
Не в сети

Зарегистрирован: 15 июл 2015, 12:21
Сообщения: 48
Карма: 5
Попробовал на вновь созданном договоре. Работает.
Спасибо!


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

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


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

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


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

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