Изменить хоста BSSID
У нас есть несколько устройств, которые создают точку доступа, используя wlan1
с hostapd
, Проблема в том, что все они приходят с одинаковым MAC-адресом для wlan1
, что переводится на все устройства, имеющие одинаковый BSSID, поэтому, когда у нас есть более одного устройства на расстоянии, мы не можем подключиться ни к одному из них. Мы пытались изменить BSSID несколькими способами, и все они влияют на HWaddr
показано в ifconfig
вывод, но когда мы сканируем сеть с клиента, мы не видим это изменение, а вместо этого исходный BSSID для всех устройств.
Мы можем видеть, что MAC-адрес для этого wlan1
интерфейс хранится в /sys/class/net/wlan1/address
, который является файлом только для чтения с содержимым: 02:03:7f:d7:00:01
, который является BSSID, который мы видим для всех устройств.
Тогда возникает вопрос: как мы можем изменить BSSID для точек доступа, чтобы мы могли увидеть влияние на стороне клиента, в результате чего в разных сетях будут использоваться разные BSSID, чтобы мы могли устанавливать соединение с разными устройствами, когда все они находятся на расстоянии?
Вещи, которые мы пытались изменить BSSID
С конфигурационным файлом hostapd
/etc/hostapd_wlan1.conf
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
interface=wlan1
driver=nl80211
# WPA2-AES encryption
bssid=DC:EC:BE:91:EA:F1
ssid=ap-wlan1-ccee
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
wpa_passphrase=password-wpa2aes
# IEEE 802.11ac
hw_mode=a
channel=36
ieee80211ac=1
ieee80211n=1
Который запускается с /usr/sbin/hostapd /etc/hostapd_wlan1.conf
с помощью SysVinit
вывод ifconfig после перезагрузки
wlan1 Link encap:Ethernet HWaddr DC:EC:BE:91:EA:F1
inet addr:192.168.46.30 Bcast:192.168.46.255 Mask:255.255.255.0
inet6 addr: fe80::deec:beff:fe91:eaf1%lo/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1016 errors:0 dropped:0 overruns:0 frame:0
TX packets:977 errors:0 dropped:7 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:134304 (131.1 KiB) TX bytes:135467 (132.2 KiB)
С помощью команд ip
ip link set wlan1 down
ip link set dev wlan1 address DC:EC:BE:91:EA:F1
ip link set wlan1 up
вывод ifconfig
wlan1 Link encap:Ethernet HWaddr DC:EC:BE:91:EA:F1
inet addr:192.168.46.30 Bcast:192.168.46.255 Mask:255.255.255.0
inet6 addr: fe80::deec:beff:fe91:eaf1%lo/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1016 errors:0 dropped:0 overruns:0 frame:0
TX packets:977 errors:0 dropped:7 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:134304 (131.1 KiB) TX bytes:135467 (132.2 KiB)
Результат WirelessNetView для любого случая
0 ответов
Изменять .conf бесполезно, потому что каждый раз при перезагрузке его заменяет новый conf.
в
/lib/netifd/wireless/mac80211.sh
mac80211_prepare_vif()
попробуйте изменить $macaddr, который является последним bssid.
Жаль, что это будет полезно.