BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: 30 июл 2012, 20:45 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Добрый день!

Заметил проблему переполучения адреса у некоторых клиентов, например NetGear JNWR2000. Суть проблемы:
Клиент шлёт DHCP Discover с dhcp option 50 - Requested IP Address в которой клиент указывает свой старый адрес, который он хочет получить. Наш DHCP сервер хочет назначить ему другой адрес и шлет соответствующий DHCP Offer, на что клиент отвечает DHCP Decline и снова шлет DHCP Discover и так до бесконечности. Это баг клиента, исправить его практически нереально, перепробовал уже все возможные прошивки от Netgear. Всякие xxWRT на такое железо не ставятся, а железяк таких много. Мне думается, что даже по задумке DHCP протокола мы в такой ситуации сначала должны выдать DHCP NAK, а уже потом, когда придет нормальный DHCP Discover без требуемого адреса - выдавать то, что мы хотим.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 30 июл 2012, 21:16 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
А может быть проблема более странная, чем я думаю. Проблема именно с NetGear JNWR2000 роутерам. Привожу 2 дампа с одним и тем же Netgear. Первый дамп сделан с ISC-DHCP сервером, второй с BGBilling. Я между ними разницы не нашел и не понимаю почему во втором случае Netgear адрес не получает. Пробовали сбрасывать в заводские настройки - не помогает. Windows клиент на этом же порту абсолютно прекрасно получает адрес как от ISC-DHCP, так и от BGBilling.

Файлы на самом деле не текстовые, а бинарные, от tcpdump.


Вложения:
dhcpbad3.txt [1.08 КБ]
Скачиваний: 536
dhcpgood.txt [2.65 КБ]
Скачиваний: 526
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 авг 2012, 18:38 
Не в сети
Разработчик
Аватара пользователя

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


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Мне думается, что даже по задумке DHCP протокола мы в такой ситуации сначала должны выдать DHCP NAK, а уже потом, когда придет нормальный DHCP Discover без требуемого адреса - выдавать то, что мы хотим.
По протоколу, на DHCP-Offer вроде бы NAK не шлется, только на DHCP-Request.


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
When a server receives a DHCPDISCOVER message from a client, the
server chooses a network address for the requesting client. If no
address is available, the server may choose to report the problem to
the system administrator. If an address is available, the new address
SHOULD be chosen as follows:

o The client's current address as recorded in the client's current
binding, ELSE

o The client's previous address as recorded in the client's (now
expired or released) binding, if that address is in the server's
pool of available addresses and not already allocated, ELSE

o The address requested in the 'Requested IP Address' option, if that
address is valid and not already allocated, ELSE

o A new address allocated from the server's pool of available
addresses; the address is selected based on the subnet from which
the message was received (if 'giaddr' is 0) or on the address of
the relay agent that forwarded the message ('giaddr' when not 0).

As described in section 4.2, a server MAY, for administrative
reasons, assign an address other than the one requested, or may
refuse to allocate an address to a particular client even though free
addresses are available.

Note that, in some network architectures (e.g., internets with more
than one IP subnet assigned to a physical network segment), it may be
the case that the DHCP client should be assigned an address from a
different subnet than the address recorded in 'giaddr'. Thus, DHCP
does not require that the client be assigned as address from the
subnet in 'giaddr'. A server is free to choose some other subnet,
and it is beyond the scope of the DHCP specification to describe ways
in which the assigned IP address might be chosen.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 01 авг 2012, 20:50 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
1) Увы, у этой железки никаких логов я не нашел в стандартной прошивке, а другой на нее нет. Более того - его ресетили в заводские настройки - ситуация не меняется. И вот это уже более чем странно
2) А при чем здесь DHCP Offer? Нам клиент шлет DHCP Request с адресом который он хочет, вот на него и предлагаю слать DHCP NAK
3) Да я согласен что ваш сервер ведет себя правильно, мне просто непонятно что за засада такая с этим нетгиром


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 11:59 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
2) А при чем здесь DHCP Offer? Нам клиент шлет DHCP Request с адресом который он хочет, вот на него и предлагаю слать DHCP NAK
Так в логах же как раз начинается с Offer. А на DHCP-Request не с тем IP InetAccess должен отвечать NAK'ом.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 13:04 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Как с offer? Вот открыл dhcpbad3 - вижу последовательность:
DHCP Discover
DHCP Offer
DHCP Decline

