如何從命令行連接到wifi?
我正在使用最新版本的基於 Debian 的 Linux Kali。也許這是一個XY 問題,因為主要問題是在我登錄系統後我得到一個空白螢幕和滑鼠指針。網上有人建議我更換視窗管理器。
但我無法做到這一點,因為我無法連接到 wifi。
我在這裡找到瞭如何做到這一點的教程
我試著一步一步地去做,但它對我不起作用。在作者寫的那個教程中,我需要使用命令
ip link set wlan0 ip
來調出 wifi 界面。在他的範例中,輸出如下所示:root@kali:~# ip link show w lan0 4: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DORMANT qlen 1000 link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff root@kali:~# ip link set wlan0 up root@kali:~# ip link show wlan0 4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000 link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff
另一方面,當我打電話時:
ip link set wlan0 up ip link show wlan0
我得到:
4: wlan0: <NO_CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT qlen 1000 link/ether 00:60:64:37:4a:30 brd ff:ff:ff:ff:ff:ff
並在使用有效的網路詳細資訊執行 wpa supplicant 之後
wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf
iw wlan0 link
仍然返回Not connected.
我該如何解決這個問題,接下來我該怎麼做?
我假設
wpa_supplicant
並iw
已安裝。
- 要通過您連接到wifi,
wpa_supplicant
您需要創建一個wpa_supplicant.conf
文件nano /etc/wpa_supplicant.conf
使用以下幾行:
network={ ssid="wifi_name" psk="wifi_key" }
或者您可以使用
wpa_passphrase
創建配置文件(複製和過去):wpa_passphrase "Your_SSID" Your_passwd
wpa_supplicant.conf
您也可以直接通過以下方式編寫:wpa_passphrase "Your_SSID" Your_passwd > /etc/wpa_supplicant.conf
要連接,請鍵入以下命令:
sudo ip link set wlan0 down sudo ip link set wlan0 up sudo wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant.conf -Dnl80211,wext sudo dhclient wlan0
注意:選項中的多個逗號分隔的驅動程序包裝
-Dnl80211,wext
器使 wpa_supplicant 使用能夠初始化介面的第一個驅動程序包裝器(請參閱 wpa_supplicant(8))。這在使用使用不同驅動程序的多個或可移動(例如 USB)無線設備時很有用。您可以通過
wpa_supplicant
無wpa_supplicant.conf
文件連接:wpa_supplicant -B -i wlan0 -c <(wpa_passphrase "Your_SSID" Your_passphrase) && dhclient wlan0
您可以訪問Arch-linux 的官方文件 以獲取有關配置文件和參數的更多資訊。
- 你可以通過連接
nmcli
nmcli d wifi connect Your_SSID password Your_Psswd_here ifname Your_interface
例子:
nmcli d wifi connect MYSSID password 12345678 ifname wlan0
- 您也可以通過以下方式連接
wpa_cli
:打開終端並輸入
wpa_cli
要掃描,請鍵入:
scan scan_results
創建網路:
add_network
這將輸出一個數字,即網路ID,例如
0
接下來,我們需要為網路設置SSID和PSK。set_network 0 ssid "SSID_here" set_network 0 psk "Passphrase_here"
無線連接後,它應該會自動獲得一個 IP 地址。如果沒有,您可以執行
dhclient
以通過 DHCP 獲取 IP 地址。該
dhclient
命令可以替換為 2 個ip
命令:ip addr add IP-ADDRESSE/24 dev wlan0 ip route add default via ROUTE
iwctl
命令行工具。該
iwd
軟體包提供iwctl
命令行工具。預設情況下不安裝該軟體包。為避免任何衝突,wpasupplicant.service
應停止/禁用。有關更多詳細資訊,請參閱 U&L 上的此答案:Connect to wifi from command line on linux systems through the iwd (wireless daemon for linux)
進一步閱讀: