樹莓派連線wifi配置DHCP或靜態ip以及如何連線隱藏的ssid(列舉一些不能上網的可能原因)
阿新 • • 發佈:2019-02-07
樹莓派連線無線網主要用到一個軟體名為
wpa_supplicant - Wi-Fi Protected Access client and IEEE 802.1X suppli‐cant
可以使用man wpa_supplicant檢視幫助文件以及man wpa_supplicant.conf檢視其配置檔案的編寫幫助。首先我們需要開啟樹莓派的無線網絡卡,修改配置檔案/etc/network/interfaces
sudo nano /etc/network/interfaces
末行新增
allow-hotplug wlan0
iface wlan0 inet dhcp
iface wlan0 inet static
這裡使用的是dhcp模式來動態獲得ip,接下來修改/etc/wpa_supplicant/wpa_supplicant.conf檔案,填寫wifi接入點的資訊。
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
末行加入
network={
ssid="你的wifi熱點名"
psk="你的wifi密碼"
scan_ssid=1#如果是隱藏的無線網(隱藏ssid)則要加這個配置引數
priority=2#連線優先順序,多個網路時有效
}
接下來在terminal中使用命令
pi @raspberrypi:~ $ sudo ifup wlan0
Internet Systems Consortium DHCP Client 4.3.5
Copyright 2004-2016 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/wlan0/****
Sending on LPF/wlan0/****
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6
DHCPREQUEST of 192.168.1.14 on wlan0 to 255.255.255.255 port 67
DHCPOFFER of 192.168.1.14 from 192.168.1.1
DHCPACK of 192.168.1.14 from 192.168.1.1
Too few arguments.
Too few arguments.
bound to 192.168.1.14 -- renewal in 3060 seconds.
可以看到ip已獲取成功,如果你的路由器關閉了DHCP功能那麼在修改檔案/etc/network/interfaces時就應該替換成如下內容
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.1.15#靜態ip
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
至此連線wifi熱點就已完成了。但是很多時候樹莓派獲得了ip後任然無法上網,接下來列舉一些可能的情況:
1. 無法ping通區域網類其它主機,這種情況如果是靜態ip首先要檢查是否有ip地址衝突,檢視閘道器是否設定正確。多說是靜態引數配置有誤
2. 無法解析域名,DNS服務不可用 nslookup www.baidu.com可以用來檢測dns,如果無法解析。在區域網可通的情況下,要檢查/etc/resolv.conf檔案確定dns伺服器是否正確,一般如果路由器有dns服務,可以使用路由器ip。 也可使用8.8.8.8(google的域名解析服務有時候會被牆)
3. No route to host或者Couldn’t connect to server 一般是路由表配置不正確,使用route命令檢查路由表,新增閘道器route add default gw “你的閘道器”