Вот прикрепил еще один пример. Там более длинная последовательность discover/offer/decline и ни одного NAK


Вложения:
dhcpbad2.txt [12.86 КБ]
Скачиваний: 516
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 13:10 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Не то написал - имел ввиду Discover - он как раз в начале.
Вы говорите что клиент шлет Request - на него Access должен слать NAK - сейчас так и должно работать.
В логах нет Request, только Discover - Offer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 14:25 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Ясно. Но на самом деле это нас не приблизило к решению загадки :) Есть идеи что еще можно попробовать, или может быть еще какие-то логи попытаться собрать чтобы понять почему Netgear присылает decline?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 15:24 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А если его перезагрузить он начинает принимать новый адрес?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 02 авг 2012, 17:48 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Нет. Ни перезагрузка, ни сброс по дефолту не помогают. Адрес он принимать отказывается. Причем с ISC-DHCP сервера адрес он получает на ура. Ноутбук с Windows, подключенный к этому же порту прекрасно получает адрес как с ISC так и с вашего сервера.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 авг 2012, 14:12 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
Причем с ISC-DHCP сервера адрес он получает на ура.
В логах с ISC, которые присылали, вроде бы нет смены адреса с одной подсети на другую.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 09 авг 2012, 20:04 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Уезжал, сорри. Еще раз акцентирую внимание что данное устройство (JNWR2000) вообще ни под каким соусом не хочет получать любой адрес от BG (даже сброшенный по дефолту). В общем ладно, я вернулся, засяду за новые эксперименты и постараюсь привести более детальный отчет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 авг 2012, 00:00 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Добрый день!
Я кажется понял в чем проблема. Смотрите, по каким-то причинам клиент шлет два DISCOVER пакета подряд с одинаковым XID. Сервер на оба пакета отсылает OFFER c _разными_ IP адресами, при этом, похоже, запоминает только последний предлагаемый адрес. Клиент присылает REQUEST с _первым_ назначенным адресом (с его точки зрения то правильно, xid то один). А вот сервер ему отвечает NAK (ведь он запомнил другой адрес). И так до бесконечности. Мне кажется, что сервер на один и тот же XID при DISCOVER должен возвращать один и тот же адрес, нет?


