Подключите интерфейс WLAN к конкретному BSSID без знания SSID

5996
Jens Wirth

Я знаю BSSID и кодовую фразу моего беспроводного маршрутизатора, и я хочу подключить к нему свой беспроводной интерфейс, не заботясь о SSID. Таким образом, я хочу, чтобы он работал даже после изменения SSID беспроводного маршрутизатора.

Я пытался добиться этого, чтобы изменить мои /etc/network/interfaces:

iface wlan0 inet dhcp #wpa-ssid "MySSID" # old line wpa-bssid 01:23:45:67:89:ab # new line wpa-psk "MYPASSWORD" 

Но при использовании этой конфигурации система остается в автономном режиме. Я думаю, что ssid является обязательным для wpa_supplicant, но я не понимаю, почему. Есть ли техническая причина? Как это обойти?

2
Между прочим, «01: 23: 45: 67: 89: ab» является плохим примером MAC-адреса, потому что установка бита места в первом октете означает, что это адрес многоадресной рассылки. BSSID - это всегда одноадресные адреса. Я видел, как люди пытались использовать этот адрес в своем беспроводном интерфейсе, а потом удивлялись, что все сломалось. :-) Spiff 7 лет назад 0

2 ответа на вопрос

2
Jens Wirth

It works when exactly the same information, bssid and psk, is provided via the configuration file to wpa_supplicant instead of /etc/network/interfaces:

/etc/network/interfaces:

iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf 

/etc/wpa_supplicant/wpa_supplicant.conf:

network={ bssid=01:23:45:67:89:ab psk="MYPASSWORD" } 

I also tested changing the ssid of the wireless router and keeping the psk unchanged, works well.

2
Spiff

If you're using WPA-PSK or WPA2-PSK with a passphrase, the passphrase is mixed with the SSID and run through a function called PBKDF2 to generate the actual PSK.

So unless you're passing the raw PSK (64 hexadecimal digits) to your software, it can't derive the PSK unless it knows the SSID.

I suppose if your software has the smarts to look up the SSID associated with a given BSSID, and then use that SSID with he supplied passphrase to feed into PBKDF2 to create the PSK, then it could get on the network with just a BSSID and passphrase.

Похожие вопросы