Wie verwende ich einen einzelnen WLAN-Adapter für einen Access Point und einen Client auf dem Raspberry Pi?

8795
Gabe

Ich konnte auf meinem Raspberry Pi einen drahtlosen Zugangspunkt mit einem USB-WLAN-Dongle mit Hostapd auf Wlan0 erstellen. Was ich gerne tun könnte, ist der Zugangspunkt auf einer virtuellen Schnittstelle (z. B. wlan0: 1) oder vlan (wlan0.123) und wlan0 die Verbindung zu einem vorhandenen Zugangspunkt.

Auf diese Weise kann ich eine Verbindung mit dem Gerät über den bereitgestellten Zugangspunkt oder über das Netzwerk herstellen, mit dem es verbunden werden konnte.

Das Endziel ist folgendes: Ich kann über den bereitgestellten Zugangspunkt eine Verbindung zum Gerät herstellen. Es wird dann ein Scan der gefundenen drahtlosen Zugangspunkte durchgeführt, ich werde gefragt, mit welchen ich mich verbinden möchte, und dann versuchen, eine Verbindung herzustellen. Er kann mir dann die IP-Adresse mitteilen, mit der er die neue Verbindung herstellen konnte, oder er kann keine Verbindung herstellen (da ich immer noch über den Zugangspunkt verbunden bin, den er anbietet).

Wenn es einen anderen Weg gibt, dies zu tun (ohne zwei physische Wi-Fi-Adapter), dann bin ich ganz Ohr.

Für jetzt sind die Schritte, die ich unternehme, den AP an der vlan-Schnittstelle zum Laufen zu bringen. Das funktioniert nicht… der AP ist sichtbar, aber es scheint, dass der DHCP-Server keine IP-Adresse ausgibt.

Hier sind die Inhalte von / 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 

Hier sind die Inhalte von 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 

Beachten Sie, dass ich oben sagen musste, dass die Schnittstelle wlan0 ist. Hostapd mag es nicht, wenn ich wlan0.10 stelle.

Zum Schluss noch meine Dhcp-Konfiguration (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"; } } 

Es scheint, dass der AP / dhcp nicht gerne in einem VLAN ist, da mein Telefon scheinbar bei "IP-Adresse von RPiAP beziehen ..." hängen bleibt. Oder muss ich vielleicht ein paar iptables-Regeln einhalten, um das Tagging zu entfernen?

4
Ich versuche nicht, sie zu überbrücken, sondern habe zwei Möglichkeiten, auf das Gerät zuzugreifen. Einen über den Zugangspunkt, den es bietet. Ein anderes über das LAN, mit dem es verbunden ist. Gabe vor 11 Jahren 0
Können Sie die Protokolle überprüfen, um zu sehen, ob der DHCP-Server irgendwelche Anforderungen empfängt? Lawrence vor 11 Jahren 0
Wie ich weiß, ist es nicht möglich, AP und Station gleichzeitig auf derselben physikalischen WLAN-Schnittstelle zu betreiben. Mikhail Moskalev vor 10 Jahren 0
@ mmv-ru Das stimmt nicht. Es gibt viele Geräte, die beides gleichzeitig tun können. Obligatorische Warnung: Da der AP-Modus einen festen Kanal erfordert, ist die Client-Schnittstelle auf diesen Kanal beschränkt. Daniel B vor 9 Jahren 1

2 Antworten auf die Frage

1
dirkt

Die Verwendung eines einzelnen WLAN-Geräts als Zugangspunkt (AP) und Client (Station, STA) ist nur möglich, wenn das Gerät dies unterstützt. Sie können iw phyoder verwenden iw list, um herauszufinden, ob Ihr Gerät dies tut. Es gibt eine Zeile, valid interface combinationsdie beschreibt, welche Kombinationen möglich sind (einschließlich anderer Modi). Details sind zum Beispiel hier .

Wenn Ihr Gerät dies unterstützt, können Sie neue virtuelle Schnittstellen hinzufügen

iw phy phy0 interface add wlan0_ap type ap 

(Ändern Sie nach Bedarf den anderen Typ stafür Client / Station).

Sie können dann hostapdauf einer Schnittstelle laufen und die andere normalerweise verwenden.

0
Albert

Der Hostap- und Dhcp-Server funktioniert einwandfrei, aber die Zeit Ihres Mobiltelefons und der Himbeer-Pi ist nicht synchronisiert. Versuchen Sie, beide Geräte gleichzeitig einzustellen.