реклама на сайте
подробности

 
 
> Проблемы с клиентом DHCP
Polaris
сообщение Mar 24 2010, 17:49
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 266
Регистрация: 8-12-05
Пользователь №: 11 964



Доброго всем времени суток!
В данный момент я занимаюсь написанием простого сетевого стека для микроконтроллера LPC1768 (ARM от NXP) в связке с ENC424J600. Поднял UDP и решил добавить поддержку DHCP. Прочитал всевозможные примеры и документы, начал формировать DISCOVER пакет, вроде бы все сделал по написанному, но в ответ тишина. По идее, все уходит в сеть, потому что мониторю это с компьютера с установленным Wireshark, он пишет, что пакет пришел, замечаний по формату не делает, проверил содержимое - все вроде бы верно (см. приложение)
Уже перепробовал все возможное, ставил какие-то левые DHCP-сервера себе на компьютер - они тоже не отвечают. Где может быть ошибка? Что-то упустил все-таки в пакете и Wireshark меня обманывает?
Очень жду ответа, голова уже пухнет от этого, проблема совершенно мелкая, но движения вперед нет уже несколько дней.
IP-уровень работает, UDP тоже работает, по крайней мере контроллер пингуется и отвечает на UDP-запросы.
Вот отсылаемый устройством пакет DISCOVER, Wireshark на него никак не ругается:

Код
DHCP Discover - Transaction ID 0x0

Frame 120018 (291 bytes on wire, 291 bytes captured)
Ethernet II, Src: Microchi_10:4e:bd (00:04:a3:10:4e:bd), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
    Destination: Broadcast (ff:ff:ff:ff:ff:ff)
    Source: Microchi_10:4e:bd (00:04:a3:10:4e:bd)
    Type: IP (0x0800)
Internet Protocol, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255 (255.255.255.255)
    Version: 4
    Header length: 20 bytes
    Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
    Total Length: 277
    Identification: 0x0000 (0)
    Flags: 0x00
    Fragment offset: 0
    Time to live: 128
    Protocol: UDP (0x11)
    Header checksum: 0x39d9 [correct]
    Source: 0.0.0.0 (0.0.0.0)
    Destination: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
    Source port: bootpc (68)
    Destination port: bootps (67)
    Length: 257
    Checksum: 0xfd65 [validation disabled]
        [Good Checksum: False]
        [Bad Checksum: False]
Bootstrap Protocol
    Message type: Boot Request (1)
    Hardware type: Ethernet
    Hardware address length: 6
    Hops: 0
    Transaction ID: 0x00000000
    Seconds elapsed: 0
    Bootp flags: 0x8000 (Broadcast)
        1... .... .... .... = Broadcast flag: Broadcast
        .000 0000 0000 0000 = Reserved flags: 0x0000
    Client IP address: 0.0.0.0 (0.0.0.0)
    Your (client) IP address: 0.0.0.0 (0.0.0.0)
    Next server IP address: 0.0.0.0 (0.0.0.0)
    Relay agent IP address: 0.0.0.0 (0.0.0.0)
    Client MAC address: Microchi_10:4e:bd (00:04:a3:10:4e:bd)
    Client hardware address padding: 00000000000000000000
    Server host name not given
    Boot file name not given
    Magic cookie: (OK)
    Option: (t=53,l=1) DHCP Message Type = DHCP Discover
        Option: (53) DHCP Message Type
        Length: 1
        Value: 01
    Option: (t=55,l=3) Parameter Request List
        Option: (55) Parameter Request List
        Length: 3
        Value: 010306
        1 = Subnet Mask
        3 = Router
        6 = Domain Name Server
    End Option


и в бинарном виде:

Код
0000   ff ff ff ff ff ff 00 04 a3 10 4e bd 08 00 45 00  ..........N...E.
0010   01 15 00 00 00 00 80 11 39 d9 00 00 00 00 ff ff  ........9.......
0020   ff ff 00 44 00 43 01 01 fd 65 01 01 06 00 00 00  ...D.C...e......
0030   00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 00  ................
0040   00 00 00 00 00 00 00 04 a3 10 4e bd 00 00 00 00  ..........N.....
0050   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0060   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0070   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0080   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0090   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00a0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00b0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00c0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00d0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00e0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00f0   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0100   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0110   00 00 00 00 00 00 63 82 53 63 35 01 01 37 03 01  ......c.Sc5..7..
0120   03 06 ff


Заранее спасибо!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 08:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016