49.Linux-wpa_cli使用之WIFI开启,扫描热点,连接热点,断开热点,WIFI关闭(49)
本章学习内容:
- 1.WIFI如何开启
- 2.扫描热点
- 3.连接热点
- 4. 断开热点
- 5.关闭WIFI
- 本节使用的是
wpa_supplicant工具,它主要包含wpa_supplicant(命令行模式)与wpa_cli(交互模式)两个程序。
1.WIFI如何开启
ifconfig wlan0 up
wpa_supplicant -Dnl80211 -i wlan0 -c /data/wpa_supplicant.conf -B
//根据配置文件/etc/wpa_supplicant.conf来初始化wlan0
//如果wpa_supplicant.conf文件为空,则不会自动连接,需要连接一次网络才行
wpa_supplicant.conf文件的意义:
用来保存用户连接过的WIFI热点,好处在于,然后每次开启WIFI时,则会自动根据该文件来连接热点
注意: 该文件保存的每个热点都有个priority值,用来系统优先选择哪个热点
2.扫描热点
命令如下:
wpa_cli -i wlan0 scan //扫描附近热点
wpa_cli -i wlan0 scan_result //打印热点信息
效果如下:

3.连接热点
wpa_cli -i wlan0 add_network // 添加一个网络连接,并返回网络ID号,如果wpa_supplicant.conf文件为空,则返回0,表示第一个热点,然后该ID号会在连接热点用到
添加网络连接的意义:
用来区分用户连接过的每个热点
3.1以连接HibyMusic_5G-1为例
wpa_cli -i wlan0 set_network ssid '"HiByMusic_5G-1"' //设置ID为0的热点SSID
wpa_cli -i wlan0 set_network psk '"hibymusic1109"' //设置ID为0的热点的密码
PS:如果是没有加密的公共网络,则输入以下密码:
wpa_cli -i wlan0 set_network key_mgmt NONE
继续输入:
wpa_cli -i wlan0 set_network priority //设置当前网络优先级,默认为2
wpa_cli -i wlan0 set_network scan_ssid //设置ssid默认为1即可
wpa_cli -i wlan0 enable_network //启动连接ID为0的网络 wpa_cli -i wlan0 select_network //选择网络0(这样做的好处在于,可以取消先前的其它网络连接) udhcpc -b -i wlan0 -q
//此时只是连接上,所以还要自动分配IP地址,-b:后台(back) –i:指定接口 –q:获得续约后退出 ,如果想尽在前台运行,则去掉-b,加上-f
如下图所示:
接下来ping一下:

ping通则可以上网了,其中-I表示指定网卡接口
3.2 保存连接的配置
wpa_cli -i wlan0 save_config //保存当前连接的网络配置到wpa_supplicant.conf文件中,使得下次自动连接
保存后的wpa_supplicant.conf文件如下所示:

3.3查看网卡当前连接的信息
wpa_cli -i wlan0 status //查看当前网卡是处于什么状态
打印如下:

wpa_cli -i wlan0 list_network //查看当前连接的是哪个网络
打印如下,可以看到当前连接的ID号为0:

4.断开热点
wpa_cli -i wlan0 disable_network //与id0的网络进行断开
wpa_cli -i wlan0 remove_network //将id0的网络移除掉,必须先断开才行
wpa_cli -i wlan0 save_config //并更新wpa_supplicant.conf文件
配置后的wpa_supplicant.conf文件如下所示:

5.关闭WIFI
killall udhcpc > /dev/null
killall wpa_supplicant > /dev/null
ifconfig wlan0 down
49.Linux-wpa_cli使用之WIFI开启,扫描热点,连接热点,断开热点,WIFI关闭(49)的更多相关文章
- Android Wifi 主动扫描 被动扫描
介绍主动扫描,被动扫描以及连接的wifi的扫描过程 参考文档 <802.11无线网络权威指南> <80_Y0513_1_QCA_WCN36X0_SOFTWARE_ARCHITECTU ...
- Linux wpa_cli 调试方法
记录一下如何使用wpa_cli来进行wifi调试. 1.启动WLAN (1)加载驱动 打开wifi的时候会加载驱动,关闭则会卸载wifi驱动.手动调试的时候,先调用insmod/rmmod命令加载/ ...
- 【Win10 应用开发】扫描和连接Wi-fi网络
老周今天带大家去“扫雷”了,别当真,是扫描并连接指定无线网络,时尚一点叫Wi-fi. 所以,今天的任务要求你的设备至少有1张无线网卡,目前老周没看到过有N张无线网卡的设备.像笔记本.平板等设备都可以, ...
- 升级了win10后开启wifi热点出现iphone&macbook连接断线的问题(win7也一样)
升级了win10后开启wifi热点出现iphone&macbook连接 不间断 断线的问题 文后附上开启虚拟wifi的办法 百度参考了别人也出现这种问题,解决办法是修改信道,默认信道是11,修 ...
- 查看linux虚拟机ssh服务是否开启
知识准备: 1.ssh和sshd的区别: 2.ssh服务进程默认地址:/etc/init.d/ssh 查看ssh服务是否开启 service ssh status 或者: /etc/init.d/ss ...
- Android的WiFi开启与关闭
注意:要首先注册开启和关闭WiFi的权限, <?xml version="1.0" encoding="utf-8"?> <manifest ...
- Lynis 2.2.0 :面向Linux系统的安全审查和扫描工具
Lynis是一款功能非常强大的开源审查工具,面向类似Unix/Linux的操作系统.它可以扫描系统,查找安全信息.一般的系统信息.已安装软件及可用软件信息.配置错误.安全问题.没有设密码的用户帐户.错 ...
- linux下如何修改iptables开启80端口
linux下如何修改iptables开启80端口 最近在做本地服务器的环境,发现网站localhost能正常访问,用ip访问就访问不了,经常使用CentOS的朋友,可能会遇到和我一样的问题.开启了 ...
- DSAPI Wifi热点的扫描与连接
使用DSAPI扫描和连接Wifi热点,支持连接隐藏的SSID. 效果演示: 代码如下: Private Wifi As New DSAPI.网络.Wifi Private Sub Button1_Cl ...
随机推荐
- git 命令行
在使用 git 命令行之前需要下载安装软件官方网站:https://git-scm.com/window 或者 mac 等其它版本自行下载 使用方法一:安装后在项目文件夹中右键菜单会有个 Git Ba ...
- windows下安装nodejs以及python2502,2503解决方案
1. 2053和2052为什么会出现出现这个提示的时候,是在程序安装步骤 到达copy new file的时候 进入下一步进行报错,可以推测出应该是软件包在安装的时候,解压缩部署核心文件的时候出错. ...
- [转]Examining Open vSwitch Traffic Patterns
In this post, I want to provide some additional insight on how the use of Open vSwitch (OVS) affects ...
- 一文读懂高性能网络编程中的I/O模型
1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...
- 深入理解java反射原理
反射是java的一个特性,这一特性也使得它给了广大的第三方框架和开发过者很大的想像空间. 通过反射,java可以动态的加载未知的外部配置对象,临时生成字节码进行加载使用,从而使代码更灵活!可以极大地提 ...
- Python安装模块的几种方法
一.方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:python setup.py i ...
- 基础 jQuery 实例
基础 jQuery 实例 jQuery 原则: 由于 jQuery 是为处理 HTML 事件而特别设计的,那么当您遵循以下原则时,您的代码会更恰当且更易维护: 把所有 jQuery 代码置于事件处理函 ...
- 1 分钟教会你用 Spring Boot 发邮件
Spring Boot 提供了一个发送邮件的简单抽象,使用的是下面这个接口. org.springframework.mail.javamail.JavaMailSender Spring Boot ...
- Saiku多用户使用时数据同步刷新(十七)
Saiku多用户使用时数据同步刷新 这里我们需要了解一下关于saiku的刷新主要有两种数据需要刷新: >1 刷新数据库的表中的数据,得到最新的表数据进行展示. >2 刷新cube信息,得到 ...
- ubuntu16.04 Docker默认存储路径修改
Ubuntu 16.04 Docker默认存储路径修改