我有一个在 Ubuntu 机器上运行的 Java 程序。该程序应要求用户输入要连接的 wifi 网络的登录名和密码,然后 Java 程序必须使用该登录名和密码自动连接。
我找到了iwconfig
它,但它不起作用
我启动了以下命令:
iwconfig wlan0 essid login key pass
Error for wireless request "Set Encode" (8B2A)
invalide argument "pass"
那么,如何通过命令行连接无线网络?
答案1
给出这个问题的答案的问题是,答案不止一个,而是有很多,这取决于所使用的授权方案。
由于大多数家庭网络使用带 PSK 的 WPA/WPA2,我将告诉您在这种情况下如何操作。对所有可能的子情况进行适当的处理对于本论坛来说太长了。
wpa_passphrase your_network_name your_password > wpa.conf
ifconfig wlan0 down
ifconfig wlan0 up
iwconfig wlan0 essid your_network_name
wpa_supplicant -B -Wnl80211 -i wlan0 -c wpa.conf
dhclient wlan0
这些命令必须以 root 身份执行。