Образование моста: Выпуск соединения беспроводной локальной сети с 4addr на опции - Почему?

Вопрос:
Для использования с моим Xen VM я должен создать виртуальный сетевой интерфейс (vif), который соединяется мостом к wlan0.

Если в/etc/network/interfaces я добавляю

auto xenbr0
       iface xenbr0 inet dhcp

И затем позже сделайте

brctl addif xenbr0 wlan0

Я получаю это сообщение об ошибке.

can't add wlan0 to bridge xenbr0: Operation not supported

Я узнал, что Linux не позволит Вам соединить беспроводной интерфейс мостом в режиме автоматического управления вообще, если Вы не включите 4addr опция (должен был перекомпилировать iw):

iw dev wlan0 set 4addr on

Впоследствии

brctl addif xenbr0 wlan0

работы и шоу brctl показывают xenbr0, как соединено мостом wlan0.

К сожалению, как только я выполняюсь

iw dev wlan0 set 4addr on

моего всего сетевого соединения не стало (никакое соединение). Как только затем я выполняюсь

iw dev wlan0 set 4addr off

Я снова соединяюсь, и это работает снова. Если я повторно выполняюсь 4addr на, это повреждается снова, если я выполняюсь 4addr прочь, это работает снова.

К сожалению, я не могу только повернуться 4addr на, активировать мост и затем возвратить его прочь (ошибка: устройство, не готовое).

Кто-либо знает, почему я освобождаю свое соединение?

8
задан 23 June 2012 в 20:20

2 ответа

При определенных обстоятельствах вы также можете использовать wlan_kabel. Он использует пакетные сокеты для прямого соединения устройств wlan * с устройствами Ethernet. Тем не менее, вы можете соединить только один MAC-адрес за один раз с wlan_kabel. У него нет недостатка быть заблокированным точками доступа, потому что используется только оригинальный MAC-адрес устройства WLAN.

В вашем случае это будет означать, что wlan0 может использоваться только одной виртуальной машиной, а не хостом.

Вы можете получить wlan_kabel здесь .

0
ответ дан 23 June 2012 в 20:20

Нашли ответ здесь: http://nullroute.eu.org/~grawity/journal.html#post:20110826

iw dev wlan0 set 4addr on

Однако с 4addr Если вы активируете, вы, скорее всего, полностью проигнорируете AP: ассоциация будет успешной, но все фреймы данных исчезнут в эфире. Это может быть из соображений безопасности (потому что чертовски сложно подделать MAC-адрес источника. Да.) В моем маршрутизаторе (под управлением OpenRG) необходимо включить режим «WDS» для интерфейса беспроводной точки доступа, добавить устройство WDS, ограниченное моим MAC-адрес ноутбука и добавьте его в мост LAN. Пакеты 4addr теперь работают.

Однако есть еще одна проблема - маршрутизатор теперь отклоняет трехадресные пакеты от ноутбука, что может быть довольно неудобно (необходимость переключать 4addr каждый раз при изменении сети WLAN). Обходной путь - добавить на ноутбуке второй беспроводной интерфейс, связанный с тем же устройством, но с другим MAC-адресом:

# undo the earlier configuration
iw dev wlan0 set 4addr off


# add a second interface
iw dev wlan0 interface add wds.wlan0 type managed 4addr on
ip link set dev wds.wlan0 addr $ADDR
ip link set dev wds.wlan0 up

Здесь $ ADDR должен соответствовать адресу устройства WDS, настроенному в маршрутизаторе; кроме этого, это может быть любой действительный MAC-адрес. Исходный MAC-адрес wlan0 остается для «нормального» использования.

Можно использовать и wlan0, и wds.wlan0 одновременно - хотя я только дважды проверял привязку к одному и тому же AP, а не к разным AP.

0
ответ дан 23 June 2012 в 20:20

Другие вопросы по тегам:

Похожие вопросы: