参考网址: http://wangye.org/blog/archives/845/

http://blog.csdn.net/lme525/article/details/37762519

     http://blog.sina.com.cn/s/blog_6e228288010153uq.html

通过命令启用hostapd热点时,需要将手机设置为静态ip才能认证通过

参照以下方法:

wpa_supplicant 和hostapd可能需要 openssl libnl 所以需要先交叉编译这两个工具

1)

openssl-1.0.2e 交叉编译方法

tar -xf openssl-1.0.2e.tar.gz

cd openssl-1.0.2e

AR=mipsel-linux-ar RANLIB=mipsel-linux-ranlib CC=mipsel-linux-gcc /usr/bin/perl ./Configure shared linux-generic32 --prefix=/home/loongson/tools/wpa_supplicant/install

make

make install

说明:

AR/RANDLIB/CC 环境变量 是确保Makefile中使用mipsel-linux 系列工具

/usr/bin/perl ./Configure  表示执行perl脚本

Configure 注意第一个字母是大写

shared 表示要编译动态库,

linux-generic32 表示生成目标平台名称

--prefix 指明安装目录.

2)

libnl-1.1.4 交叉编译方法

tar -xf libnl-1.1.4.tar.gz

./configure --prefix=/home/loongson/tools/wpa_supplicant/install CC=mipsel-linux-gcc --host=mips

make

make install

说明:

libnl的最新版本是libnl-3.x 但是在编译wpa_supplicant时需要用到某个头文件,只有libnl-1.1.4提供,所以使用libnl-1.1.4

3)

wpa_supplicant-2.5 交叉编译方法

tar -xf wpa_supplicant-2.5.tar.gz

cd wpa_supplicant-2.5/wpa_supplicant

创建配置文件:cp defconfig .config

修改配置文件.config :

CFLAGS += -I/home/loongson/tools/wpa_supplicant/install/include

LIBS += -L/home/loongson/tools/wpa_supplicant/install/lib

LIBS_p += -L/home/loongson/tools/wpa_supplicant/install/lib

LIBS_c += -L/home/loongson/tools/wpa_supplicant/install/lib

CC = mipsel-linux-gcc

CONFIG_TLS=openssl

make

4)

最后把编译出来的 wpa_cli wpa_supplicant wpa_passphrase 复制到开发板的根文件系统

把/home/loongson/tools/wpa_supplicant/install/lib/目录下的 libcrypto.* libnl.* libssl.*库文件复制到开发板的根文件系统 的/lib下

5)

无线网卡配置例子

/* 无线网卡设置 */

wpa_passphrase "Loongson-Product" loongson425 > /tmp/supplicant.conf

ifconfig wlan0 up

wpa_supplicant -B -Dwext -iwlan0 -c /tmp/supplicant.conf

udhcpc -b -i wlan0

ifconfig wlan0 192.168.2.144

route add default gw 192.168.2.1

ping 192.168.2.1

自动获取ip

从Busybox的examples/udhcp/下复制 simple.script文件到开发板/usr/share/udhcpc/下,并重命名为default.script,然后更改文件default.script的权限,

chmod a+x default.script

wpa_passphrase "Loongson-Product" loongson425 > /tmp/supplicant.conf

wpa_supplicant -B -Dwext -iwlan0 -c /tmp/supplicant.conf

udhcpc -i wlan0

6)

hostapd 交叉编译方法

tar -xf hostapd-2.5.tar.gz

cd hostapd-2.5/hostapd

cp defconfig .config

修改.config文件,添加

CFLAGS += -I/home/loongson/tools/wpa_supplicant/install/include

LIBS += -L/home/loongson/tools/wpa_supplicant/install/lib

LIBS_p += -L/home/loongson/tools/wpa_supplicant/install/lib

LIBS_c += -L/home/loongson/tools/wpa_supplicant/install/lib

CC = mipsel-linux-gcc

CONFIG_DRIVER_WIRED=y

CONFIG_TLS=openssl

make

生成hostapd和hostapd.conf文件,复制到开发板的根文件系统,库文件同wpa_passphrase

1.

hostapd.conf放到开发板根文件系统的/etc目录下

把原来hostapd.conf文件的内容清空,hostapd.conf配置文件修改如下

interface=wlan0

