ワイヤレスルーターの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"
ただし、この構成を使用すると、システムはオフラインのままになります。 wpa_supplicantにはssidが必須だと思いますが、その理由がわかりません。技術的な理由はありますか?これを回避する方法は?
これは、まったく同じ情報bssidとpskが、構成ファイルを介してwpa_supplicant
ではなく/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"
}
また、ワイヤレスルーターのssidを変更し、pskを変更せずに維持することもテストしました。
パスフレーズとともにWPA-PSKまたはWPA2-PSKを使用している場合、パスフレーズはSSIDと混合され、PBKDF2と呼ばれる関数を実行して実際のPSKを生成します。
したがって、生のPSK(64桁の16進数)をソフトウェアに渡さない限り、SSIDを認識していない限りPSKを導出することはできません。
ソフトウェアに特定のBSSIDに関連付けられたSSIDを検索するスマート機能があり、そのSSIDを使用してパスフレーズを提供し、PBKDF2にフィードしてPSKを作成すると、BSSIDとパスフレーズだけでネットワークに接続できると思います。 。