设为首页 收藏本站
查看: 1854|回复: 0

[经验分享] 小米随身WiFi,Linux下AP热点驱动(开源)

[复制链接]

尚未签到

发表于 2015-10-2 09:08:15 | 显示全部楼层 |阅读模式
  转自:http://blog.iyunv.com/sumang_87/article/details/38168877

前言

这是作者修改后的Linux下的小米随身WiFi驱动,支持Ap模式,开源,同时支持360随身WiFi二代和小度WiFi


注意:
1.这个是Linux下的小米随身WiFi驱动,不是Window和MAC下
2.这个不是STA模式下的可当作无线网卡的驱动,是可当Ap热点模式的驱动3.这个支持360随身WiFi二代。(rtusb_dev_id.c 里面同样有360的id)(也有童鞋测试了也支持小度wifi)
4.现在最新的版本同时支持ubuntu12.04 和 ubuntu14.04(谢谢housq 的pull request
(内核版本分别是 3.11 和 3.13)(14.04仍时有崩溃未解决。。如果大神知道,请相告!替Linux网友先感激!!)

原由:
小米随身WiFi很好用,有Widnow和Mac的系统的驱动,
但是可怜不少Linux下的苦逼开发者,没有驱动就是没有。。怎么办?

但是米粉的力量还是很强大的,
后来陆陆续续有了小米随身WiFi 的STA 模式驱动,即可以当无线网卡使用
Ubuntu 12.04下小米随身Wifi驱动安装方法 @81339242
但当Ap热点使用的热点驱动一直没有。。。怎么办?

最关键楼主我,家里是校园网,锐捷,更别说什么路由了,只能有线网络
在linux下开发方便,但是妹子老喊,没有WiFi,她用不了网络,怎么办?
之前一直用虚拟机xp使用小米随身WiFi,
可虚拟机内存占用大,仅仅开了使用随身WiFi 不划算,怎么办?

既然window,mac能上网,Linux下肯定也是可以,通过搜索,
小米Wifi不能直接用雷凌芯片组官方驱动的原因探讨 @Oicebot
我发现使用hostapd使用的可行性是有的。。
于是就开始花点时间搞定这个Linux下的Ap驱动。。
(重新开启关于hostapd的相关代码宏,但后来失败。。)  万万没有想到,我最后还是完成了驱动。。
  


完成驱动:
  第一点,感谢小米随身WiFi。。
第二点,感谢雷凌开源。。
第三点,感谢terence-deng
大神 terence-deng 在Github 开源了带AP代码的,但不能使用AP功能的代码,能使用STA模式(无线网卡模式)
居然在我开始搞驱动的前3天share了出来,还居然被我搜到!!!。。。。

我在大神的mt7601u基础上,结合另外两份代码(rt5572 和 MT7610U STA )
开启AP模式的宏,填补缺漏文件,解决编译问题,编译出AP模式下的小米随身wifi驱动
再结合一些Linux命令,前后花了两天时间(第一天的更改驱动方案不成功)
成功在Linux下,不用再借助虚拟机(xp),成功让手机使用小米随身WiFi产生的网络


  源于开源,不敢私藏,所以在这里分享给大家。。
  

  正式步骤开始

  步骤一 下载代码

  先从 https://github.com/eywalink/mt7601u 这个路径下载代码。。没有git的同学,可以在右边 Download zip文件
DSC0000.jpg

  

  步骤二 编译驱动
  运行 脚本 编译驱动(Ubuntu 12.04下编过)
sudo ./miwifi_build.sh
编译驱动 如果没有看到 错误 Error 字样,就算可以了。。
我的是中文字样,一般的都直接是英文。。。
DSC0001.jpg

  

  步骤三 配置DHCP服务
  安装DHCP 服务器和配置
1.安装 sudo apt-get install dhcp3-server
  (如果遇到 locate dhcp3-server, 请使用  sudo apt-get update)
  
2.编辑 sudo vim /etc/dhcp/dhcpd.conf
加上了下面一段。。(搜索 This is ;另外注意DNS(domain-name-servers),你们自己选择合适你们的)
subnet 192.168.199.0 netmask 255.255.255.0 {
   range 192.168.199.10 192.168.199.20;
   option routers 192.168.199.1;
   option domain-name-servers 114.114.114.114;
}
DSC0002.jpg
  3.编辑 sudo vim  /etc/default/isc-dhcp-server
    为 INTERFACES="ra0"
DSC0003.jpg

  

  PS:如果发现需要重启DHCP 服务,请使用 service isc-dhcp-server restart

  

  步骤四 加载驱动
  root权限 运行脚本 加载驱动 和 设置DHCP服务器 和 设置ip转发规则(我平常用eth0来上网,所以不是eth0的童鞋务必更改
sudo ./miwifi_work.sh
DSC0004.jpg

  

  ============如果这步骤没有问题,可以不用看分割线下面文字===========


miwifi_work.sh 脚本解析:
#!/bin/sh
#remove the driver before
#我之前使用mt7601Usta这个驱动,安装Ap驱动前得先关闭正在使用的网卡,然后sta驱动卸载
ifconfig ra0 down
rmmod mt7601Usta
#add new ap driver
#安装新的驱动,雷凌基本上都是这三个rtutil, rtnet ,和 xxxx
modprobe rtutil7601Uap
modprobe mt7601Uap
modprobe rtnet7601Uap
#set ip
#设置此ap的ip地址。
ifconfig ra0 up
ifconfig ra0 192.168.199.1
#dhcp the network
#设置这个ap的DHCP分配ip地址
dhcpd ra0
#make if forward work from eth0  
#设置从 eth0 这个网卡进行转发数据包,我平常用eth0上网,
有些童鞋用wlan0上网就把蓝色字改成wlan0
有些童鞋用ADSL 上网就把蓝色字改成ppp0
(要确定是否有ppp0,可以在拨号后,用sudo ifconfig查看)
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
iptables -t filter -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  


输出结果解析:
  administrator@ylmfos:~/rjsupplicant$ sudo ./miwifi_work.sh
(你不是用ubuntu吗?怎么是ylmfos,因为作者我喜欢雨林木风,但是3.0不是很好用,就升级到ubuntu12.04,升级之后,还是有不少ylmf的影子在里面)
[sudo] password for administrator:
ERROR: Module mt7601Usta does not exist in /proc/modules
(怎么这里有个Error?因为之前使用的是mt7601Usta这个驱动,这个只能当无线网卡,不能当AP,但它已经存在系统里,我又不想彻底删掉,所以我得先卸载它,然后再安装Ap的驱动)
Internet Systems Consortium DHCP Server 4.1-ESV-R4
Copyright 2004-2011 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Wrote 5 leases to leases file.
Listening on LPF/ra0/8c:be:be:06:23:69/192.168.199.0/24
Sending on   LPF/ra0/8c:be:be:06:23:69/192.168.199.0/24
Sending on   Socket/fallback/fallback-net
Can't create PID file /var/run/dhcpd.pid: Permission denied.
1


  

  步骤五 配置MiWiFi

  如果一切顺利,你会搜到一个
网络名 MiWiFi_SuMang
密码    52xiaomi

  PS:如果修改成你们想要的SSID和密码
方法一:修改mt7601u/etc/Wireless/RT2870AP/RT2870AP.dat ,重新编译。。
方法二:直接修改/etc/Wireless/RT2870AP/RT2870AP.dat

DSC0005.jpg DSC0006.jpg DSC0007.jpg
  

  
至此,可以开开心心地使用Linux,
也可以开开心心地让手机上网了。。
  

  如有什么纰漏,请大伙多多指教!!谢谢!! ^_^

  同样:作者也在小米论坛发布了这篇文章  【福利到】小米随身WiFi,Linux下AP热点驱动
  最后,如果它帮助了您,请大力支持,多多回复!!!谢谢!!!

  
  而Csdn的博客回复已经满足不了大家互相帮助的需求(其实这个回复系统很挫)
  随身WiFi_Linux_Ap)389615079 QQ群

  请大家踊跃加入,我们共同进步!!
  (PS 进群问问题,请把
  1.运行的脚本 和log (看你脚本是否写错。运行的log,可以看出些信息)
  2.ipconfig 和 iwconfig 的结果(看你上网用哪些网卡。有eth0,ppp0,wlan0这些)
  3.uname -a (内核信息)
  4.你PC(板子)上网的方式,是(有线?无线?还是ADSL, 甚至有vpn)
  的运行结果告诉大家,方便解决问题,谢谢 O(∩_∩)O哈哈~)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-121578-1-1.html 上篇帖子: 手机上连wifi 调试 android应用安全——(数据抓包)跟踪监控android数据包 下篇帖子: win7笔记本电脑实现wifi共享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表