Код:
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-6] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Host name{12}={���窠-��}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:56  INFO [dhcpLstnr-p-8-t-6] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-6] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-6] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-1] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Host name{12}={���窠-��}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:56  INFO [dhcpLstnr-p-8-t-1] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-1] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:56  INFO [dhcpLstnr-p-8-t-1] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-6] InetApplication - inetServ[id=93] balance ok: -7.03 [-10.00]
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-6] InetApplication - TariffOptionMap: {}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-6] InetDhcpProcessor - IP not found in service. Searching in device...
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-6] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP Offer{2}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 46.22.11.67
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
  Router{3}=46.22.11.254
  Subnet mask{1}=255.255.255.0
  DNS{6}={5040150150401001}
  IP Address Lease Time{51}=900
  Server Identifier{54}={50401004}
  Domain{15}=tagnet.hn

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-1] InetApplication - inetServ[id=93] balance ok: -7.03 [-10.00]
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-1] InetApplication - TariffOptionMap: {}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-1] InetDhcpProcessor - IP not found in service. Searching in device...
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-1] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP Offer{2}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 46.22.11.68
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
  Router{3}=46.22.11.254
  Subnet mask{1}=255.255.255.0
  DNS{6}={5040150150401001}
  IP Address Lease Time{51}=900
  Server Identifier{54}={50401004}
  Domain{15}=tagnet.hn

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Requested IP Address{50}=46.22.11.67
  Server Identifier{54}={50401004}
  Host name{12}={���窠-��}
  {81}={0000009EABA8E7AAA02D8F8A}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetDhcpProcessor - requestedIP=/46.22.11.67
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-5] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP NAK{6}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Requested IP Address{50}=46.22.11.67
  Server Identifier{54}={50401004}
  Host name{12}={���窠-��}
  {81}={0000009EABA8E7AAA02D8F8A}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetDhcpProcessor - requestedIP=/46.22.11.67
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-8] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP NAK{6}
htype: 1, hlen: 6, hops: 1
xid: 2521119, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: -1992932584, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Host name{12}={���窠-��}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: -1992932584, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Host name{12}={���窠-��}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetDhcpDevice - Search serv on deviceId: 38 and it's descendants; 6; by mac
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetDhcpDevice - Search serv on deviceId: 38; 1; interfaceId: 0
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetDhcpProcessor - InetServ found: ContractId: 154; servId: 93
        002257FB7A1C:0
        Options [] TariffModuleTreeSet [188:01.04.2011-…; ]
        Device state: 1; optionSet:08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetApplication - inetServ[id=93] balance ok: -7.03 [-10.00]
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetApplication - TariffOptionMap: {}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetDhcpProcessor - IP not found in service. Searching in device...
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-4] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP Offer{2}
htype: 1, hlen: 6, hops: 1
xid: -1992932584, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 46.22.11.69
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
  Router{3}=46.22.11.254
  Subnet mask{1}=255.255.255.0
  DNS{6}={5040150150401001}
  IP Address Lease Time{51}=900
  Server Identifier{54}={50401004}
  Domain{15}=tagnet.hn
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetApplication - inetServ[id=93] balance ok: -7.03 [-10.00]
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetApplication - TariffOptionMap: {}
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetDhcpProcessor - IP not found in service. Searching in device...
08-15/18:43:57  INFO [dhcpLstnr-p-8-t-2] InetAbstractDhcpProcessor - RESPONSE:
Message type: BOOT_RESPONSE
Dhcp message type: DHCP Offer{2}
htype: 1, hlen: 6, hops: 1
xid: -1992932584, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 46.22.11.70
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}
  Router{3}=46.22.11.254
  Subnet mask{1}=255.255.255.0
  DNS{6}={5040150150401001}
  IP Address Lease Time{51}=900
  Server Identifier{54}={50401004}
  Domain{15}=tagnet.hn

08-15/18:43:57  INFO [dhcpLstnr-p-8-t-3] InetAbstractDhcpProcessor - REQUEST:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: -1992932584, secs: 0, flags: -32768
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.11.254
Client MAC: {0013D42262E7}
  {61}={010013D42262E7}
  Requested IP Address{50}=46.22.11.69
  Server Identifier{54}={0A800002}
  Host name{12}={���窠-��}
  {81}={0000009EABA8E7AAA02D8F8A}
  {60}={4D53465420352E30}
  Parameter request list{55}={1, 15, 3, 6, 44, 46, 47, 31, 33, 121, -7, 43}
  Agent information{82}=
    sub{1}={00040FDD0000}
    sub{2}={0006002257FB7A1C}


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

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 авг 2012, 15:06 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Работает. Спасибо!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 авг 2012, 19:44 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Теперь глюк с Zyxel.
Код:
Message type: BOOT_REQUEST
Dhcp message type: DHCP Discover{1}
htype: 1, hlen: 6, hops: 1
xid: 9930, secs: 0, flags: 0
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.7.254
Client MAC: {F0DEF173DAE2}
  {61}={01F0DEF173DAE2}
  Host name{12}={NBG334WEE^@}
  Agent information{82}=
    sub{1}={00040FD00005}
    sub{2}={00064001C6CB1BDE}

