nmcliなしでWEP / WPAに接続しますか?

nmcliなしでWEP / WPAに接続しますか?

nmcliカスタマイズされたRockchipマイクロコントローラで動作が停止する問題に直面しました。

を実行しましたが、nmcli dev wifi結果が出ていないため、使用を開始しましたiwlist scan。似たようなものがありますかnmcli d wifi connect

私はずっとNo network with SSID '2KLIC Guests' found戻ってきていますnmcli

置き換えたいスクリプトは次のとおりです。

if [ -n "$2" ];then
  nmcli d wifi connect "$1" password "$2"
else
  nmcli d wifi connect "$1"
fi

あるいは、問題を解決するために実行できるコマンドがあるかもしれませんnmcli(ある時点で結果を返し、APモードを使用したときに設定を変更したようです)。


結果iwconfig wlan3:

wlan3     unassociated  Nickname:"<WIFI@REALTEK>"
          Mode:Auto  Frequency=2.412 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=0/100  Signal level=0 dBm  Noise level=0 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

答え1

wpa_supplicant次のコマンドで接続し、ファイルをwpa_supplicant.conf作成してから、次のコマンドで接続できます。wpa_passphrase

touch /etc/wpa_supplicant/wpa_supplicant.conf
echo ctrl_interface=/run/wpa_supplicant > /etc/wpa_supplicant/wpa_supplicant.conf
echo update_config=1 >> /etc/wpa_supplicant/wpa_supplicant.conf
wpa_passphrase "Your_SSID" Your_PASSWORD >> /etc/wpa_supplicant/wpa_supplicant.conf
i=$(iw dev | grep Interface | awk '{ print $2}')
killall wpa_supplicant
wpa_supplicant -i $i -c/etc/wpa_supplicant/wpa_supplicant.conf -B
dhclient $i

サンプルスクリプトには、次の行を含めることができます。

i=$(iw dev | grep Interface | awk '{ print $2}')
killall wpa_supplicant
wpa_supplicant -i $i -c/etc/wpa_supplicant/wpa_supplicant.conf -B
dhclient $i

killall wpa_supplicantこれは、wpa_supplicantインスタンスを作成するnetwork-managerを使用しているために追加されました。

wpa_supplicantWEPキーを使って接続することもできます。

手動で作成しますwpa_supplicant.confwpa_passphraseconfファイルを生成できません)。例:

ctrl_interface=/run/wpa_supplicant
update_config=1

network={
    ssid="YOUR-SSID"
    key_mgmt=NONE
    wep_key0="12345"
    wep_tx_keyidx=0
}

または、以下を介して接続できます。

iwconfig <interface> essid "Your_SSID" key WEP_KEY

または:

iw dev <interface> connect "Your_SSID" key 0:WEP_KEY

コマンドwpa_cliラインツール(提供:@decter)また、代わりに、次のように入力するか、直接を介してnmcli対話型モードを使用することもできます。wpa_cli

wpa_cli -p/var/run/wpa_supplicant OPTION

以下が可能OPTIONです:scan; scan_results, add_network 0..... 詳細を確認してman wpa_cli調べwpa_cli --helpてください。

答え2

結局私のスクリプトをこれに置き換えました。私のシステムで動作しているようで、元の構造を維持します。

wifi=$(cat /proc/net/wireless | perl -ne '/(\w+):/ && print $1')

if [ -n "$2" ];then
  iwconfig $wifi essid "$1" key "s:$2"
else
  iwconfig $wifi essid "$1" key
fi

dhclient $wifi

答え3

あなたはそれを使用することができますベイダー、Wi-Fiネットワークを管理するためのコマンドラインとGUIインターフェイスがあります。私はNMの軽い選択肢としてしばらくそれを使用してきました。これにより、手動で処理する必要がなくなりますwpa_supplicant

関連情報