fl2440制作无线路由器

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

内容简介: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

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

查看所有标签

猜你喜欢:

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

概率编程实战

概率编程实战

[美]艾维·费弗 (Avi Pfeffer) / 姚军 / 人民邮电出版社 / 2017-4 / 89

概率推理是不确定性条件下做出决策的重要方法,在许多领域都已经得到了广泛的应用。概率编程充分结合了概率推理模型和现代计算机编程语言,使这一方法的实施更加简便,现已在许多领域(包括炙手可热的机器学习)中崭露头角,各种概率编程系统也如雨后春笋般出现。本书的作者Avi Pfeffer正是主流概率编程系统Figaro的首席开发者,他以详尽的实例、清晰易懂的解说引领读者进入这一过去令人望而生畏的领域。通读本书......一起来看看 《概率编程实战》 这本书的介绍吧!

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具