Message type: BOOT_RESPONSE
Dhcp message type: DHCP Offer{2}
htype: 1, hlen: 6, hops: 1
xid: 9930, secs: 0, flags: 0
Client IP: 0.0.0.0
Your IP: 46.22.7.162
Server IP: 0.0.0.0
Relay IP: 46.22.7.254
Client MAC: {F0DEF173DAE2}
  Agent information{82}=
    sub{1}={00040FD00005}
    sub{2}={00064001C6CB1BDE}
  Router{3}=46.22.7.254
  Subnet mask{1}=255.255.255.0
  DNS{6}={5040150150401001}
  IP Address Lease Time{51}=900
  Server Identifier{54}={50401004}
  Domain{15}=tagnet.hn
  {2}={00005460}

Message type: BOOT_REQUEST
Dhcp message type: DHCP Request{3}
htype: 1, hlen: 6, hops: 1
xid: 13930, secs: 0, flags: 0
Client IP: 0.0.0.0
Your IP: 0.0.0.0
Server IP: 0.0.0.0
Relay IP: 46.22.7.254
Client MAC: {F0DEF173DAE2}
  {61}={01F0DEF173DAE2}
  Requested IP Address{50}=46.22.7.162
  Server Identifier{54}={50401004}
  Host name{12}={NBG334WEE^@}
  Parameter request list{55}={1, 3, 6, 15, 33, 44, 46, 47, 57, 121, -7}
  Agent information{82}=
    sub{1}={00040FD00005}
    sub{2}={00064001C6CB1BDE}



Как мы видим - DHCP Request клиент присылает совсем с другим XID, не тот который был при DHCP Discover. Специально проверил - такого XID как в DHCPRequest ранее от клиента не прилетало. Как результат - сервер присылает ему NAK, и клиент не может получить адрес :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 авг 2012, 20:14 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Видимо от XID надо вообще отвязываться, и запоминать связку MAC + IP


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В RFC:
Цитата:
DHCPREQUEST: 'xid' from server DHCPOFFER message

И для Zyxel нагуглил:
Цитата:
ZyWALL firmware: Modifications in V 4.04(XU.9)b1 | 12/25/2009
3. [BUG FIX] SPR ID: 091201018
Symptom:
Device can't get IP from certain DHCP server.
Condition:
(1) Device can't get IP from certain DHCP server.
(2) It's observed the DHCPREQUEST message contains different 'xid' from
the DHCPOFFER.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 авг 2012, 18:59 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Дело в том, что для железки клиента в новом FW не упоминается решение этой проблемы. Хорошо, в понедельник клиент принесет железку, попробую обновить FW. Если что - буду списываться с Zyxel и пытаться решить проблему там.

P.S. А как тогда работает ISC-DHCP? Дело в том, что на нем клиент адрес получал.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 12:22 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
В RFC:
Цитата:
DHCPREQUEST: 'xid' from server DHCPOFFER message

borisk писал(а):
А как тогда работает ISC-DHCP? Дело в том, что на нем клиент адрес получал.

А вот это интересно, т.к. продукты ISC позиционируются как RFC compliant и вообще чуть ли не эталонная реализация.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 14:11 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Похоже, что там внимания на xid не обращают. Выложили обновление, в корневом устройстве нужно указать dhcp.xid=0 (и перезапустить Access), попробуйте.
Не забудьте сделать бекап предыдущих библиотек.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 17:33 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
В корневом котором? Которое bgaccess или корневом по отношению к коммутатору клиента?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 17:36 
Не в сети
Разработчик
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 17:49 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
Упс... не запускается bgaccess
Код:
Java Runtime: Sun Microsystems Inc. OpenJDK 64-Bit Server VM [1.6.0_32] /usr/local/openjdk6/jre
  Runtime name: 36914@bill.tagnet.ru
  Java endorsed dirs: /usr/local/bgbill/bgaccess/lib/endorsed
  OS: FreeBSD 9.0-RELEASE [amd64], file.encoding: UTF8, user.name: root
  Heap sizes: current=79680k  free=78847k  max=233024k