driver=nl80211

ssid=DMF_WiFi

channel=3

hw_mode=g

ignore_broadcast_ssid=0

auth_algs=1

wpa=3

wpa_passphrase=87654321

wpa_key_mgmt=WPA-PSK

wpa_pairwise=TKIP

rsn_pairwise=CCMP

2.

从busybox的examples/udhcp/下复制 udhcpd.conf文件到开发板根文件系统的/etc目录下

udhcpd.conf配置文件根据实际使用修改,如

start192.168.0.20

end192.168.0.254

interfacewlan0

optdns192.168.10.2 192.168.10.10

optionsubnet255.255.255.0

optrouter192.168.10.2

optwins192.168.10.10

一般修改这几个就可以

3.

开发板的根文件系统的/var/lib/misc/目录下添加 udhcpd.leases文件,udhcpd在执行的时候可能会提示没有一个叫做udhcpd.release的租赁文件,这个只要在相应的文件夹下创建即可

4.

最后执行

hostapd -B /etc/hostapd.conf

ifconfig wlan0 192.168.0.1 netmask 255.255.255.0   (先把要接入点设备设置好,否则其他无线网卡接入到该ap时会分配不到地址)

udhcpd /etc/udhcpd.conf

则可以实现wifi热点的启用

要实现开发板wifi_ap访问外网,则需要以下操作:

开发板eth1连接路由器,路由器可以访问外网,路由器网关是:192.168.2.1 DNS:192.168.1.1

1)

首先使开发板的eth1可以访问外网

自动获取ip

udhcpc -i eth1

ping www.baidu.com

ping通,说明可以访问外网

2)

wifi设置为ap模式,这里使用的是rt3070的usb wifi

hostapd -B /etc/hostapd.conf

ifconfig wlan0 192.168.0.1 netmask 255.255.255.0   (先把要接入点设备设置好,否则其他无线网卡接入到该ap时会分配不到地址)

udhcpd /etc/udhcpd.conf

hostapd.conf配置文件内容:

interface=wlan0

driver=nl80211

ssid=DMF_WiFi

channel=3

hw_mode=g

ignore_broadcast_ssid=0

auth_algs=1

wpa=3

wpa_passphrase=87654321

wpa_key_mgmt=WPA-PSK

wpa_pairwise=TKIP

rsn_pairwise=CCMP

udhcpd.conf配置文件内容(修改的部分):

start192.168.0.20

end192.168.0.254

interfacewlan0

optdns192.168.2.1 192.168.2.1  #这里是路由的网关地址?不是DNS:192.168.1.1?

optionsubnet255.255.255.0

optrouter192.168.0.1

optwins192.168.0.1

3)

设置iptables wlan0的访问转发到eth1

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

iptables -A FORWARD -i eth1 -o wlan0 -m state --state RELATED,ESTABLISH -j ACCEPT

iptables -A FORWARD -i wlan0 -o eth1 -j ACCEPT

echo 1 > /proc/sys/net/ipv4/ip_forward

文档的下载及文件下载:http://pan.baidu.com/s/1ntsvbb7#path=%252Floongson1%252Ftools%252Fwifi

