使用WIFI网卡的AP功能

1、下载源码 hostapd: http://w1.fi/hostapd/

2、编译、安装(hostapd依赖于libnl库,需要编译、安装此库)

tar xzf hostapd-2.0.tar.gz

cd hostapd-2.0/

cd hostapd/

cp defconfig .config

修改.config, 加一行: CONFIG_LIBNL32=y

修改Makefile:

CC=arm-linux-gcc  交叉编译

编译

make

安装

make DESTDIR=$PWD/tmp install





把生成的hostapd  hostapd_cli复制到NFS的bin目录

3、使用(启动 hostapd)

hostapd  -h查看命令如何使用

(3.1)定义一个 hostapd的配置文件/etc/myhostapd.conf:WPA/WPA2

配置文件hostapd.conf对相关选项的取值有详细的介绍

ctrl_interface=/var/run/hostapd

#change wlan0 to your wireless device

interface=wlan0   用哪一个网卡

driver=nl80211    所用驱动

ssid=S3C2440    AP名称

channel=1





# 认证/加密方式 

macaddr_acl=0  控制MAC地址的过滤

auth_algs=1   使用wep方式(对于WPA或WPA2,此值必须设为1)

ignore_broadcast_ssid=0

wpa=3   AP既支持WPA也支持WPA2

wpa_passphrase=baiwenwang  密码

wpa_key_mgmt=WPA-PSK  在AP上预设密码,不经服务器处理

wpa_pairwise=TKIP    WPA的加密方式

rsn_pairwise=CCMP  WPA2 的加密方式

把配置文件存为/etc/myhostapd.conf

-B是指运行于后台,/etc/myhostapd.conf是配置文件

启动 hostapd: hostapd -B /etc/myhostapd.conf





4、 启动 dhcpd,给手机分配IP

(1)修改配置文件/etc/dhcpd.conf,添加:

subnet 192.168.1.0 netmask 255.255.255.0 { //子网和子网掩码                    

  range 192.168.1.10 192.168.1.100;          //要分配的IP地址范围                    

  option domain-name-servers 192.168.1.1;      //DNS服务器IP                  

  option routers 192.168.1.1;                    路由                

}

(2)创建空文件/var/db/dhcpd.leases:

>表示生成一个空文件

> /var/db/dhcpd.leases

(3)启动 dhcpd

先配置网卡IP

ifconfig wlan0 192.168.1.1

/etc/dhcpd.conf是我们编写的配置文件 ,wlan0是我们所用的网卡

dhcpd -cf /etc/dhcpd.conf wlan0

(4)查看有多少个客户端连接我的无线IP命令

hostapd_cli和hostapd是通过socket文件来通信的,不指定socket文件,hostapd_cli和hostapd无法连接,修改myhostapd.conf
文件,加上此行ctrl_interface=/var/run/hostapd

hostapd_cli  -h查看如何使用

两种模式

1、直接写入命令

2、交互模式:先直接执行hostapd_cli。

看有多少个客户端连接我们的无线AP

查看MAC地址对应的IP

5、 OPEN方式的配置文件

hostapd的配置文件/etc/myhostapd.conf

ctrl_interface=/var/run/hostapd

#change wlan0 to your wireless device

interface=wlan0   用哪一个网卡

driver=nl80211    所用驱动

ssid=S3C2440    AP名称

channel=1





# 认证/加密方式

macaddr_acl=0  控制MAC地址的过滤

auth_algs=1   使用wep方式(对于WPA或WPA2,此值必须设为1)

ignore_broadcast_ssid=0

6、 WEP方式的配置文件

hostapd的配置文件/etc/myhostapd.conf

ctrl_interface=/var/run/hostapd

#change wlan0 to your wireless device

interface=wlan0

driver=nl80211

ssid=S3C2440

channel=1





# 认证/加密方式

macaddr_acl=0

auth_algs=2

ignore_broadcast_ssid=0

wep_key0="baiwenwang123"   密码

wep_default_key=0   默认密码是第0个密码



baiwenwang123是ASCII码,其16机制可用UltrasEdit在里面写入后,按Ctrl+h键就能出现16进制值

7、 修改/etc/mdev.conf自动启动AP模式(热拔插)

cat /etc/mdev.conf

wlan0 0:0 777 * /sbin/auto_wifi_ap.sh

添加执行权限

chmod +x /sbin/auto_wifi_ap.sh

cat /sbin/auto_wifi_ap.sh 

