Linux下的iwpriv(iwlist、iwconfig)的简单应用
无线网络飞速发展的今天,许多设备都提供了连接无线网络的功能。
那么Linux下的wifi到底该怎么配置、连接呢??
开始配置之前,我们要说说iw家族。iw是linux下常用的wifi配置工具,网上有相应的库和源码。全名为wirelessTools。
配置wifi模块,并连接相应的无线网络过程:主要使用iwpriv命令
1. 扫描可用的无线网络:
- iwlist wifi-name scanning
其中wifi-name为无线网卡的名字,比如网卡eth0就是系统默认的网卡名字, wifi-name可以用ifconfig查看,一般为ra0。
2. 看扫描到的网络信息,按要连接的网络类型进行配置。以下为扫描到的网络:
- iwlist ra0 scanning
- ===>rt_ioctl_giwscan. 11(11) BSS returned, data->length = 1427
- ra0 Scan completed :
- Cell 01 - Address: C4:CA:D9:1D:9E:A0
- Protocol:802.11b/g/n
- ESSID:""
- Mode:Managed
- Frequency:2.412 GHz (Channel 1)
- Quality=7/100 Signal level=-87 dBm Noise level=-82 dBm
- Encryption key:off
- Bit Rates:54 Mb/s
- Cell 02 - Address: FC:75:16:A1:A9:16
- Protocol:802.11b/g/n
- ESSID:"jxj_rd"
- Mode:Managed
- Frequency:2.452 GHz (Channel 9)
- Quality=94/100 Signal level=-53 dBm Noise level=-92 dBm
- Encryption key:on
- Bit Rates:54 Mb/s
- IE: WPA Version 1
- Group Cipher : TKIP
- Pairwise Ciphers (2) : TKIP CCMP
- Authentication Suites (1) : PSK
- IE: IEEE 802.11i/WPA2 Version 1
- Group Cipher : TKIP
- Pairwise Ciphers (2) : TKIP CCMP
- Authentication Suites (1) : PSK
- Cell 03 - Address: C4:CA:D9:02:2A:70
- Protocol:802.11b/g/n
- ESSID:""
- Mode:Managed
- Frequency:2.462 GHz (Channel 11)
- Quality=83/100 Signal level=-57 dBm Noise level=-92 dBm
- Encryption key:off
- Bit Rates:54 Mb/s
- Cell 04 - Address: 14:D6:4D:75:CA:9C
- Protocol:802.11b/g/n
- ESSID:"liangym"
- Mode:Managed
- Frequency:2.472 GHz (Channel 13)
- Quality=100/100 Signal level=-27 dBm Noise level=-92 dBm
- Encryption key:on
- Bit Rates:54 Mb/s
- IE: WPA Version 1
- Group Cipher : CCMP
- Pairwise Ciphers (1) : CCMP
- Authentication Suites (1) : PSK
- IE: IEEE 802.11i/WPA2 Version 1
- Group Cipher : CCMP
- Pairwise Ciphers (1) : CCMP
- Authentication Suites (1) : PSK
如上:ESSID项的值即为无线网络的名字,如上的“jxj_rd”等。如果值为空,说明在无线路由勾选了隐藏ESSID的选项。
ESSID是很关键的,如果被隐藏了,也不是不能连接,而是需要破解,用到其他的工具,非常麻烦。至于如何破解,不是本文叙述的内容,有兴趣的朋友可以网上搜索。
得到了网络的信息,接下来就是配置连接选项了。以连接"jxj_rd"为例,我们看看具体的过程:
(1) 设置要连接的网络类型:
- iwpriv ra0 set NetworkType=Infra
(2) 设置要连接的无线网络的安全模式:
- iwpriv ra0 set AuthMode=WPA2PSK
(3) 设置网络加密方式:(CCMP即为AES)
- iwpriv ra0 set EncrypType=TKIP
(4) 设置连接时的密码: ********为加密网络的密码
- iwpriv ra0 set WPAPSK=*******
(5) 连接该网络:有两种方式:
<1> 用iwpriv命令
- iwpriv ra0 set SSID=jxj_rd
<2> 用iwconfig命令
- iwconfig ra0 essid jxj_rd
至此,如果密码正确,就可以连接上网络jxj_rd了。如果你不放心,可以用命令查看状态:
- iwpriv ra0 connStatus
当然,你也可以用iwconfig命令查看状态,这里不再赘述。
Linux下的iwpriv(iwlist、iwconfig)的简单应用的更多相关文章
- 在Linux下如何使用GCC编译程序、简单生成 静态库及动态库
最近在编写的一个Apache kafka 的C/C++客户端,,在看他写的 example中,他的编译是用librdkafka++.a和librdkafka.a 静态库编译的,,,而我们这 ...
- linux下堆溢出unlink的一个简单例子及利用
最近认真学习了下linux下堆的管理及堆溢出利用,做下笔记:作者作为初学者,如果有什么写的不对的地方而您又碰巧看到,欢迎指正. 本文用到的例子下载链接https://github.com/ctfs/w ...
- 【转】 linux下配置squid 服务器,最简单使用方式
linux下配置squid 1.什么是squid Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器.Squid有广泛的用途,从作为网 ...
- Linux下使用autoconf 和 automake 编译简单的HelloWorld
使用过开源C/C++项目的同学都知道,标准的编译过程已经变成简单的三部曲:./configure /make/make install,使用起来很方便,不像平时自己写代码,要手写一堆复杂的makefi ...
- Linux下chkconfig命令详解 这个简单明了啊
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--ad ...
- linux下部署一个JavaEE项目的简单步骤
部署项目的前提是准备好环境,包括:Java运行环境(JDK),Tomcat,Mysql数据库 1.首先将东西上传到服务器,我是在windows安装ssh工具(下载安装git即可http://gitfo ...
- linux下安装mysql5.7.17及简单配置
原文:http://www.th7.cn/db/mysql/201612/218745.shtml 1.mysql5.7.17安装在/usr/local/mysql目录里面,也可以安装在其他地方 (安 ...
- Linux下线程池的理解与简单实现
首先,线程池是什么?顾名思义,就是把一堆开辟好的线程放在一个池子里统一管理,就是一个线程池. 其次,为什么要用线程池,难道来一个请求给它申请一个线程,请求处理完了释放线程不行么?也行,但是如果创建线程 ...
- Linux下select的用法--实现一个简单的回射服务器程序
1.先看man手册 SYNOPSIS /* According to POSIX.1-2001 */ #include <sys/select.h> / ...
随机推荐
- 初识XML及简单工厂运用--网络电视精灵
网络电视精灵 任务描述 1. 解析XML文件中的数据 三个简单的xml文件; <?xml version="1.0" encoding="utf-8" ? ...
- 如何将C++中的SOCKADDR_IN*参数类型转换成C#中的参数类型
将C++中的参数类型SOCKADDR_IN*映射为C#中的IntPtr参数类型的示例代码如下: IntPtr ptrSockaddr = new IntPtr(); //ip地址 sockaddr_i ...
- MySQL中,修改表的某一字段的部分值
语法:update 表名 set 字段名 = replace(字段名,'替换前内容','替换后的内容') where 条件. 如: 执行sql语句:update student set name = ...
- Web前端新人笔记之文本属性
前一段时间因工作时间减缓了更新笔记的时间.我也不知道有没有会观看并且能不能帮到一些初学者,这只是我的一些小随笔而已.当然我也希望的的每一篇随笔都可以帮到更多的想要学习前端开发的初学者们,更希望你们也可 ...
- Eat that Frog
Eat that Frog,中文翻译过来就是“吃掉那只青蛙”.不过这里并不是讨论怎么去吃青蛙,而是一种高效的方法. Eat that Frog是Brian Tracy写的一本书(推荐阅读).这是一个很 ...
- centos 7.0 mono&Jexus V5.5.3安装
首先我们需要先配置一下yum源中mono的引用说明: 第一步: vi /etc/yum.repos.d/mono.repo 第二步:在刚打开的文件中编辑如下内容 [mono]name=monobase ...
- 【转】c#文件操作大全(一)
1.创建文件夹//using System.IO;Directory.CreateDirectory(%%1); 2.创建文件//using System.IO;File.Create(%%1); 3 ...
- JS判断上传图片格式是否正确
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- How to fix “Duplicate sources.list entry …” issue
The correct format of repository source line is <type of repository> <location> <di ...
- 制作Mac OS X Mavericks 安装U盘
1. 8G+ U盘一个. 2. App Store 下载Maverics到本地(默认会下载到Applications) 2. 打开Mac OS 磁盘工具(Disk Utility),左侧选中U盘,在右 ...