Назад | Перейти на главную страницу

arp-запросы не видны определенным узлам

Я создаю открытый ad-hoc wlan, используя iwconfig (У меня такая же проблема с wpa_supplicant также). в сети 4 узла, как показано на рисунке ниже. Узлы работают под управлением ubuntu 12.04 и debian squeeze и имеют ядра 3.7.1, 3.5 и 3.2. Я использую два разных бренда USB-ключей (TP Link и ZCN), все они имеют чипсет AR9271 и ath9k_htc водитель (вот lsusb вывод и вывод ethtool).

Проблема, с которой я столкнулся, заключается в том, что два узла (10.0.0.2 и 10.0.0.5), которые имеют USB-адаптеры Wi-Fi TP Link, могут пинговать любой узел в сети, и наоборот. Однако другие узлы (10.0.0.6 и 10.0.0.7), у которых есть ключ Wi-Fi ZCN, не могут пинговать друг друга, но у них нет проблем с обменом данными с модулями Wi-Fi TP-link. tcpdump показывает, что 10.0.0.6 и 10.0.0.7 не может видеть их arp-запрос, например

20:37:52.470305 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28
20:37:53.463713 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28
20:37:54.463622 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28
20:37:55.472868 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28
20:37:56.463439 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28
20:37:57.463469 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28

но они могут видеть и получать ответ от модулей TP-link.

20:39:23.634459 ARP, Request who-has 10.0.0.2 tell 10.0.0.6, length 28
20:39:23.634551 ARP, Reply 10.0.0.2 is-at 64:70:02:18:d4:6a (oui Unknown), length 28
20:39:23.636687 IP 10.0.0.6 > 10.0.0.2: ICMP echo request, id 572, seq 1, length 64
20:39:23.636809 IP 10.0.0.2 > 10.0.0.6: ICMP echo reply, id 572, seq 1, length 64
20:39:24.635497 IP 10.0.0.6 > 10.0.0.2: ICMP echo request, id 572, seq 2, length 64
20:39:24.635558 IP 10.0.0.2 > 10.0.0.6: ICMP echo reply, id 572, seq 2, length 64
20:39:28.651946 ARP, Request who-has 10.0.0.6 tell 10.0.0.2, length 28
20:39:28.654021 ARP, Reply 10.0.0.6 is-at 00:19:70:94:7c:8b (oui Unknown), length 28

Мой вопрос в том, что могло быть причиной того, что 10.0.0.6 и 10.0.0.7 не могу видеть arp-request что они друг другу посылают? Как я могу узнать о проблеме?

Если я добавлю в сеть еще пару узлов с Wi-Fi-ключом ZCN, эти узлы также не смогут общаться друг с другом, но с TP-link все в порядке. Или, если я заменяю модули Wi-Fi, узлы с ZCN всегда имеют проблемы, но модули TP-link в порядке.

Вот это /etc/network/interfaces, ifconfig, iwconfig, ip a, ip r, route выходы

РЕДАКТИРОВАТЬ: я подозревал, что проблема в arp_filter связанные, но /proc/sys/net/ipv4/conf/*/arp_filter является 0 на всех поддоменах (*). Если я добавлю arp информацию о 10.0.0.6 и 10.0.0.7 вручную на этих узлах, tcpdump и wireshark не показывает, что они отправляют ping друг другу. Если я ping широковещательный адрес (в моем случае 10.0.0.255), 10.0.0.6 и 10.0.0.7 умеют это слышать.

EDIT2: вот файлы pcap http://filebin.net/6cle9a5iae из 10.0.0.6 (Модуль ZCN), 10.0.0.7 (Модуль ZCN) и 10.0.0.5 (Модуль TP-link, у которого нет проблем). вот результаты пинга от 10.0.0.6 http://pastebin.com/swFP2CJ9 Я захватил пакеты одновременно. Ссылка также включает ifconfig; iwconfig; и uname- a выходы для каждого узла.

Это могло быть связано с "проблема со скрытым узлом«Если .6 и .7 не находятся в прямом радиосвязи, но, не зная, на какое расстояние, это невозможно сказать.

Кроме того, один или оба набора микросхем могут иметь специальный режим с ошибками, который в наши дни используется нечасто и неудивительно.

Недавно у меня была такая же проблема. Я выяснил, что у чипсета AR9271 проблема со встроенной антенной передатчика. Если вы используете внешнюю антенну, то проблем у вас не будет. И эта проблема возникает только в режиме ad-hoc.

Причина, по которой у вас нет проблем с TP-link, должна заключаться в том, что эти модули используют внешнюю антенну, которая решает проблему набора микросхем, а модули ZCN не должны иметь внешней антенны.