1、认证和加密的概念

(1)概念

(2)阶段划分

初级版本:认证不需要密码, 传输不需要加密

认证不需要密码, 传输需要加密(用WEP算法)

认证需要密码(用WEP算法), 传输需要加密(用WEP算法,容易破解)

过渡版本:WPA   认证方式(802.1x),加密方式(TKIP,WEP)

认证方式(PSK),加密方式(TKIP,WEP)

终极版本: WPA2   认证方式(802.1x),加密方式CCMP(AES-CCMP),TKIP,WEP

认证方式(PSK),加密方式CCMP(AES-CCMP),TKIP,WEP

802.1x : 手机连接到AP后,它的认证过程不是在AP上进行的,而是发送到一个服务器,由服务器进行认证,在大型公司里面,用一个服务器统一进行认证这样比较好,但对于家庭网络,这样做认证成本太高,因而用PSK替代

PSK : 手机只需要连接AP,AP会提示手机输入密码,AP上事先设置密码,如果手机提供的密码和事先设置的密码一样,那么手机就可以使用无线网络。

(3)手机认证方式

以手机上WIFI热点为例,有4种常用的"认证/加密"

a. open

b. WEP

c. WPA(TKIP)

d. WPA2(AES)

2、编译、使用应用程序iw,wpa_supplicant,dhcp

(1)旧工具iwconfig, iw是它的替代者, 可用于这2种"认证/加密": open, WEP

//iw工具依赖于libnl库

tar xzf libnl-3.2.23.tar.gz

cd libnl-3.2.23/

//配置

./configure --host=arm-linux --prefix=$PWD/tmp

修改 lib/addr.c 添加宏(宏来自内核源码)

//编译

make

//安装

make install

//把头文件和库复制到工具链里面去

//把库的所有*so*复制到开发板所使用的网络文件系统的lib目录

把编译出来的头文件应该放入:(编译出来的文件都放在 libnl-3.2.23/tmp目录下)

include$   sudo cp   *  -rf   /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include





cd tmp/include/libnl3

sudo cp netlink -rf /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include





把编译出来的库文件应该放入:(-d表示原来是链接文件也作为链接文件拷贝过去)

lib$ cp *  -rf    -d /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib





把编译出来的库文件应该放入NFS文件系统的lib目录:lib$    cp  *so*     -d  work/nfs_root/fs_mini_mdev_new/lib





//编译iw工具

tar xjf iw-3.11.tar.bz2

cd iw-3.11/

修改Makefile:

CC = "arm-linux-gcc"

NL3xFOUND := Y

#LIBS += $(shell $(PKG_CONFIG) --libs $(NLLIBNAME))

#CFLAGS += $(shell $(PKG_CONFIG) --cflags $(NLLIBNAME))





在info.c的代码前面添加

#define htole16(X)  (((((uint16_t)(X)) << 8) | ((uint16_t)(X) >> 8)) & 0xffff)



编译并把iw拷贝到网络文件系统的bin目录下面去



使用:

iw list  // 列出WIFI网卡的性能

ifconfig wlan0 up //启动网卡

iw dev wlan0 scan  | grep dswei // 扫描WIFI AP. | grep dswei 表示在输出结果在那个搜索dswei

iw wlan0 connect dswei  // 连接到WIFI AP:dswei (open)

iw wlan0 connect dswei keys d:0:baiwenwang123// 连接到WIFI AP:dswei
(WEP)

                            d: default, 0: 第0个密码 

ifconfig wlan0 192.168.1.55 //配置IP

ping 192.168.1.1

iw wlan0 disconnect  //取消链接

转自:http://blog.csdn.net/qingkongyeyue/article/details/52248828

