内容简介: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.so , libnl.so.1 , libnl.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 前置依赖,前置依赖有 openssl 和 libnl ,将 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 ,因此提示无网络访问权限
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
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 饱受折磨的家用路由器 | 在研究的127个家用路由器中,没有一个路由器幸免
- 华为路由器BGP邻居详解
- 路由器里的广告秘密
- 自己动手DIY:编译路由器固件
- 小米路由器 3G 刷机及固件
- 通过 Selenium 登录路由器管理界面
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Docker从入门到实战
黄靖钧 / 机械工业出版社 / 2017-6 / 69.00元
本书从Docker的相关概念与基础知识讲起,结合实际应用,通过不同开发环境的实战例子,详细介绍了Docker的基础知识与进阶实战的相关内容,以引领读者快速入门并提高。 本书共19章,分3篇。第1篇容器技术与Docker概念,涵盖的内容有容器技术、Docker简介、安装Docker等。第2篇Docker基础知识,涵盖的内容有Docker基础、Docker镜像、Dockerfile文件、Dock......一起来看看 《Docker从入门到实战》 这本书的介绍吧!