forum.bitel.ru http://forum.bitel.ru/ |
|
InetDhcpProcessor - Unknown packet (linked offer not found) http://forum.bitel.ru/viewtopic.php?f=44&t=10031 |
Страница 1 из 1 |
Автор: | raul [ 19 дек 2014, 10:13 ] |
Заголовок сообщения: | InetDhcpProcessor - Unknown packet (linked offer not found) |
Добрый день! Переезжаем с UTM5 на BGBilling 6.1. Java jdk1.7.0_71, Модуль Inet обновлен (inet_6.1_636.zip) Схема организации: DHCP option 82 коммутаторы + L3 switch + Router (пока TelnetServiceActivator) Помогите разобраться с DHCP. Устройства и ресурсы перенес, абонентов перенес. Протестировал на стенде. Запускаю в реальную сеть и часть абонентов получают адреса нормально, а на некоторых абонентах вижу такие сообщения: Код: Dhcp message type: DHCP Request{3} ... 12-19/09:34:05 INFO [dhcpLstnr-p-9-t-8] InetDhcpDevice - Search serv on deviceId: 66; 1; interfaceId: 14 12-19/09:34:05 INFO [dhcpLstnr-p-9-t-8] InetDhcpProcessor - InetServ found: ContractId: 182; status: 0; servId: 100 1-01-15 [14] Options [] TariffModuleTreeSet [1:10.12.2014-?; ] Device state: 1; optionSet:5 12-19/09:34:05 INFO [dhcpLstnr-p-9-t-8] InetDhcpProcessor - Unknown packet (linked offer not found). Discard packet. 12-19/09:34:05 INFO [dhcpLstnr-p-9-t-8] InetAbstractDhcpProcessor - RESPONSE: ... Dhcp message type: DHCP NAK{6} Так повторяется много раз по одному абоненту. И таких далеко не один. Иногда после десятков NAK, случается ACK и абонент таки адрес получает. Код: Dhcp message type: DHCP Request{3} htype: 1, hlen: 6, hops: 1 xid: -1095276325, secs: 0, flags: 0 Client IP: 0.0.0.0 Your IP: 0.0.0.0 Server IP: 0.0.0.0 Relay IP: 10.225.152.16 Client MAC: {78843CF79278} {61}={0178843CF79278} Requested IP Address{50}=10.225.142.14 Server Identifier{54}={0AE19862} Host name{12}={Wika-VAIO} {81}={00000057696B612D5641494F} {60}={4D53465420352E30} Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43} Agent information{82}= sub{1}={00040073000E} sub{2}={0107312D30312D3135} 12-19/10:04:06 INFO [dhcpLstnr-p-9-t-10] InetDhcpDevice - Search serv on deviceId: 66; 1; interfaceId: 14 12-19/10:04:06 INFO [dhcpLstnr-p-9-t-10] InetDhcpProcessor - InetServ found: ContractId: 182; status: 0; servId: 100 1-01-15 [14] Options [] TariffModuleTreeSet [1:10.12.2014-?; ] Device state: 1; optionSet:5 12-19/10:04:06 INFO [dhcpLstnr-p-9-t-10] InetDhcpProcessor - Starting connection: InetConnection [id=0-0, iface=66:14, sessId=beb768db, start=19.12.2014 10:04:06, uname=null, addr=10.225.142.14] 12-19/10:04:06 INFO [dhcpLstnr-p-9-t-10] InetConnectionManager - Add connection: InetConnection [id=12304-0, iface=66:14, sessId=beb768db, start=19.12.2014 10:04:06, uname=null, addr=10.225.142.14] 12-19/10:04:06 INFO [dhcpLstnr-p-9-t-10] InetAbstractDhcpProcessor - RESPONSE: Message type: BOOT_RESPONSE Dhcp message type: DHCP ACK{5} htype: 1, hlen: 6, hops: 1 xid: -1095276325, secs: 0, flags: 0 Client IP: 0.0.0.0 Your IP: 10.225.142.14 Server IP: 0.0.0.0 Relay IP: 10.225.152.16 Client MAC: {78843CF79278} Agent information{82}= sub{1}={00040073000E} sub{2}={0107312D30312D3135} Router{3}=10.225.142.254 Subnet mask{1}=255.255.255.0 DNS{6}={0AE19862} IP Address Lease Time{51}=3600 Server Identifier{54}={0AE19862} По форуму искал, мануал вдумчиво перечитывал. Сразу скажу, что грешок есть. Абонентов переносил не через API, а через SQL. Но часть абонентов то работает. На скриншотах настройки модуля Inet про DHCP. |
Автор: | raul [ 19 дек 2014, 11:27 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Добавлю лог dhcp.log и скиншот ip ресурсов |
Автор: | raul [ 19 дек 2014, 14:43 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Прочитал свое сообщение и мысль возникла. А похоже это корректное поведение. Не было Offer, с чего бы отвечать на Request. Ладно, помучаем своих абонентов подольше. Включу сегодня на весь вечер DHCP BGBilling и обращать внимания на NACK не буду. Посмотрю будут ли обращения абонентов. |
Автор: | Amir [ 20 дек 2014, 03:22 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Смотря когда происходит. Если сразу после переключения - то действительно, абонент делает renew, а сессии в биллинге еще нет, а для ее создания требуется rebind, т.е. запрос с discover. Если сессия была создана и возникло позже - возможно connection.close.timeout меньше чем промежуток между запросами от абонента. |
Автор: | raul [ 23 дек 2014, 18:37 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Все-таки абоненты обращались. Решил переписать импорт пользователей по правильному. Переписал через BGBS. Очистил базу от абонентов - remove_all.sql Перекинул абонентов по правильному - Converter.java. (Тут осталось доделать установку setIpResourceId в InetServ. Это важно?) Оба файла во вложении. Теперь уверен, что абоненты заведены корректно. Запускаю access, а он теперь выдает такое: Код: dhcp 12-23/19:12:52 ERROR [dhcpLstnr-p-9-t-8] InetDhcpProcessor - Timeout exceed! ru.bitel.bgbilling.common.BGException: Timeout exceed! at ru.bitel.bgbilling.modules.inet.access.InetConnectionManager.accountingStop(InetConnectionManager.java:597) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl0(InetDhcpProcessor.java:484) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl(InetDhcpProcessor.java:216) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processOption82Request(InetAbstractDhcpProcessor.java:504) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:253) at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:89) at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46) Судя по форуму это значит, что нет доступа от access до accounting, или проблемы с activemq. ActiveMQ проверил по Inet FAQ. Физически все настраивается на двух серверах: 1. Сервер BGBilling (10.225.152.80). Запускаю bgbilling,bgscheduler и accounting. 2. Сервер LinuxRouter (10.225.152.67). Запускаю access и он же является источником Netflow. От Access мне надо DHCP и TelnetServiceActivator, который управляет только самим LinuxRouter. Вообщем, прошу помощи. |
Автор: | raul [ 23 дек 2014, 18:44 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Конфиг типа устройств LinuxRouter: Cтоит галка является источником данных. На скриншоте сверху это видно. Код: flow.agent.type=netflow flow.agent.link={@deviceId}:-1 dhcp.xid=0 dhcp.renew=1 dhcp.option.leaseTime=600 #dhcp.option.serverIdentifier=0.0.0.0 dhcp.option.serverIdentifier=10.225.152.98 dhcp.deviceSearchMode=2 dhcp.servSearchMode=1 dhcp.subServSearchMode=0 dhcp.disable.mode=1 session.close.timeout=1200 connection.close.timeout=1200 #sa.port=23 #sa.command.disconnect=exit sa.endSequence=$ sa.inetOption.root=1 Конфиг типа устройств DLink DES-3200: Код: dhcp.82.vlanOptionCode=1 dhcp.82.vlanPosition=2 dhcp.82.interfaceOptionCode=1 dhcp.82.interfacePosition=5 dhcp.connection.closeOnNew=1 Конфиг устройства LinuxRouter,Root в дереве устройств пустые. Конфиг одного из коммутаторов 1-01-11. Остальные аналогично Код: pool=15
ip.resource.category=17 |
Автор: | stark [ 23 дек 2014, 18:49 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
у вас тип access+accounting какой код имеет ? Попробуйте указать в устройстве access+accounting этот код в опции Код: accounting.deviceTypeIds=
|
Автор: | raul [ 23 дек 2014, 19:01 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
stark писал(а): у вас тип access+accounting какой код имеет ? Попробуйте указать в устройстве access+accounting этот код в опции Код: accounting.deviceTypeIds= Устройство Access+Accounting ID =1 Выставил "accounting.deviceTypeIds=1" в устройстве access+accounting. Все равно Код: dhcp 12-23/20:00:00 INFO [dhcpLstnr-p-9-t-2] InetDhcpProcessor - InetServ found: ContractId: 1225; status: 0; servId: 618
1-01-08.2 [7] Options [] TariffModuleTreeSet [1:23.12.2014-?; ] Device state: 1; optionSet:5 dhcp 12-23/20:00:00 ERROR [dhcpLstnr-p-9-t-3] InetDhcpProcessor - Timeout exceed! ru.bitel.bgbilling.common.BGException: Timeout exceed! at ru.bitel.bgbilling.modules.inet.access.InetConnectionManager.accountingStop(InetConnectionManager.java:597) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl0(InetDhcpProcessor.java:484) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl(InetDhcpProcessor.java:216) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processOption82Request(InetAbstractDhcpProcessor.java:504) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:253) at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:89) at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) |
Автор: | stark [ 23 дек 2014, 19:10 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
raul писал(а): stark писал(а): у вас тип access+accounting какой код имеет ? Попробуйте указать в устройстве access+accounting этот код в опции Код: accounting.deviceTypeIds= Устройство Access+Accounting ID =1 Выставил "accounting.deviceTypeIds=1" в устройстве access+accounting. Все равно Код: dhcp 12-23/20:00:00 INFO [dhcpLstnr-p-9-t-2] InetDhcpProcessor - InetServ found: ContractId: 1225; status: 0; servId: 618 1-01-08.2 [7] Options [] TariffModuleTreeSet [1:23.12.2014-?; ] Device state: 1; optionSet:5 dhcp 12-23/20:00:00 ERROR [dhcpLstnr-p-9-t-3] InetDhcpProcessor - Timeout exceed! ru.bitel.bgbilling.common.BGException: Timeout exceed! at ru.bitel.bgbilling.modules.inet.access.InetConnectionManager.accountingStop(InetConnectionManager.java:597) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl0(InetDhcpProcessor.java:484) at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl(InetDhcpProcessor.java:216) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processOption82Request(InetAbstractDhcpProcessor.java:504) at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:253) at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:89) at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) я спросил про ТИП устройства. там точно 1 ? |
Автор: | raul [ 23 дек 2014, 21:13 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Цитата: я спросил про ТИП устройства. там точно 1 ? Не внимателен, прошу прощения. Да, там тоже 1. У меня всего три типа устройств: 1 Access+Accounting 2 LinuxRouter 3 D-Link DES |
Автор: | stark [ 24 дек 2014, 12:58 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
а канал связи между access и accounting нормальный ? Там стоит timeout в 5 секунд. попробуйте еще сам activemq посмотреть не копятся ли в нем сообщения. |
Автор: | jsoft [ 24 дек 2014, 22:15 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Raul, посмотрите max_connections в MySQL. Сегодня с тестовой версией очень долго с похожей проблемой (Timeout exceed) мучался, пока не выяснил, что BG не может создать подключение к db |
Автор: | raul [ 24 дек 2014, 22:23 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
stark писал(а): а канал связи между access и accounting нормальный ? Там стоит timeout в 5 секунд. попробуйте еще сам activemq посмотреть не копятся ли в нем сообщения. FAQ читал, "Number Of Pending Messages" стабильно "0". Оба сервака (LinuxRouter,BGBilling) подключены к одному гигабитному коммутатору, находятся в одной подсети. Ошибок на портах нет. |
Автор: | raul [ 24 дек 2014, 22:25 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
jsoft писал(а): Raul, посмотрите max_connections в MySQL. Сегодня с тестовой версией очень долго с похожей проблемой (Timeout exceed) мучался, пока не выяснил, что BG не может создать подключение к db MySQL настраивал по рекомендациям на wiki. max_connections = 800 |
Автор: | stark [ 25 дек 2014, 19:36 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Прошу прощения, я вам написал неправильно. Надо же в конфигурации access-сервера в файле inet-access.xml указывать: Код: <!-- Типы фейковых устройств, являющихся аккаунтинг серверами --> <param name="accounting.deviceTypeIds" value=""/> Или вы там тоже указывали ? |
Автор: | raul [ 26 дек 2014, 00:16 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
stark писал(а): Прошу прощения, я вам написал неправильно. Надо же в конфигурации access-сервера в файле inet-access.xml указывать: Код: <!-- Типы фейковых устройств, являющихся аккаунтинг серверами --> <param name="accounting.deviceTypeIds" value=""/> Или вы там тоже указывали ? Так я уже делал. Но для верности проверил еще раз сегодня. Timeout-ы все равно есть. |
Автор: | raul [ 29 дек 2014, 17:28 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Нашел в чем причина. Не был указан в hosts сервер ActiveMQ. Читаем доку http://bgbilling.ru/v6.1/doc/ch01s05s03.html - Внимание! Убедитесь, что имя сервера с ActiveMQ указано в файле /etc/hosts Вопрос почему это важно? И даже не это интересно, а как мне можно было впрямую разобрать/найти причину ошибки? Собственно вопрос к разработчикам, как диагностировать проблемы? Как по указанному логу понять что не так? Может есть какой-нибудь DEBUG режим, чтобы видеть что происходить очень детально? Это первые грабли на которых я потерял мягко говоря много времени. Наступил ещё на вторые, опишу чуть позже. Биллинг хороший, гибкость радует, но в такие моменты, честно говоря, материться хочется сильно. |
Автор: | dimOn [ 29 дек 2014, 17:42 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Цитата: Наступил ещё на вторые, опишу чуть позже. Ну вы только проверьте сначала нет ли решения вашей проблемы в доке, выделенным красным и с припиской ВНИМАНИЕ, как этом случае. |
Автор: | Amir [ 29 дек 2014, 17:49 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Если была проблема с соединением к activemq - то должно было писать в логах "problem with mq connection". |
Автор: | raul [ 29 дек 2014, 22:42 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Amir писал(а): Если была проблема с соединением к activemq - то должно было писать в логах "problem with mq connection". Первые десятки/сотню строчек после запуска вычитывал. Насколько помню писал, что подключился к MQ. Дальше, когда логи посыпались активно, то выбирал строчки по WARN/ERROR и смотрел вокруг, тоже не заметил. Даже если бы увидел, то как мне было понять, что это проблема с hosts ? Почему он важен? В конфиге inet-access.xml прописано же по IP. P.S. Добавьте в Inet FAQ что неправильный hosts может являться причиной Timeout. |
Автор: | raul [ 29 дек 2014, 22:45 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
dimOn писал(а): Цитата: Наступил ещё на вторые, опишу чуть позже. Ну вы только проверьте сначала нет ли решения вашей проблемы в доке, выделенным красным и с припиской ВНИМАНИЕ, как этом случае. Сарказм, похоже, только не в настроение... И к сожалению, в доке нет листинга всех красных приписок, я бы проверил. |
Автор: | raul [ 29 дек 2014, 23:01 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Вторые грабли с форматом поля DNS в IP ресурсах модуля Inet. Оказывается туда можно написать любую строку! Никакой проверки на ошибки. У меня ошибочно в паре мест появился пробел до/после IP адреса DNS сервера. Ошибок нет! В логах access сервер все ОК! Хоть бы WARN какой в логах. Ничего. Абонентам выдается 0.0.0.0. Покажите где я не прочитал формат записи поля DNS. Кстати как там правильно указать два DNS сервера? |
Автор: | stark [ 30 дек 2014, 13:12 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
raul писал(а): Amir писал(а): Если была проблема с соединением к activemq - то должно было писать в логах "problem with mq connection". Первые десятки/сотню строчек после запуска вычитывал. Насколько помню писал, что подключился к MQ. Дальше, когда логи посыпались активно, то выбирал строчки по WARN/ERROR и смотрел вокруг, тоже не заметил. Даже если бы увидел, то как мне было понять, что это проблема с hosts ? Тот разработчик, который это писал, видимо, определил это экспериментальным путем и сейчас уже не помнит подробностей..Но если заработало, значит он был прав. Надо выяснить этот вопрос и где-то выложить ссылку на разъяснения. Причем в общем случае это не обязательно, иногда и без этого работает вроде. |
Автор: | stark [ 30 дек 2014, 13:14 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
raul писал(а): Вторые грабли с форматом поля DNS в IP ресурсах модуля Inet. Оказывается туда можно написать любую строку! Никакой проверки на ошибки. У меня ошибочно в паре мест появился пробел до/после IP адреса DNS сервера. Ошибок нет! В логах access сервер все ОК! Хоть бы WARN какой в логах. Ничего. Абонентам выдается 0.0.0.0. Покажите где я не прочитал формат записи поля DNS. Кстати как там правильно указать два DNS сервера? по поводу 2-х , я уточню позже. А то что нет проверки - исправим, добавил в TODO. |
Автор: | Amir [ 30 дек 2014, 18:01 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Где используется DNS? Для DHCP или RADIUS? Для DHCP не получилось повторить - добавляли пробелы до и после IP-адреса. 0.0.0.0 получился, если добавить пробел посреди IP-адреса - может быть в этом было дело? |
Автор: | Amir [ 30 дек 2014, 18:07 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Цитата: Кстати как там правильно указать два DNS сервера? Через запятую.
|
Автор: | Amir [ 30 дек 2014, 18:12 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Добавили проверку на валидность IP-адреса (на невалидные символы внутри IP-адреса). |
Автор: | raul [ 16 янв 2015, 17:44 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Amir писал(а): Добавили проверку на валидность IP-адреса (на невалидные символы внутри IP-адреса). Спасибо |
Автор: | raul [ 16 янв 2015, 17:47 ] |
Заголовок сообщения: | Re: InetDhcpProcessor - Unknown packet (linked offer not fou |
Прошло больше недели, как я выключил UTM5. Полёт нормальный. Спасибо за помощь. Теперь настраиваю модуль оплаты по картам, пойду новую тему создавать =) |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |