树莓派Debian命令行设置wifi连接

时间:2021-10-07 15:26:26

如果你没有登录到常用的图形用户界面,这种方法就适合用来设置树莓派的wifi。尤其是在你没有屏幕或者有线网络,仅使用串口控制线的时候。另外,这种方法也不需要额外的软件,所有需要的东西都已经包含进了树莓派。

GETTING WIFI NETWORK DETAILS(获取wifi网络详情)

为了扫描wifi网络,可以使用sudo iwlist wlan0 scan命令。这个命令会列出所有可使用的wifi网络,以及网络的一些有用信息。例如:

1、ESSID:"testing" :这是wifi网络的名字。

2、IE:IEEE 802.11i/WPA2 Version1 :这部分表示网络的验证方式,在这里是WPA2,这是一种用于替代WPA1的更新更加安全的无线网络标准。本指南应该适用于WEP、WPA或者WPA2,但是可能不适用企业版WPA2。

你同样需要wifi网络的密码。大多数家庭路由器(默认密码)都有标注在路由器背面的标签上。在这个例子中,搜索到的wifi网络的ESSID(ssid)是testing,并且密码(psk)是testingPassword。

ADDING THE NETWORK DETAILS TO THE RASSBERRY PI(添加网络到树莓派上)

使用nano编辑器打开wpa-supplicant配置文件:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

在文件的底部添加下面内容:

network={
    ssid="The_ESSID_from_earlier"
    psk="Your_wifi_password"
}

在本示例网络中,我们应该添加为:

network={
    ssid="testing"
    psk="testingPassword"
}

现在按ctrl+x键然后按y键,最后再按回车键


这个时候,wpa-supplicant在几秒钟内应该就会注意到设置已经改变了,并且会尝试去连接这个网络。如果没有,那么就需要使用sudo ifdown wlan0

sudo ifup wlan0命令手动重启接口,或者直接使用sudo reboot命令重启树莓派。


你可以使用ifconfig wlan0命令确认是否已经成功连接上网络。如果inet addr中已经有地址了,说明树莓派成功连接上了网络。如果没有,请检查你的密码和ESSID是否正确。


如果要配置多个wifi热点,按如下操作配置

修改/etc/wpa_supplicant/wpa_supplicant.conf,下面是我使用的配置文件:

 ctrl_interface=/var/run/wpa_supplicant
 #ap_scan=1
 network={
        ssid="wo_shi_yige_wifi_ssid"
        scan_ssid=1
        psk="wo_shi_mi_ma"
        priority=5
 }
 network={
        ssid="pi"
        psk="onlyforpi"
        priority=1
 }
ap_scan:1是默认值,因此我注掉了
1:这个模式下总是先连接可见的WiFi,如果扫描完所有可见的网络之后都没有连接上,则开始连接隐藏WiFi。
2:会按照network定义的顺序连接WiFi网络,遇到隐藏的将立刻开始连接,因此在这个模式下连接顺序不受priority影响
ctrl_interface:这个文件夹里面存的是一个当前使用的interface的socket文件,可以供其他程序使用读取WiFi状态信息
network:是一个连接一个WiFi网络的配置,可以有多个,wpa_supplicant会按照priority指定的优先级(数字越大越先连接)来连接,当然,在这个列表里面隐藏WiFi不受priority的影响,隐藏WiFi总是在可见WiFi不能连接时才开始连接。
ssid:网络的ssid
psk:密码
priority:连接优先级,越大越优先
scan_ssid:连接隐藏WiFi时需要指定该值为1
修改/etc/network/interfaces使用wpa_supplicant.conf来配置无线网络