Starting CommandPortListener on port 1951
Aug 27, 2012 5:45:20 PM org.apache.activemq.transport.failover.FailoverTransport doReconnect
INFO: Successfully connected to tcp://mq.tagnet.ru:61616
Error on node dhcpProcessor
Error on node dhcp
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at ru.bitel.bgbilling.kernel.application.server.Application.processBean(Application.java:471)
        at ru.bitel.bgbilling.kernel.application.server.Application.process(Application.java:286)
        at ru.bitel.bgbilling.kernel.application.server.Application.processChildren(Application.java:688)
        at ru.bitel.bgbilling.kernel.application.server.Application.process(Application.java:277)
        at ru.bitel.bgbilling.kernel.application.server.Application.processChildren(Application.java:688)
        at ru.bitel.bgbilling.kernel.application.server.Application.application(Application.java:218)
        at ru.bitel.bgbilling.kernel.application.server.Application.<init>(Application.java:154)
        at ru.bitel.bgbilling.kernel.application.server.Application.main(Application.java:742)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at ru.bitel.common.bootstrap.Boot.boot(Boot.java:129)
        at ru.bitel.common.bootstrap.Boot.main(Boot.java:178)
Caused by: java.lang.NullPointerException
        at ru.bitel.bgbilling.modules.inet.runtime.device.InetDeviceRuntimeMap.get(InetDeviceRuntimeMap.java:74)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.<init>(InetDhcpProcessor.java:62)
        ... 18 more


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 17:50 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
И это я еще не прописывал dhcp.xid=0, просто обновил приложение


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 авг 2012, 17:53 
Не в сети
Клиент

Зарегистрирован: 15 мар 2009, 14:04
Сообщения: 1337
Карма: 12
и еще логи
Код:
access 08-27/17:45:20  INFO [main] InetApplication - rootDeviceId=1
access 08-27/17:45:20  INFO [main] Setup - Load config for mid=14
access 08-27/17:45:21  INFO [main] InetOptionRuntimeMap - Loading inetOptionRuntimeMap for moduleId:14
script 08-27/17:45:21  INFO [main] ScriptEventListener - Starting ScriptEventListener...
script 08-27/17:45:21  INFO [main] ScriptEventListener - Relinking script functions.
script 08-27/17:45:21  INFO [main] ScriptEventListener - Skip event type bitel.billing.server.script.bean.event.ContractWebLoginEvent. Class not found for this application.
script 08-27/17:45:21  INFO [main] ScriptEventListener - Linked Function [id:1; title:Оплата смены тарифа (Домашний безлимит)]
script 08-27/17:45:21  INFO [main] ScriptEventListener - Starting DynamicScriptEventListener...
access 08-27/17:45:21  INFO [Thread-12] Application - Stopping ru.bitel.bgbilling.modules.inet.access.Access@4adf9095
 08-27/17:45:21  INFO [Thread-12] EventProcessor - Shutdown EventProcessor...


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

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Выложили обновление.


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

Зарегистрирован: 22 фев 2009, 01:04
Сообщения: 49
Откуда: Dubna
Карма: 0
Добрый день! Также заметили проблему с некоторыми клиентами.
Проблема заключается в том, что некоторым клиентам прилетает только IP без маски и шлюза.
Прикрепил кусок tcpdump, в котором хорошо видно, что dhcp шлёт
клиенту только IP, без маски и шлюза. В приложении 2 файлика:
wrong.cap - дамп сессии из tcpdump,
wrong.txt - текстовая расшифровка
Запрос, при котором наблюдается глюк отличается от остальных только в "Option: (60) Vendor class identifier". Inet обновлен до последней версии.
Есть какие то идеи?
Спасибо.


Вложения:
tcpdump.zip [1.39 КБ]
Скачиваний: 168
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу 1, 2  След.

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


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

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


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

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