开发板支持wifi的更多相关文章

  1. iTOP-4418/6818开发板支持锂电池供电方案

    iTOP-4418/6818开发板支持的是官方推荐的AXP228电池管理,动态调频,更稳定可靠,支持充放电电路与电量计(库化计), 广泛应用于各种电子产品中. 4418开发板中锂电池充放电接口,适用于 ...

  2. 迅为IMX6开发板支持4G全网通模块GPS模块

    IMX6开发板特点 处理器:IMX6开发板支持4G全网通模块GPS模块. 核心板配置:2GB DDR3内存  16GB EMMC 存储,扩展引脚多达320个:运行温度-20 ℃到+80 ℃之间. 核心 ...

  3. [资料分享]迅为iTOP4412开发板-SDIO WiFi移植文档

    本文转自迅为:http://www.topeetboard.com 概述 近期需要把WiFi无线网络功能移植到iTOP-4412 开发平台,查阅了相关资料,经过一段时间的研究.调试,终于成功的将WiF ...

  4. 迅为IMX6开发板支持全网通4G模块丨GPS模块丨WIFI蓝牙丨千兆以太网

    迅为i.MX6开发板丨迅为i.MX6Q开发板丨四核imx6开发板丨Cortec-A9开发板丨资料介绍: 特点: 处理器:Freescale Cortex-A9四核i.MX6Q主频1GHz 核心板配置: ...

  5. iTOP-i.MX6Q开发板支持安卓Android6.0系统

    迅为IMX6开发板: Android4.4/6.0系统  Linux + Qt5.7系统  Ubuntu12.04系统 部分案例:HMI:3D打印机:医疗设备:工控机:触控一体机:车载终端 核心板兼容 ...

  6. iTOP-6818开发板支持AXP228电源管理[官方推荐最佳匹配]_支持动态调频

    iTOP-6818开发板与4418开发板共兼容同一底板: 核心板:::::: 尺寸 50mm*60mm 高度 核心板连接器组合高度1.5mm PCB层数 6层PCB沉金设计 4418 CPU ARM ...

  7. 基于TQ2440开发板的WiFi模块的使用经验总结

    一.软.硬件资源准备: 内核版本:linux-2.6.30.4 交叉编译器版本:4.3.3 wpa_supplicant工具:wpa_supplicant-0.7.3.tar ; openssl-0. ...

  8. iTOP-4418/6818开发板支持双屏异显,双屏同显

    iTOP-4418/6818开发板平台安卓系统下支持双屏异显,双屏同显,客户可按照不同用途,分别播放适合屏幕显示方式的内容 ,如HDMI屏幕和LCD屏幕显示不同内容, 一个屏幕播放广告,另一个屏幕运行 ...

  9. 迅为iMX6开发板支持单核,双核,四核处理器,为客户产品选择提供灵活性

    本文转自迅为:http://topeetboard.com 店铺:https://arm-board.taobao.com 处理器:Freescale Cortex-A9 四核 i.MX6Q 主频 1 ...

随机推荐

  1. django makemigrations的一个特性

    Migrations will run the same way on the same dataset and produce consistent results, meaning that wh ...

  2. 软件产品案例分析——K米

    第一部分 调研.评价 调研 测试机型:iPhone 6s K米版本:4.3.0 直观感受 界面干净,功能丰富,操作不复杂,易上手 错误类 无法分享KTV主页 步骤:进入KTV主页,点击右上角分享图标 ...

  3. Linux操作系统发展史

    1984年,面对美国电话电报公司启动的UNIX商业化计划和程序开发的封闭模式,麻省理工学院的RichardM.Stallman发起了一项国际性的源代码开放的GNU(GNU's Not Unix)计划, ...

  4. OpenGLES入门笔记三

    在入门笔记一中比较详细的介绍了顶点着色器和片面着色器. 在入门笔记二中讲解了简单的创建OpenGL场景流程的实现,但是如果在场景中渲染任何一种几何图形,还是需要入门笔记一中的知识:Vertex Sha ...

  5. 在Linux下安装和使用MySQL

    [简 介] 想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL.本以为有Windows下使用SQL Server的经验,觉得在Linu ...

  6. C++中int,float,string,char*的转换(待续)

    //float转string char a[100]; float b = 1.234; sprintf(a, "%f", b); string result(a); //int转 ...

  7. SMTP邮箱验证错误解决

    开始报错,是因为权限设置问题,谷歌对第三方应用登录默认关闭,需要开通后python才能自动访问邮件 SMTPAuthenticationError: (502, b'5.5.1 Unrecognize ...

  8. 通过KUDU获取Azure网站的日志

    部署到Azure上的website,由于无法通过RDP的方式去登录查看log,所以我们只能通过FTP的方式或者kudu的方式进行查看,具体如下: 1.使用FTP账户和密码登录网站的KUDU界面: 如您 ...

  9. .NET Reflector Visual Studio Extension

    https://visualstudiogallery.msdn.microsoft.com/95789cdb-08f9-4dae-9b2f-fc45a452ad77/

  10. 分享一个控制JS 浏览器缓存的解决办法。

     JS 缓存的问题一直都是我们又爱又恨的东西.也是我们比较头痛的问题, 一方面为了提高网站响应速度,减少服务器的负担,和节省带宽,将需要将静态资源缓存在客户端, 但是另一方面,当js 文件有改动的时候 ...