#!/bin/sh

if [ $ACTION = "add" ]; 

then

   hostapd -B /etc/myhostapd.conf

   ifconfig wlan0 192.168.1.1

   dhcpd -cf /etc/dhcpd.conf wlan0

else

   killall hostapd

   killall dhcpd

fi





注意事项:

对于包含了AR9271网卡驱动的内核,有一个问题:

在上电之前就接上了网卡,那么系统启动后无法识别出这个网卡。

解决方法:

1.上电后再接网卡

2.把驱动编译为模块,当系统启动后再insmod: 可以在上电之前就接网卡





可能原因:ath9k_htc.ko要用到固件, 但是固件要到根文件系统被挂载后才能访问

使用wifi网卡笔记5---AP模式的更多相关文章

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

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

  2. 使用wifi网卡笔记2----概念及工具iw(STA模式)

    1.认证和加密的概念 (1)概念 (2)阶段划分 初级版本:认证不需要密码, 传输不需要加密 认证不需要密码, 传输需要加密(用WEP算法) 认证需要密码(用WEP算法), 传输需要加密(用WEP算法 ...

  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的STA和AP模式指什么?

    1):AP,也就是无线接入点,是一个无线网络的创建者,是网络的中心节点.一般家庭或办公室使用的无线路由器就一个AP. 2):STA站点,每一个连接到无线网络中的终端(如笔记本电脑.PDA及其它可以联网 ...

  6. 使用WIFI网卡的AP功能

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

  7. 使用WIFI网卡 dhcp动态获取IP

    前面几篇博客中,wifi网卡的ip都是手工设置的,本篇博客将来移植dhcp,使得wifi网卡可以动态的获取ip.路由等信息. 那我们去哪里下载dhcp源码呢?在pc机上执行dh +tab键,看一下有哪 ...

  8. Android KitKat 4.4 Wifi移植AP模式和网络共享的调试日志

    Tethering技术在移动平台上已经运用的越来越广泛了.它能够把移动设备当做一个接入点,其它的设备能够通过Wi-Fi.USB或是Bluetooth等方式连接到此移动设备.在Android中能够将Wi ...

  9. Marvell w8782 sdio wifi AP模式设置

    http://blog.csdn.net/junllee/article/details/8895908 w8782工作在station模式一切正常,于是想试试AP模式(master mode): A ...

随机推荐

  1. New Concept English three (23)

    31w 45 People become quite illogical when they try to decide what can be eaten and what cannot be ea ...

  2. 【OpenCV入门教程之二】 一览众山小:OpenCV 2.4.8 or OpenCV 2.4.9组件结构全解析

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/19925819 作者:毛星云 ...

  3. poscms基于list标签实现的查询分页功能

    poscms系统本身有一个在查询页(search页面)实现的查询分页功能,基于系统封装的php函数dr_search_url() 但是今天的需求除了导航栏.列表页.详情页都实现查询功能外,关键是有两个 ...

  4. Kafka消费者生产者实例

    为了更为直观展示Kafka的消息生产消费的过程,我会从基于Console和基于Application两个方面介绍使用实例.Kafka是一个分布式流处理平台,具体来说有三层含义: 它允许发布和订阅记录流 ...

  5. 在Golang中获取系统的磁盘空间内存占用

    获取磁盘占用情况(Linux/Mac下有效) import ( "syscall" ) type DiskStatus struct { All uint64 `json:&quo ...

  6. python爬虫入门(6)-Scrapy基本使用

    源码:链接:http://pan.baidu.com/s/1dEK82hb 密码:9flo   创建项目                                 scrapy startpro ...

  7. caffe 细节

    batch :http://www.zhihu.com/question/32673260 caffe blog: http://blog.csdn.net/abcjennifer/article/d ...

  8. stark组件03

    优化代码 1:页面的增删改查url反转的封装到类里:ModelSatrk # 编辑页面的url def get_edit_url(self,obj): edit_url = reverse(" ...

  9. 编程技巧:使用异或操作符(XOR)交换两数值

    异或(exclusive OR)作为4种逻辑操作符之一,相对其他3种(OR/AND/NOT)来说,出场的次数非常少,是因为在日常开发中能用到它的场景本来就不多.对笔者来说,目前接触到场景只有交换两个数 ...

  10. 每天一个linux命令(目录文件操作):【转载】linux文件属性详解

    Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下: 命令:  ls -lih 输出: [root@loc ...