使用wifi网卡笔记2----概念及工具iw(STA模式)的更多相关文章

  1. 使用wifi网卡笔记4---工具dhcp及全自动使用wifi

    dhcp : 使得WIFI网卡动态获取IP ·1.源码获取 输入dh看有哪些应用程序,输入dhclient -v查看一下相关信息,源码获取的网址 2.开发环境配置 解压 tar xzf dhcp-4. ...

  2. 使用wifi网卡笔记5---AP模式

    使用WIFI网卡的AP功能 1.下载源码 hostapd: http://w1.fi/hostapd/ 2.编译.安装(hostapd依赖于libnl库,需要编译.安装此库) tar xzf host ...

  3. 使用wifi网卡笔记1----网卡选型、开发环境搭建、内核配置

    1.wifi的STA模式和AP模式 Ap(Access Point)模式指的是可以将网卡设置为路由器用来共享流量或有线网络给别人使用, sta模式指的是当做网卡连接路由器上网 (1):AP也就是无线接 ...

  4. 使用wifi网卡笔记3---工具wpa_supplicant(STA模式)

    1.  wpa_supplicant介绍 supplicant是恳求者的意思,是wpa的发起者,是发送认证请求的设备(手机),手机--AP--认证服务器,可用于上述4种"认证/加密" ...

  5. 使用WIFI网卡的AP功能

    前几篇博客中,wifi无线网卡都工作于STA模式,那么它能否工作于AP模式.本篇博客就研究使wifi 无线网卡工作于AP模式.使用一个应用程序hostapd,关于它的介绍可以去此网站https://w ...

  6. Oracle RAC学习笔记:基本概念及入门

    Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章]    oracle 10g real applica ...

  7. 3.1 wifi网卡RT3070在S3C2440的移植和使用

    学习目标:熟悉RT3070在S3C2440的移植和使用,以及其中的相关工具的安装和使用: 一.配置内核选择WIFI驱动 1. 将usb wifi插到电脑,在ubuntu使用命令:# lsusb 查看w ...

  8. 34、JZ2440上WIFI网卡使用

    :http://wireless.kernel.org在这个网站上的document中有下面说有内容的介绍 1. 准备工作(虚拟机,开发板)及配置内核选择WIFI驱动1.1 选型:确定网卡的VID,P ...

  9. 使用WIFI网卡iw

    上篇博客中,配置修改了内核,以支持所选择的USB网卡,本篇博客需要去编写一些应用程序,将wifi网卡使用起来. 1.1 概念:认证/加密认证:就是用来判断哪些用户可以使用这个无线网络加密:是指手机和A ...

随机推荐

  1. weblogic、hibernate 包冲突

    解决办法: 在weblogic 配置  [paths]项中 添加antlr-2.7.7.jar,该jar包应该位于引用weblogic.jar之前,使启动时不再加载weblogic中的低版本的antl ...

  2. vue.js 源代码学习笔记 ----- 工具方法 option

    /* @flow */ import Vue from '../instance/index' import config from '../config' import { warn } from ...

  3. react 入门的好东西 可以做出一个完整的网站

    链接  (包含了antd 组件的使用) 安装依赖报错问题                            可能需要按顺序安装,  不能cnpm npm 混合安装,  参考这个package.js ...

  4. Data truncated for column

    数据类型不合法造成的.检查插入的数据.

  5. ubuntu16 sogou install

    1,下载搜狗deb文件(ubuntu16不要参考搜狗旧的安装文档): http://pinyin.sogou.com/linux/ 2,双击sogoupinyin_2.1.0.0086_amd64.d ...

  6. 实战maven私有仓库三部曲之二:上传到私有仓库

    在上一章<实战maven私有仓库三部曲之一:搭建和使用>我们搭建了maven私有仓库,并体验了私有仓库缓存jar包的能力,避免了局域网内开发人员去远程中央仓库下载的痛苦等待,本章我们再来体 ...

  7. 使用Percona Xtrabackup创建MySQL slave库

    一.使用Percona Xtrabackup创建MySQL slave库 MySQL Server 版本: Server version: 5.7.10-log MySQL Community Ser ...

  8. 折腾 Phalcon 的笔记

    不要用 IIS!Apache 万岁! 不要用 Web Platform Installer!自己动手丰衣足食! 注意版本号.TS 与 NonTS.x86 与 x64 的区别! 关于 Apache 的配 ...

  9. Java面向对象设计主要有三大特征:封装性、继承性和多态性

    Java面向对象设计主要有三大特征:封装性.继承性和多态性 一  封装性   1.1  概念:它是将类的一些敏感信息隐藏在类的类部,不让外界直接访问到,但是可以通过getter/setter方法间接访 ...

  10. 无法连接到SQL数据库

    问题: 连接到服务器------------------------------无法连接到 .. 其他信息:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服 ...