网络配置¶
WIFI¶
目前通过wpa_supplicant
工具来配置无线网络,这是一个连接、配置WIFI的工具,它主要包含wpa_supplicant
与wpa_cli
两个程序。
命令行配网¶
启动wpa_supplicant进程¶
wpa_supplicant -B -i wlan0 -c /data/cfg/wpa_supplicant.conf
如果/data/cfg/wpa_supplicant.conf文件不存在就创建,添加如下配置项:
vi /data/cfg/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
通过wpa_cli配置WiFi¶
常用命令:
wpa_cli -i wlan0 scan // 搜索附近wifi网络
wpa_cli -i wlan0 scan_result // 打印搜索wifi网络
wpa_cli -i wlan0 add_network // 添加一个网络连接
如果要连接加密方式是[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] (wpa加密),wifi名称是name,wifi密码是:psk。操作如下:
wpa_cli -i wlan0 set_network 0 ssid '"name"'
wpa_cli -i wlan0 set_network 0 psk '"psk"'
wpa_cli -i wlan0 set_network 0 key_mgmt WPA-PSK
wpa_cli -i wlan0 enable_network 0 //使能WiFi
如果要连接加密方式是[WEP][ESS] (wep加密),wifi名称是name,wifi密码是psk。操作如下:
wpa_cli -i wlan0 set_network 0 ssid '"name"'
wpa_cli -i wlan0 set_network 0 key_mgmt NONE
wpa_cli -i wlan0 set_network 0 wep_key0 '"psk"'
wpa_cli -i wlan0 enable_network 0
如果要连接加密方式是[ESS] (无加密),wifi名称是name。操作如下:
wpa_cli -i wlan0 set_network 0 ssid '"name"'
wpa_cli -i wlan0 set_network 0 key_mgmt NONE
wpa_cli -i wlan0 enable_network 0
使能保存WIFI连接信息
wpa_cli -i wlan0 set update_config 1
保存WIFI连接信息
wpa_cli -i wlan0 save_config
连接已有的连接
wpa_cli -i wlan0 list_network // 列举所有保存的连接
wpa_cli -i wlan0 select_network 0 // 连接第1个保存的连接
wpa_cli -i wlan0 enable_network 0 // 使能第1个保存的连接
关闭WiFi
ifconfig wlan0 down
或直接修改配置文件¶
修改如下文件:
vi /data/cfg/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
添加如下配置项
network={
ssid="WiFi-AP" // WiFi 名字
psk="12345678" // WiFi 密码
key_mgmt=WPA-PSK // 加密方式
# key_mgmt=NONE // 不加密
}
重新读取上述配置:
wpa_cli reconfigure
重新连接:
wpa_cli reconnect
手机配网¶
手机配网方式多样,可以通过Softap配网,也可以通过蓝牙配网。
这里介绍ROC-RK3308-CC自带的配网方式。
Softap 配网¶
配网APP下载:RkEcho.apk,同时在SDK里面也能找到:SDK/external/app/RkEcho.apk
Buildroot 配置:
源码开发目录:
/external/softapServer/ -- WIFI 与 APK 端相关操作
/external/softapDemo/ -- WiFi 相关操作
准备手机安装 apk RkEcho.apk,这是必须的。
然后确保 wifi server 进程启动
wpa_supplicant -B -i wlan0 -c /data/cfg/wpa_supplicant.conf
配网流程:
● 开启热点,执行命令如下:
softapServer Rockchip-Echo-123
注意:wifi热点的命名方式必须为 Rchip-Echo-xxx。
● 热点开启完毕后,打开手机,进入手机自身的设置,点击连接刚刚设置好的热点,如:Rckchip-Echo-123。
● 连接成功后,打开手机已经安装好的apk,进行如下操作:
打开 apk,点击 wifi setup -> CONFIRM -> 确认 -> wifi 列表 -> 点击你要连接的网络名字 -> 输入密码 -> 点击确认。
● 听到语音提示,网络已连接,就可以开始使用啦!
● 检查网络是否连通:
ping www.baidu.com
● 注意要点:
softspServer Rockchip-Echo-123
执行后命令行是无法退出的,直到配网完成名字千万不要写错,否则 apk 无法进入确认界面(Rockchip-Echo-xxx)
此功能暂时只支持Android手机。
IP地址设置¶
设置静态IP地址¶
以太网设置静态IP步骤如下:
ip addr add 168.168.100.78/255.255.0.0 dev eth0 #ip地址/子网掩码
ip route flush dev eth0
ip route add 168.168.0.1 dev eth0 #网关
ip route add default via 168.168.0.1 dev eth0 #添加默认路由
echo -e "nameserver 114.114.114.114\nnameserver 8.8.8.8" > /userdata/resolv.conf #设置DNS
WIFI设置静态IP步骤同上。