Обновлено 04.06 птн:
Точка DWL-7700AP, rev.B f/w: 3.30 (ранние также).
Win2008R2 (IP: 192.168.1.1, роль DHCP. Снифер WireShark)
100Mbps-FullDuplex (без потерь)
::
DWL-7700AP (f/w: 3.30, без MultiSSID и VLANов, шифрование нет/любое)
::
Win7-ноутбук (встроенный WiFi-адаптер, включен снифер)
Если втыкать ноут кабелем (вместо точки), DHCP-обмен происходит мгновенно - 4 пакета:
Рис 1. Нормальная последовательность.
Проблема:
По радио постоянно(90%) вместо №2 "DHCP-Offer" приходят поврежденные пакеты:
В передаваемых точкой DHCP-пакетах(BroadCast UDP) идут
нули от Version+HeaderLength (45)
до TTL (80):
BroadCast IP-пакеты (полученные точкой по LAN или от других клиентов) видны клиентам, как BroadCast с
пустым IP-заголовком, и следовательно не могут прочитать его как IP-пакет.
На сервере видно:
1 Discover
2 (Offer (от сервера)
1 Discover
2 Offer (от сервера)
.. и.т.д. раза после 9-го (если наступит) 3 и 4.
На клиенте:
1 Discover (от клиента)
2 поврежденный Offer (ломанный IP-заголок)
1 Discover
2 поврежденный Offer
Как итог - выдача DHCP происходит с ~10 попытки (проверено на разных хостах).
Если включить DHCP-сервер на самой точке, он рассылает Понятные пакеты(без искажений).
Режим WDS+AP, WPA-Auto-PSK. Без шифрования (None) такая же хрень.
Part 2:
Повреждаются пакеты именной этой структуры, причем не только идущие от сервера.
Глюк пока только на DHCP. Другие Broadcast UDP (например, NetBios) проходят:
Слева DHCP(UDP), справа Netbios(UDP), полученные по WiFi от сервера.
Заголовок L2 совпадает. L3 в левом
нули. Сервер отправлял L2 и L3 идентичные!!