%3F.png)
Убунту 14.04
По сути, я пытаюсь реализовать следующую настройку:
беспроводной интернет ---> wlan0
компьютера Ubuntu, подключенного «мостом» wlan1
к тому же компьютеру Ubuntu ---> устройству с Wi-Fi
Причина такой настройки в том, что беспроводной интернет — это сеть WPA2 Enterprise, к которой мое устройство с Wi-Fi не может подключиться. (Устройство с Wi-Fi также не может подключаться к одноранговым сетям или сетям ad-hoc.) Кроме того, источник беспроводного интернета не имеет белого/черного списка, и поэтому нет проблем с тем, чтобы он видел MAC-адрес устройства (при необходимости), и нет проблем с назначением ему IP-адреса (при необходимости). Это устройство имеет проблему с аутентификацией WPA2 Enterprise.
[РЕДАКТИРОВАТЬ- Поскольку устройство не может успешно пройти аутентификацию, беспроводной источник интернета, скорее всего, НЕ назначит устройству IP-адрес, а также, скорее всего, у него возникнут проблемы с отображением MAC-адреса устройства.]
wlan0
— это беспроводной чипсет/интерфейс Intel, который нельзя перевести ни в режим точки доступа, ни в режим главного устройства, поэтому он используется для подключения к интернет-источнику WPA2 Enterprise.
wlan1
необходимо установить в режим точки доступа.
Очевидно, что «мост» между wlan0
и wlan1
не должен быть беспроводным, поскольку оба устройства находятся на одном компьютере.
(1) Я считаю, что brctl
невозможно соединить беспроводной интерфейс ( wlan0
) с другим беспроводным интерфейсом ( wlan1
). Это правильно?
(2) Если brctl
его нельзя использовать, могу ли я его использовать hostapd
?
(3) Если brctl
невозможно использовать, на что следует обратить внимание, чтобы выполнить описанную выше настройку?
(4) Будет ли что-либо из следующего частью решения моей проблемы - (a) dnsmasq
обслуживание DHCP (b) hostapd
(c) статический IP-адрес (для wlan1
???) (для устройства, подключенного к wlan1
??) (d) NAT (трансляция сетевых адресов) (e) iptables
(f) IP-маскарад (g) sudo iw set dev wlan0 4addr on
(h) WDS (беспроводная система распределения) (i) IP-пересылка?
Спасибо.
решение1
(1) Я считаю, что brctl не может соединить беспроводной интерфейс (wlan0) с другим беспроводным интерфейсом (wlan1). Это правильно?
Требование здесь заключается в том, что все интерфейсы должны иметь возможность отправлять пакеты с любым исходным MAC-адресом и получать пакеты с любым MAC-адресом назначения (а не только с собственным MAC-адресом устройства).
Интерфейсы точек доступа Wi-Fi можно легко объединить в мост (большинство «беспроводных маршрутизаторов» на самом деле имеют простой мост Linux между точкой доступа и Ethernet). Интерфейсы режима станции, однако, не могут. Поэтому вы можете объединить в мост wlan1, но не wlan0.
Есть способ обойти это – режим "4addr", он же режим "WDS", который добавляет дополнительное поле MAC-адреса к кадрам Wi-Fi. Вы можете включить его через iw
, если ваш драйвер Wi-Fi его поддерживает. После включения вы также сможете создать мост wlan0.
Однако из соображений безопасности многие точки доступа не допускают режим 4addr по умолчанию. (У некоторых есть общий переключатель, у некоторых — белый список на основе MAC-адресов.) Будет ли это работать с вашей университетской точкой доступа? Попробуйте и посмотрите.
(Другой способ обхода проблемы — «arpnat» — похоже на NAT, но применяется к MAC-адресам, но он может сбивать с толку DHCP-серверы и в любом случае не поддерживается обычным Linux. Некоторые точки доступа, например PicoStation, поддерживают его в режиме станции.)
(2) Если brctl использовать невозможно, могу ли я использовать hostapd?
Зависит от вашего драйвера Wi-Fi. Большинство из них должны поддерживать режим AP в настоящее время, но не все. Используйте iw phy0 info
, iw phy1 info
чтобы узнать.
(3) Если brctl использовать невозможно, что мне следует искать для выполнения описанной выше настройки?
Наиболее распространенным альтернативным подходом является IP NAT (маскарадинг) с использованием iptables.
В некоторых случаях подойдет и обычная маршрутизация (без NAT).
(4) Будет ли что-либо из нижеперечисленного частью решения моей проблемы?
(a) dnsmasq для обслуживания DHCP (b) hostapd (c) статический IP-адрес (для wlan1 ???) (для устройства, подключенного к wlan1 ??) (d) NAT (трансляция сетевых адресов) (e) iptables (f) IP-маскарад (g) sudo iw set dev wlan0 4addr on (h) WDS (беспроводная система распределения) (i) IP-пересылка ?
да, нет, нет, да, может быть, может быть, что, э-э, вы просто бросаетесь здесь разными терминами?
решение2
Вы можете brctl
без проблем объединить беспроводные интерфейсы, используя:
brctl addbr br_name
brctl addif br_name wlan0
brctl addif br_name wlan1
Но вам нужно будет ссылаться на сам мост br_name
, а не на отдельные интерфейсы в вашей сетевой конфигурации.