fl2440制作无线路由器

栏目: 服务器 · 发布时间: 8年前

内容简介:fl2440制作无线路由器
  • 20170510 初次成文

移植libnl

libnl 需要前置依赖 openssl 库, openssl 移植过程在上篇文章有介绍

wget https://coding.net/u/sfantree/p/self_use_OSS/git/raw/master/source/libnl-1.1.tar.gz
tar zxvf libnl-1.1.tar.gz
cd libnl-1.1
./configure --prefix=`pwd`/_install CC= /opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc --host=arm-linux
make CC=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc
make install

接下来把 install 里面的 libnl.solibnl.so.1libnl.so.1.1 移动到开发板的 /lib

移植hostapd

编译

tar zxvf hostapd-0.8-snapshot.tar.gz
cd hostapd-0.8-snapshot/cd hostapd/
cp defconfig .config

修改 .config ,注并添加相应字段

#CONFIG_DRIVER_HOSTAP=y
CONFIG_DRIVER_NL80211=y

修改 Makefile ,追加以下字段

CROSS=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-
OPENSSL_PATH=/root/fl2440/3rdapp/openssl/openssl-1.0.0s/_install/
LIBNL_PATH=/root/fl2440/3rdapp/wifi/libnl-1.1/_install
CC=$(CROSS)gcc

CFLAGS += -I $(OPENSSL_PATH)/include
CFLAGS += -I $(LIBNL_PATH)/include

LIBS += -L $(LIBNL_PATH)/lib
LIBS += -L $(OPENSSL_PATH)/lib

LDFLAGS += -L $(LIBNL_PATH)/lib
LDFLAGS += -L $(OPENSSL_PATH)/lib

make 过后会在 hostapd-1.0/hostapd 生成可执行文件 hostapd ,使用 readelf 查看 hostapd 前置依赖,前置依赖有 openssllibnl ,将 hostapd 复制到开发板 /usr/bin

> arm-linux-readelf -d ./hostapd
Dynamic section at offset 0x8700c contains 24 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [libnl.so.1]
 0x00000001 (NEEDED)                     Shared library: [libssl.so.1.0.0]
 0x00000001 (NEEDED)                     Shared library: [libcrypto.so.1.0.0]
 0x00000001 (NEEDED)                     Shared library: [libc.so.0]

配置

开发板上新建 /etc/hostapd.conf

#开启AP的网卡
interface=wlan0
ssid=FL2440
#所需驱动
driver=nl80211
#频段 中国大陆1-13可选
channel=1
#802.11g 最大速率54Mbps
hw_mode=g
ignore_broadcast_ssid=0
wpa=1
auth_algs=1
# 启用加密 密码12345678
wpa_key_mgmt=WPA-PSK
wpa_passphrase=12345678
wpa_pairwise=TKIP
rsn_pairwise=CCMP

启动

解决随机数问题

mv /dev/random /dev/random.bak 
ln -s /dev/urandom /dev/random

守护进程启动

/usr/bin/hostapd -B /etc/hostapd.conf

成功开启热点会打印如下信息

> /usr/bin/hostapd -B /etc/hostapd.conf
Configuration file: /etc/hostapd.conf
Using interface wlan0 with hwaddr 00:a1:b0:40:6f:72 and ssid 'FL2440'

电脑手机都可以接收到 AP 信号,这时还没有给电脑的无线网卡分配 IP ,因此提示无网络访问权限

fl2440制作无线路由器

DHCP

为了使手机电脑连接上自动获取 IP ,需要启动 DHCP 服务器, busybox 已经集成了 udhcpd

示例配置文件在 examples/udhcp/udhcpd.conf ,我们在开发板上创建一个 /etc/udhcpd.conf

start 10.0.188.100
end 10.0.188.200
interface wlan0
opt dns 114.114.114.114
option subnet 255.255.255.0
opt router 10.0.188.1

启动

mkdir -p /var/lib/misc/
touch /var/lib/misc/udhcpd.leases
udhcpd /etc/udhcpd.conf

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Mechanics of Web Handling

The Mechanics of Web Handling

David R. Roisum

This unique book covers many aspects of web handling for manufacturing, converting, and printing. The book is applicable to any web including paper, film, foil, nonwovens, and textiles. The Mech......一起来看看 《The Mechanics of Web Handling》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具