Домашние беспроводные маршрутизаторы объединяют несколько вещей
- (обычно 4-портовый) коммутатор
- роутер
- точка беспроводного доступа
Точки беспроводного доступа, я считаю, отслеживают MAC, которые они видели в прошлом, и, конечно, знают MAC каждого связанного клиента. Таким образом, если точка беспроводного доступа получает трафик от одного связанного клиента и направляется другому ассоциированному клиенту, а "Изоляция точки доступа" НЕ отключена, беспроводному оборудованию не нужно разрешать какую-либо функцию маршрутизации (обычно это код процессора, такой как Linux). или ядро VxWorks) в роутере об этом знают.
Является ли это тем, что фактически делает аппаратное обеспечение, - это совсем другой вопрос (я могу представить себе какое-нибудь дешевое беспроводное оборудование, дающее трафик, предназначенный для другого беспроводного хоста в той же подсети для ЦП) - но даже если это не так, функция маршрутизации (Linux ядру и т. д.) все равно следует направить его обратно из беспроводного интерфейса, потому что именно так и говорит таблица маршрутизации. Это было бы неэффективно, но не удивило бы меня, если бы из-за затрат это делалось таким образом.
Предположим, у вас есть 4 компьютера (A, B, C, D), подключенных к коммутатору, а затем 5-й порт, подключенный к маршрутизатору. Если A хочет установить связь с B, коммутатор узнает (посредством запоминания MAC-адресов, которые прошли через него) или выяснит (посредством переполнения исходящего трафика на все порты и запоминания, кто отвечает), какие порты A и B включены, и может переадресовать напрямую, и маршрутизатор никогда не вмешивается. С беспроводной связью все связанные клиенты в основном находятся на "беспроводном коммутаторе", и он работает (или должен работать) одинаково.
Таким образом, он должен BRIDGE (это правильный термин для уровня 2, а не ROUTE) на основе уровня 2.