Hostapd BSSID配置

时间:2018-08-15 14:36:47

标签: networking wifi access-point hostapd bssid

我们有一台使用wlan1的MAC地址作为BSSID创建访问点的设备。我们正在尝试更改此默认BSSID,并且设法以某种方式进行了更改,但看来我们的更改并没有影响客户端对网络的BSSID。

问题是如何正确配置hostapd以使用我们希望它具有的BSSID运行访问点。

在服务器端

我们可以看到我们的配置对我们希望拥有它的所有3个地方都有影响。

hostapd配置文件

# ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
interface=wlan1
driver=nl80211
country_code=DK

# WPA2-AES encryption
ssid=ap-wlan1-ccee
bssid=02:03:7f:d7:00:04
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
wpa_passphrase=password-wpa2aes
max_num_sta=5

# IEEE 802.11ac
hw_mode=g
channel=7
ieee80211ac=1
ieee80211n=1

logger_stdout=-1
logger_stdout_level=2

运行/ usr / sbin / hostapd /etc/hostapd_wlan1.conf的hostapd输出

Configuration file: /etc/hostapd_wlan1.conf
wlan1: interface state UNINITIALIZED->COUNTRY_UPDATE
Using interface wlan1 with hwaddr 02:03:7f:d7:00:04 and ssid "ap-wlan1-ccee"
wlan1: interface state COUNTRY_UPDATE->ENABLED
wlan1: AP-ENABLED

ifconfig wlan1

wlan1     Link encap:Ethernet  HWaddr 02:03:7F:D7:00:04
          inet addr:192.168.46.30  Bcast:192.168.46.255  Mask:255.255.255.0
          inet6 addr: fe80::3:7fff:fed7:4%2126838504/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:14 errors:0 dropped:0 overruns:0 frame:0
          TX packets:63 errors:0 dropped:15 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1890 (1.8 KiB)  TX bytes:5588 (5.4 KiB)

/ sys / class / net / wlan1 /地址

02:03:7f:d7:00:04

在客户端

服务器公开了错误的BSSID,因此协商失败。

WirelessNetView结果

WirelessNetView

Wireshark结果

我们可以看到服务器从正确的地址发送邮件,但是客户端对错误的地址进行了响应。

2 个答案:

答案 0 :(得分:1)

最后,正是我们使用的硬件软件的组合才导致了问题。我们正在运行在Digi cc6ul模块中与Digi Embedded Yocto 2.0一起烘焙的Yocto Linux映像。这些模块带有一个U引导,该U引导具有3个用于虚拟接口MAC地址的变量:wlan1adrrwlan2adrrwlan3adrr。事实证明,在cc6ul上,wlan1adrr变量用于将MAC分配给p2p0接口,其中用于将MAC分配给wlan1接口的变量是{{1} }。最重要的是,用于BSSID的hostapd用户配置不会覆盖广播的BSSID,它直接是wlan2addr值。解决方案是只需更改wlan2adrr U-Boot变量,然后重新启动后一切正常!

答案 1 :(得分:0)

我认为日志显示的是src和dst地址,而不是BSSID。因此,dst与02:03:7f:d7:00:04相匹配。因此,您在客户端看到的地址是客户端的mac地址。如果需要解码BSSID,则可能需要捕获无线数据包