4

Мне удалось создать точку беспроводного доступа на моем Raspberry Pi с помощью USB-ключа Wi-Fi с помощью hostapd на wlan0. То, что я хотел бы сделать, это иметь точку доступа на каком-либо виртуальном интерфейсе (например, wlan0:1) или vlan (wlan0.123) и иметь wlan0 для подключения к существующей точке доступа.

Таким образом, я могу подключиться к устройству через предоставленную им точку доступа или через сеть, к которой оно могло подключиться.

Конечная цель такова: я могу подключиться к устройству, используя предоставленную им точку доступа. Затем он выполнит сканирование найденных беспроводных точек доступа, спросит, к какой из них я хотел бы подключиться, и затем попытается подключиться к нему. Затем он может сказать мне IP-адрес, который он смог установить в этом новом соединении, или сказать, что ему не удалось подключиться (потому что я все равно буду подключаться через точку доступа, которую он предоставляет).

Если есть какой-то другой способ сделать это (без двух физических адаптеров Wi-Fi), я весь слух.

Пока что я делаю шаги, чтобы заставить AP работать на интерфейсе VLAN. Это не работает… AP видна, но кажется, что сервер DHCP не выдает IP-адрес.

Вот содержимое /etc /network /interfaces:

auto lo
auto wlan0 wlan0.10
auto eth0

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0

iface wlan0.10 inet static
  address 192.168.50.1
  netmask 255.255.255.0
  network 192.168.50.0
  broadcast 192.168.50.255
  gateway 192.168.50.1
  vlan_raw_device wlan0

iface wlan0 inet manual

Вот содержимое hostapd.conf:

interface=wlan0
driver=rtl871xdrv
country_code=NZ
ctrl_interface=wlan0.10
ctrl_interface_group=0
ssid=RPiAP
hw_mode=g
channel=1
wpa=3
wpa_passphrase=PASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
beacon_int=100
auth_algs=3
macaddr_acl=0
wmm_enabled=1
eap_reauth_period=360000000

Обратите внимание, что выше я должен был сказать, что интерфейс wlan0. Кажется, hostapd не нравится, если я поставлю wlan0.10.

Наконец, вот моя конфигурация dhcp (isc-dhcp-server):

shared-network VLAN10 {
subnet 192.168.50.0 netmask 255.255.255.0 {
       range 192.168.50.10 192.168.50.250;
       option broadcast-address 192.168.50.255;
       option routers 192.168.50.1;
       default routers 192.168.50.1;
       default-lease-time 600;
       max-lease-time 7200;
       option domain-name "local";
}
}

Похоже, что AP/dhcp не нравится находиться в VLAN, так как мой телефон застревает на «Получение IP-адреса из RPiAP ...». Или, может быть, я должен сделать некоторые правила iptables для удаления тегов?

2 ответа2

1

Использование одного устройства WLAN в качестве точек доступа (AP) и клиента (станции, STA) возможно только в том случае, если устройство поддерживает его. Вы можете использовать iw phy или iw list чтобы узнать, работает ли ваше устройство; есть строка valid interface combinations которая описывает, какие комбинации возможны (включая другой режим). Подробности, например, здесь.

Если ваше устройство поддерживает это, вы можете добавить новые виртуальные интерфейсы с чем-то вроде

iw phy phy0 interface add wlan0_ap type ap

(при необходимости измените, другой тип sta для клиента / станции).

Затем вы можете запустить hostapd на одном интерфейсе и нормально использовать другой интерфейс.

0

Сервер hostap и dhcp работает нормально, но время вашего мобильного телефона и Raspberry Pi не синхронизируется. Попробуйте поставить одновременно оба устройства.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .