Я работаю над некоторыми встроенными устройствами, которые должны быть подключены к большой сети (сотни устройств) через Ethernet и должны быть настроены с использованием протокола DHCP. Что я испытываю, так это то, что, по-видимому, устройства получают адрес в некоторых сетях, но не в других. Я настраиваю тестовую сеть с одним клиентом, коммутатором и DHCP-сервером (Ubuntu Linux). Адрес назначен правильно, и журналы DHCP-сервера показывают последовательность DORA.
Я попытался подключить того же клиента к обычному домашнему маршрутизатору с DHCP-сервером (это мой домашний маршрутизатор, поэтому он должен работать правильно), но IP-адрес не получен клиентом. Это дамп последовательности для устройства:
No. Time Source Destination Protocol Length Info
86 26.515684000 :: ff02::16 ICMPv6 90 Multicast Listener Report Message v2
Frame 86: 90 bytes on wire (720 bits), 90 bytes captured (720 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_00:00:00:16 (33:33:00:00:00:16)
Internet Protocol Version 6, Src: :: (::), Dst: ff02::16 (ff02::16)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
87 26.515688000 :: ff02::1:ff91:de41 ICMPv6 78 Neighbor Solicitation for fe80::260:6eff:fe91:de41
Frame 87: 78 bytes on wire (624 bits), 78 bytes captured (624 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_ff:91:de:41 (33:33:ff:91:de:41)
Internet Protocol Version 6, Src: :: (::), Dst: ff02::1:ff91:de41 (ff02::1:ff91:de41)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
88 26.596056000 0.0.0.0 255.255.255.255 DHCP 371 DHCP Discover - Transaction ID 0xb444e919
Frame 88: 371 bytes on wire (2968 bits), 371 bytes captured (2968 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
Bootstrap Protocol
Message type: Boot Request (1)
Hardware type: Ethernet
Hardware address length: 6
Hops: 0
Transaction ID: 0xb444e919
Seconds elapsed: 0
Bootp flags: 0x0000 (Unicast)
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: DavicomS_91:de:41 (00:60:6e:91:de:41)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type
Option: (57) Maximum DHCP Message Size
Option: (60) Vendor class identifier
Option: (12) Host Name
Option: (55) Parameter Request List
Option: (255) End
No. Time Source Destination Protocol Length Info
94 27.515730000 fe80::260:6eff:fe91:de41 ff02::2 ICMPv6 70 Router Solicitation from 00:60:6e:91:de:41
Frame 94: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_00:00:00:02 (33:33:00:00:00:02)
Internet Protocol Version 6, Src: fe80::260:6eff:fe91:de41 (fe80::260:6eff:fe91:de41), Dst: ff02::2 (ff02::2)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
119 30.427837000 0.0.0.0 255.255.255.255 DHCP 371 DHCP Discover - Transaction ID 0xb444e919
Frame 119: 371 bytes on wire (2968 bits), 371 bytes captured (2968 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
Bootstrap Protocol
Message type: Boot Request (1)
Hardware type: Ethernet
Hardware address length: 6
Hops: 0
Transaction ID: 0xb444e919
Seconds elapsed: 4
Bootp flags: 0x0000 (Unicast)
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: DavicomS_91:de:41 (00:60:6e:91:de:41)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type
Option: (57) Maximum DHCP Message Size
Option: (60) Vendor class identifier
Option: (12) Host Name
Option: (55) Parameter Request List
Option: (255) End
No. Time Source Destination Protocol Length Info
122 30.985580000 fe80::260:6eff:fe91:de41 ff02::16 ICMPv6 90 Multicast Listener Report Message v2
Frame 122: 90 bytes on wire (720 bits), 90 bytes captured (720 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_00:00:00:16 (33:33:00:00:00:16)
Internet Protocol Version 6, Src: fe80::260:6eff:fe91:de41 (fe80::260:6eff:fe91:de41), Dst: ff02::16 (ff02::16)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
127 31.525478000 fe80::260:6eff:fe91:de41 ff02::2 ICMPv6 70 Router Solicitation from 00:60:6e:91:de:41
Frame 127: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_00:00:00:02 (33:33:00:00:00:02)
Internet Protocol Version 6, Src: fe80::260:6eff:fe91:de41 (fe80::260:6eff:fe91:de41), Dst: ff02::2 (ff02::2)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
138 35.535297000 fe80::260:6eff:fe91:de41 ff02::2 ICMPv6 70 Router Solicitation from 00:60:6e:91:de:41
Frame 138: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: IPv6mcast_00:00:00:02 (33:33:00:00:00:02)
Internet Protocol Version 6, Src: fe80::260:6eff:fe91:de41 (fe80::260:6eff:fe91:de41), Dst: ff02::2 (ff02::2)
Internet Control Message Protocol v6
No. Time Source Destination Protocol Length Info
142 39.405342000 0.0.0.0 255.255.255.255 DHCP 371 DHCP Discover - Transaction ID 0xb444e919
Frame 142: 371 bytes on wire (2968 bits), 371 bytes captured (2968 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
Bootstrap Protocol
Message type: Boot Request (1)
Hardware type: Ethernet
Hardware address length: 6
Hops: 0
Transaction ID: 0xb444e919
Seconds elapsed: 13
Bootp flags: 0x0000 (Unicast)
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: DavicomS_91:de:41 (00:60:6e:91:de:41)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type
Option: (57) Maximum DHCP Message Size
Option: (60) Vendor class identifier
Option: (12) Host Name
Option: (55) Parameter Request List
Option: (255) End
No. Time Source Destination Protocol Length Info
392 55.264802000 0.0.0.0 255.255.255.255 DHCP 371 DHCP Discover - Transaction ID 0xb444e919
Frame 392: 371 bytes on wire (2968 bits), 371 bytes captured (2968 bits) on interface 0
Ethernet II, Src: DavicomS_91:de:41 (00:60:6e:91:de:41), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0 (0.0.0.0), Dst: 255.255.255.255 (255.255.255.255)
User Datagram Protocol, Src Port: bootpc (68), Dst Port: bootps (67)
Bootstrap Protocol
Message type: Boot Request (1)
Hardware type: Ethernet
Hardware address length: 6
Hops: 0
Transaction ID: 0xb444e919
Seconds elapsed: 29
Bootp flags: 0x0000 (Unicast)
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: DavicomS_91:de:41 (00:60:6e:91:de:41)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type
Option: (57) Maximum DHCP Message Size
Option: (60) Vendor class identifier
Option: (12) Host Name
Option: (55) Parameter Request List
Option: (255) End
Насколько я понимаю, на обнаружение DHCP нет ответа. Это верно? Вы знаете почему?
РЕДАКТИРОВАТЬ: я попытался снова проверить пакеты с помощью wirehark, и я вижу параметр Option: (53) Тип сообщения DHCP. Расширяя это, я вижу обнаружение DHCP. Мне это действительно кажется DHCP. Я также проверил DHCP-пакет Mac OS X с помощью wirehark и все еще вижу в пакетах «Тип сообщения: запрос загрузки (1)». Единственное отличие состоит в том, что DHCP-обнаружение не отправляется, а только DHCP-запрос для адреса. Также этот же адаптер не работает под Windows 7.
Так действительно ли это протокол bootp? Вы можете это подтвердить? Или это DHCP? И почему сообщения DHCP Discover отправляются, но предложение DHCP не отправляется обратно?