LINUX.ORG.RU
ФорумAdmin

Как заставить OpenWRT принимать wifi сеть и отдавать устройствам?

 , , , ,


0

1

Добрый вечер. Есть смартфон, к сожалению на Windows 10 Mobile, роутер с OpenWRT, ПК только Wifi и ПК только Ethernet. Требуется раздать Wifi со смартфона через роутер, чтобы все могли подключится. ПК, который только с Wifi, обязательно должен брать интернет через роутер. Помогите, пожалуйста. Курил англ. вики OpenWRT, сломал роутер.)

Зависит от. На некоторых чипах можно одновременно запустить STA и AP соединения. Если есть отдельный 5ГГц wifi, можно брать с 5GHz и отдавать по 2.4GHz

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Deleted

Wifi роутер уже подключен к смартфону, с этой части (Bridged and routed client modes) начинать читать, а то я в англ. не очень

mfhunruh
() автор топика
Ответ на: комментарий от Dark_SavanT

Зависит от. На некоторых чипах можно одновременно запустить STA и AP соединения

удваиваю. сам недавно узнал о такой фиче. mr3020 так умеет.

vvviperrr ★★★★★
()
Ответ на: комментарий от Deleted

Можете объяснить способ из статьи поподробнее, прописал как там, заменил на свой wan (eth0.2), но нечего не заработало

mfhunruh
() автор топика

Вам нужен роутер режим с двумя виртуальными беспроводными интерфейсами. Последнее поддерживается не всеми драйверами. В общем случае, нужно настроить интерфейс в sta режиме и в терминологии openwrt поместить этот интерфейс в сеть wan. Этот интерфейс будет подключаться к смартфону. Второй интерфейс - обычная настройка в режиме ap (сеть lan в openwrt) для раздачи. Важно, чтоб wan сеть не была type bridge, это настраивается в /etc/config/network (достаточно закомментировать блок с описанием wan. Беспроводная часть настраивается в /etc/config/wireless.

Маленькое уточнение, если используется mac80211 (compat-drivers) интерфейс AP не поднимется, пока не подключится sta интерфейс к вышестоящей точке доступа. Потому в lan сети желательно оставить проводные интерфейсы, чтоб можно было добраться до настройки хотя бы по проводу. Причина такого поведения - в последних версиях (эдак года 3-4) отключена функция channel hopping или раздельной настройки каналов для разных виртуальных интерфейсов, то есть phy должен всегда находится на одном канале. А т.к. station не знает на каком канале находится опорная точка доступа, драйвер не позволит поднять AP интерфейсы до появления соединения на managed интерфейсе.

Немного теории и практики. Проблема wifi-репитеров заключается в том, что изначально 802.11 не предусматривает подмену MAC-адреса при пересылке данных между устройствами, т.к. MAC для sta/ibss является идентификатором участника сети и AP или другие ibss могут указывать destination только по этому идентификатору (он по сути и есть MAC, но он должен быть известен устройству с которого ведется передача). В общем случае сети infrastructure (где есть AP и несколько STA) точка доступа должна знать куда слать фрейм на L2 уровне и если MAC-адреса станции нет в списке подключённых, точка доступа ничего слать не будет и обратная ситуация, если прилетает неизвестный MAC, а в списке подключённых его нет точка его отбросит.

Для обхода этой проблемы был разработан WDS, который добавляет конкретно MAC-адрес назначения, но требует включения 4addr mode на всех участника сети (что невозможно ввиду разных ОС клиентов и соответственно разных реализаций драйверов). До применения этой технологии использовались две технологии на уровне драйверов: nat2.5 и repeater. В первом случае на клиентском интерфейсе у всех фреймов исходящих подменялся source MAC на свой и точка доступа видела только одно устройство, а отслеживание обратной трансляции ложилось на плечи клиентского устройства. Второй метод (repeater) более сложен и редко применялся, но реализации были - суть в том, что драйвер пересылает вообще всё в эфире и притворяется точкой доступа. То есть даже association тоже пересылалось в сторону основной точки доступа и она видела всех подключённых клиентов, как будто они в её пределах видимости. Такой себе прокси на уровне L2.

nickleiten ★★★
()
Ответ на: комментарий от mfhunruh

Это возможно, но в opensource драйверах есть подводные камни с этим процессором при использовании виртуальных интерфейсов. Ралинковцы что-то нахимичили при проектировании чипа, в части wifi (а если ещё точнее в dcu блоке) и там возникают «левые» прерывания при посылке данных, в проприетарном драйвере использован грязный хак для обхода такого поведения, а в opensource-реализации такого хака нет. Потому в обычном режиме устройство работает нормально, но если начать пользовать дополнительные виртуальные интерфейсы интерфейс со временем начнёт терять пакеты, а потом и вовсе зависнет.

nickleiten ★★★
()
Ответ на: комментарий от mfhunruh

Да, я там наврал в части /etc/config/network и wan интерфейса. В нём нужно сделать type dhcp и всё.

nickleiten ★★★
()
Ответ на: комментарий от mfhunruh

Если я правильно помню что там за железо - не взлетит.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Deleted

SoftAP STA

Кто-нибудь реально поднимал на USB свистках режим AP/STA? Если да напишите на каких чипах это работает? Кто знает реальные свистки отвечающие iw list..... STA/AP BI must match

Lmva
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.