让linux下无线网卡变身随身wifi----hostapd移植-Nazgul

2024-09-03 15:32

本文主要是介绍让linux下无线网卡变身随身wifi----hostapd移植-Nazgul,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有了前面的检测,确定了我们的网卡是能够拥有热点共享功能的,但是如何让它共享出来呢?
于是有了这篇文章的诞生,hostapd移植
hostapd    可以让我们的网线网卡变成热点
1、下载
    git clone git://w1.fi/srv/git/hostap.git
  得到hostap目录,但是里面wpa_supplicant and hostapd的结合在一起,我们这里只需要hostapd
  所以进入hostap/hostapd目录下编译
  发现它依赖另外两个库,一个是前面移植过的libnl,还有一个是openssl
  libnl移植过了就不需要移植了,这里移植一下openssl
  移植文档:http://blog.csdn.net/x_nazgul/article/details/20149595
    
2、移植hostapd
    cp defconfig .config
    vi .config
    修改如下:

    
    修改Makefile 指定编译器为arm-linux-gcc 指定ssl和libnl头文件的路径
   修改CC=arm-linux-gcc 并且添加四句话

    
      注意,这里的路径一点是要你移植的ssl库和libnl库对应的路径
    如此,编译make
    便可以得到hostapd
    拷贝至开发板,运行hostapd –v
     如果提示找不到库,记得把libnl生成的库拷贝到开发板中/lib中来 记得加上cp -a参数
    # ./hostapd -v
    正确:
[cpp] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. hostapd v2.2-devel   
  2. User space daemon for IEEE 802.11 AP management,   
  3. IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator   
  4. Copyright (c) 2002-2014, Jouni Malinen <j@w1.fi> and contributors  
    可能出现的问题:
    a、Can't open RFKILL control device: No such file or directory
    呵呵,得配置内核了,要是没有内核源码那就麻烦了,嘿嘿

配置内核

--- Networking support │ │ 

│ │ Networking options ---> │ │ 

│ │ [ ] Amateur Radio support ---> │ │ 

│ │ < > CAN bus subsystem support ---> │ │ 

│ │ < > IrDA (infrared) subsystem support ---> │ │ 

│ │ < > Bluetooth subsystem support ---> │ │ 

│ │ -*- Wireless ---> │ │ 

│ │ < > WiMAX Wireless Broadband support ---> │ │ 

│ │ <*> RF switch subsystem support --->!!这需要选择!!!

   b、ioctl(SIOCGIFBR) failed: Package not installed 
       这回是桥接网络的问题,同样得配置内核
    --- Networking support │ │ 
        │ │ Networking options ---> │ │ 
            ---》<*> 802.1d Ethernet Bridging !!选择就行了!!
    配置好后编译内核,下载到开发班,再次运行hostapd没有问题了
    那么到这里证明hostapd编译好了,但是使用它的时候还得添加一个配置文档

3、配置文档

    其实hostapd最关键的就是配置文档了,所以得东西都在里面

    文档位置,在我们/hostap/hostapd目录下,也就是编译好的hostapd目录,有一个文件hostapd.conf

    没错,就是他,那么我们得修改一些东西

    这里有个介绍,我就不多说了:http://blog.chinaunix.net/uid-22028680-id-3574921.html

    不过你不要自己去弄了,我弄一个配好的,你只需要修改 

    interface=wlan0//你无线网卡的设备名

    wpa_passphrase=123456789 //密码

    资源:http://blog.csdn.net/x_nazgul/article/details/20207989

    把命令和配置文档放一起,然后

    #./hostapd hostapd.conf 

   搞定,这个时候你应该可以搜索到test热点了 这个热点的名字你也可以再配置文档中修改的 

    你用手机连接了,可以输入密码132456789进行连接,连接上了,但是提示获取IP失败

    喝喝,你懂得,DHCP开始上场了

这篇关于让linux下无线网卡变身随身wifi----hostapd移植-Nazgul的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1133356

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

linux下多个硬盘划分到同一挂载点问题

《linux下多个硬盘划分到同一挂载点问题》在Linux系统中,将多个硬盘划分到同一挂载点需要通过逻辑卷管理(LVM)来实现,首先,需要将物理存储设备(如硬盘分区)创建为物理卷,然后,将这些物理卷组成... 目录linux下多个硬盘划分到同一挂载点需要明确的几个概念硬盘插上默认的是非lvm总结Linux下多

linux进程D状态的解决思路分享

《linux进程D状态的解决思路分享》在Linux系统中,进程在内核模式下等待I/O完成时会进入不间断睡眠状态(D状态),这种状态下,进程无法通过普通方式被杀死,本文通过实验模拟了这种状态,并分析了如... 目录1. 问题描述2. 问题分析3. 实验模拟3.1 使用losetup创建一个卷作为pv的磁盘3.

Linux环境变量&&进程地址空间详解

《Linux环境变量&&进程地址空间详解》本文介绍了Linux环境变量、命令行参数、进程地址空间以及Linux内核进程调度队列的相关知识,环境变量是系统运行环境的参数,命令行参数用于传递给程序的参数,... 目录一、初步认识环境变量1.1常见的环境变量1.2环境变量的基本概念二、命令行参数2.1通过命令编程

Linux之进程状态&&进程优先级详解

《Linux之进程状态&&进程优先级详解》文章介绍了操作系统中进程的状态,包括运行状态、阻塞状态和挂起状态,并详细解释了Linux下进程的具体状态及其管理,此外,文章还讨论了进程的优先级、查看和修改进... 目录一、操作系统的进程状态1.1运行状态1.2阻塞状态1.3挂起二、linux下具体的状态三、进程的

Linux编译器--gcc/g++使用方式

《Linux编译器--gcc/g++使用方式》文章主要介绍了C/C++程序的编译过程,包括预编译、编译、汇编和链接四个阶段,并详细解释了每个阶段的作用和具体操作,同时,还介绍了调试和发布版本的概念... 目录一、预编译指令1.1预处理功能1.2指令1.3问题扩展二、编译(生成汇编)三、汇编(生成二进制机器语

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li

Linux部署jar包过程

《Linux部署jar包过程》文章介绍了在Linux系统上部署Java(jar)包时需要注意的几个关键点,包括统一JDK版本、添加打包插件、修改数据库密码以及正确执行jar包的方法... 目录linux部署jar包1.统一jdk版本2.打包插件依赖3.修改密码4.执行jar包总结Linux部署jar包部署

C/C++通过IP获取局域网网卡MAC地址

《C/C++通过IP获取局域网网卡MAC地址》这篇文章主要为大家详细介绍了C++如何通过Win32API函数SendARP从IP地址获取局域网内网卡的MAC地址,感兴趣的小伙伴可以跟随小编一起学习一下... C/C++通过IP获取局域网网卡MAC地址通过win32 SendARP获取MAC地址代码#i