Linux中USB无线网卡实现AP模式(hostapd交叉编译环境下)

本文介绍了如何在Linux系统中,利用交叉编译环境将USB无线网卡设置为AP模式,包括编译和配置hostapd、dhcpd、openssl等组件,以及开启IP转发和设置内核支持,实现无线热点功能。
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

用手机APP来实现无线监控已经成功了,接下来准备讲解andriod相关的知识和客户端APP源程序


以手机上WIFI热点为例,有4种常用的"认证/加密"
a. open
b. WEP
c. WPA(TKIP)
d. WPA2(AES)


需要用到的源代码有:

hostapd-2.0.tar.gz,下载地址:点击这里!

openssl-1.0.1d.tar.gz,下载地址:点击这里!

dhcp-4.2.5-P1.tar.gz,下载地址:点击这里!


首先交叉编译dhcp-4.2.5-P1.tar.gz

tar xzf dhcp-4.2.5-P1.tar.gz
cd dhcp-4.2.5-P1
/configure --host=arm-linux ac_cv_file__dev_random=yes

cd bind
修改Makefile:
./configure BUILD_CC=gcc ac_cv_file__dev_random=yes --host=arm-linux --disable-kqueue   /* 添加到./configure这行 */

tar xzf bind.tar.gz
cd bind-9.8.4-P2
修改 lib/export/dns/Makefile.in 
gen: ${srcdir}/gen.c
        ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o $@ ${srcdir}/gen.c ${LIBS}
改为
gen: ${srcdir}/gen.c
        ${BUILD_CC} ${ALL_CFLAGS} ${LDFLAGS} -o $@ ${srcdir}/gen.c ${LIBS}

cd ../..
make DESTDIR=$PWD/tmp install

把生成tmp/usr/local/sbin目录下的dhcpd命令复制到根文件系统的bin目录,把tmp/usr/local/etc目录下的dhcpd.conf.example复制到根文件系统/etc目录下面,以后用得到(自动获取IP地址)


交叉编译openssl-1.0.1d.tar.gz

tar xzf openssl-1.0.1d.tar.gz
cd openssl-1.0.1d/
./config shared no-asm --prefix=$PWD/tmp
修改Makefile:
CC= arm-linux-gcc
AR= arm-linux-ar $(ARFLAGS) r
RANLIB= arm-linux-ranlib
MAKEDEPPROG= arm-linux-gcc

make
make install

把编译出来的头文件应该放入:
/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include

把编译出来的库文件应该放入:
/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib

把编译出来的库文件应该放入根文件系统文件系统的lib目录:*so*


交叉编译hostapd-2.0.tar.gz

tar xzf hostapd-2.0.tar.gz
cd hostapd-2.0/
cd hostapd/

这个错误提示表示在`/etc/hostapd/`目录不存在`hostapd.conf`文件。这个问题可能是由于hostapd服务没有正确安装或者配置引起的。你可以尝试以下方法来解决这个问题: 1. 检查hostapd服务是否已安装:使用以下命令来检查hostapd服务是否已正确安装: ``` dpkg -s hostapd ``` 如果该命令输出hostapd服务的信息,则表示服务已正确安装。如果该命令未输出任何信息,则表示服务未正确安装,你可以使用以下命令来安装hostapd服务: ``` sudo apt-get install hostapd ``` 2. 检查hostapd服务的配置文件:使用以下命令来检查hostapd服务的配置文件是否存在: ``` ls -l /etc/hostapd/hostapd.conf ``` 如果该文件不存在,你可以使用以下命令来创建该文件: ``` sudo nano /etc/hostapd/hostapd.conf ``` 该命令将使用文本编辑器创建一个新的hostapd.conf文件,并让你编辑该文件。 3. 配置hostapd服务:编辑`/etc/hostapd/hostapd.conf`文件,并按照需要进行配置。配置文件的示例可以在网络上找到,或者你可以参考以下示例: ``` interface=wlan0 driver=nl80211 ssid=myhotspot hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=mypassword wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP ``` 在编辑完配置文件后,保存并关闭该文件。 4. 启动hostapd服务:使用以下命令来启动hostapd服务: ``` sudo systemctl start hostapd ``` 如果该命令启动成功,则表示hostapd服务已经成功启动,并且可以提供热点服务。你可以使用其他设备来搜索并连接到该热点。如果该命令启动失败,则需要查看服务的日志信息来确定问题的具体原因。 如果以上方法都无法解决问题,你可以考虑卸载并重新安装hostapd服务,或者向相关技术支持寻求帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值