参考网址: 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. Mac系统搭建Go语言Sublime Text 2环境配置

    Go语言是谷歌自家的编译型语言,旨在不损失性能的前提下降低代码复杂率.其优势是让软件充分发挥多核心处理器同步多工的优点,并可解决面向对象程序设计的麻烦. 一.安装Golang的SDK 在官网http: ...

  2. 如何执行一条命令在C#里面。Process

    Download source - 4.15 KB Introduction It is normal practice to open the Windows command prompt and ...

  3. 【Alpha阶段】第一次Scrum例会

    个人任务报告 姓名 昨日已完成任务 明日计划任务 工作困难 岳桐宇 #20 撰写网站用户界面与体验改进方案文档 无 1. 与邓楚云的制定前端工作流程产生冲突,发生了不愉快的情况,最后在整个团队协商的情 ...

  4. HTML5学习总结-10 Android 控件WebView显示网页

    WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用. webview有两个方法:setWebChromeClient 和 setWebClient 1)setWebClient: ...

  5. Nginx个人简单理解

    首先我们来补充下一些基本知识: 什么是代理服务器? 先举个简单的例子,现在我们在百度访问谷歌的网站,发现现在进不去,这个时候我们可以FQ(关于FQ,可以借鉴下这个博文:http://zhangge.n ...

  6. Opencv中将CvMat转为IplImage

    Opencv中将CvMat转为IplImage,并在内存获得起头指针,而不用cvSaveImage(),贴上代码 IplImage * imgg = NULL; imgg = cvCreateImag ...

  7. app中Webview实现下载表格

    <script type="text/javascript"> function getUrl(){ var close = confirm("请点击确定下载 ...

  8. Spring MVC学习笔记——Welcome

    参考: http://blog.csdn.net/hehexiaoyou/article/details/23747617 http://www.codingyun.com/article/47.ht ...

  9. ansible定时任务

    不得不说,ansible很强大,ansible定制任务模块显示 ansible all -m cron -a 'name="ban IP of login" minute=* ho ...

  10. ctypes 操作 python 与 c++ dll 互传结构体指针

    CMakeLists.txt # project(工程名) project(blog-3123958139-1) # add_library(链接库名称 SHARED 链接库代码) add_libra ...