小米随身WiFi,Linux下AP热点驱动(开源)_小米随身wifi,linux下ap热点驱动-程序员宅基地

技术标签: wifi  

前言

这是作者修改后的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文件



步骤二 编译驱动

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



步骤三 配置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;
}

3.编辑 sudo vim  /etc/default/isc-dhcp-server
    为 INTERFACES="ra0"



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


步骤四 加载驱动

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



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

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



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


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

同样:作者也在小米论坛发布了这篇文章  【福利到】小米随身WiFi,Linux下AP热点驱动

最后,如果它帮助了您,请大力支持,多多回复!!!谢谢!!!


鉴于很多程序猿都有这个需求,

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

我创建了(随身WiFi_Linux_Ap389615079  QQ群

请大家踊跃加入,我们共同进步!!

(PS 进群问问题,请把

1.运行的脚本 和log (看你脚本是否写错。运行的log,可以看出些信息)

2.ipconfig 和 iwconfig 的结果(看你上网用哪些网卡。有eth0,ppp0,wlan0这些)

3.uname -a (内核信息)

4.你PC(板子)上网的方式,是(有线?无线?还是ADSL, 甚至有vpn)

的运行结果告诉大家,方便解决问题,谢谢 O(∩_∩)O哈哈~)


查看评论
50楼  自由的幻影 2017-05-15 15:34发表 [回复]
你好我用的是ubuntu16.04
iwconfig
wlp3s0 IEEE 802.11abg ESSID:off/any 
Mode:Managed Access Point: Not-Associated 
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off

enp2s0 no wireless extensions.

lo no wireless extensions.

wlx00367667f4fc IEEE 802.11bgn ESSID:off/any 
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm 
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
这里360wifi2系统识别为wlx00367667f4fc
49楼  qq_35949321 2017-03-11 01:34发表 [回复]
可以正常使用。但是只有一个问题,就是每次开机后需要重新运行
sudo ./miwifi_work.sh
才可以正常发射wifi信号。不能自动启动。
48楼  xiaobohaha 2016-12-11 12:16发表 [回复]
为什么我执行成功后,没有搜到对应的ssid,但是nexus7上能搜到ESSID, why?
47楼  oncealong 2016-12-03 17:09发表 [回复]
谢谢博主,解决了小度WIFI的AP问题。
我是在Debian8.6下实验成功的。
但是有个地方和博主不一样。
配置dhcp时,sudo apt-get install dhcp3-server无法找到dhcp3-server,需要用sudo apt-get install isc-dhcp-server
46楼  Romebake 2016-05-10 15:24发表 [回复]
感谢,解决了wifi的问题
45楼  Lvhhh 2016-04-22 21:26发表 [回复]
你好,我最后一步报错是
No subnet declaration for ra0 (no IPv4 addresses).
** Ignoring requests on ra0. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface ra0 is attached. **
怎么回事呢?!
Re:  qq_35949321 2017-03-16 04:17发表 [回复]
回复Lvhhh:运行第二遍就可以了,也就是说运行两次sudo ./miwifi_work.sh 即可.
44楼  zjq19930322 2016-02-28 12:01发表 [回复]
群满了,博主,还有群吗?就想问一下想把小米wifi ap模式改成无线网卡接收wifi?
Re:  qq_35949321 2017-03-11 01:41发表 [回复]
回复zjq19930322:下载官方驱动即可。github上有。
43楼  bfh13 2016-02-27 17:42发表 [回复]
非常感谢,终于搞定了~
CentOS 7 完美解决~
Re:  SlovEnt 2016-05-05 14:34发表 [回复]
回复bfh13:bfh老师,能否共享您centos7的步骤呢,我的也是centos7,但是wifi已经发射出来,dhcp应该设置还有问题,不知道该如何进行下一步。。。
42楼  KalaloveAmy 2016-01-31 13:33发表 [回复]
多谢楼主分享,几乎成功,可是。。。
360随身wifi2代
插在台式机上
台式机是用网线链接上网,应该是eth0吧?
按照您上面的步骤,创建热点成功,在手机和笔记本电脑上都可以搜到,也可以连上,但是连上之后就是上不了网
笔记本电脑上给出的提示是:“有限的访问权限”,网络链接那个地方有黄色的叹号。提示无法连接互联网。
Re:  bfh13 2016-02-27 17:39发表 [回复]
回复KalaloveAmy:我最初同样遇到这个问题,我是根据ifconfig的结果,修改了miwork_work.sh 对应的蓝字内容。
将eth0 改成了enp0s25,也就是我上网的设备
41楼  wameige 2015-12-03 10:57发表 [回复]
ubuntu14.04测试可用
40楼  xiayu98020214 2015-08-26 10:57发表 [回复]
我现在可以,链接wifi,但是手机还是上不了网,domain-name-servers 根据什么设置的啊,
Re:  xinjianwendang3 2016-01-29 18:28发表 [回复]
回复xiayu98020214:搞清楚自己是什么上网的,是以太网还是adsl,根据自己的情况改那个miwifi_work.sh。详情看博文分割线内容。
39楼  mcl1001622 2015-07-19 17:14发表 [回复]
感谢楼主!我是在小米论坛上看到的,已经成功了~~
想问下楼主,怎么可以把小米wifi转成无线网卡模式?
我想在树莓派上用小米wifi当无线网卡用,不是开AP
38楼  sinat_24545735 2015-07-15 22:12发表 [回复]
求助:PC 有线上网,ubuntu14.04,安装过程没有报错,最终手机能搜到热点,连接热点后无法上网。求各位大神支招

运行过程中没有报错
sudo ./miwifi_work.sh 
rmmod: ERROR: Module mt7601Usta is not currently loaded
Internet Systems Consortium DHCP Server 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Wrote 3 leases to leases file.
Listening on LPF/ra0/64:09:80:67:5e:49/192.168.199.0/24
Sending on LPF/ra0/64:09:80:67:5e:49/192.168.199.0/24
Sending on Socket/fallback/fallback-net
1

iwconfig
ra0 RTWIFI SoftAP ESSID:"MiWiFi_SuMang" 
Mode:Managed Channel=11 Access Point: 64:09:80:67:5E:49 
Bit Rate=54 Mb/s 
lo no wireless extensions.
cscotun0 no wireless extensions.
eth0 no wireless extensions.

uname -a
Linux liyn-HP-ProDesk-680-G1-TWR 3.16.0-30-generic #40~14.04.1-Ubuntu SMP Thu Jan 15 17:45:15 UTC 2015 i686 i686 i686 GNU/Linux
Re:  qq_35949321 2017-03-11 01:45发表 [回复]
回复sinat_24545735:用ifconfig, 看你用什么上网,然后修改"etho"即可
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
37楼  sun529739502 2015-07-15 13:22发表 [回复]
外网绑定mac地址,小度wifi可以破解吗
36楼  sun529739502 2015-07-13 13:10发表 [回复]
关于绑定mac地址,设备上网冲突能解决吗?求大大帮助,
35楼  decker502 2015-06-02 14:35发表 [回复]
亲测可以,ubuntu15.04,就是dhcp的版本旧了,要换成下面命令
sudo apt-get install isc-dhcp-server -y

多谢楼主分享
34楼  coswh9 2015-05-26 10:07发表 [回复]
Can't bind to dhcp address: Address already in use
Please make sure there is no other dhcp server
running and that there's no entry for dhcp orbootp in /etc/inetd.conf. Also make sure youare not running HP JetAdmin software, which
includes a bootp server.
33楼  零下一度源 2015-04-28 15:05发表 [回复]
一个菜鸟问一下:
make问题怎么解决
没有规则可以创建目标clean
32楼  qsl19900126 2015-04-21 13:45发表 [回复]
看着 Can't create PID file /var/run/dhcpd.pid: Permission denied. 心里难受。。
31楼  天一涯 2015-03-10 08:35发表 [回复]
转载了你的博文,望谅解
30楼  windows20071020 2015-02-26 14:41发表 [回复]
这篇文章的方法的文章如果不行的话可以试试http://www.pppei.net/blog/post/690
Re:  duanguyuan 2015-03-29 00:40发表 [回复]
回复windows20071020:你给的这篇文章可以!!
Re:  宿莽_csdn 2015-03-13 19:12发表 [回复]
回复windows20071020:厉害!
29楼  zoupingyuan 2015-01-22 13:24发表 [回复]
我的也是这样啊 电脑黑屏
Re:  宿莽_csdn 2015-01-22 13:58发表 [回复]
回复zoupingyuan:?
28楼  惊尘子 2015-01-08 12:03发表 [回复]
哎。。。。编译运行没有问题,只要用手机一连接热点,立马kernel panic。。。。有时间再折腾下。。。
不知道楼主有没有遇到过这种情况,我的是LinuxMint 17.1, 基于ubuntu14.04的发行版,用的是miwifi
Re:  duanguyuan 2015-03-29 00:28发表 [回复]
回复惊尘子:我和你一样,mint 17.1 + miwifi。我能够搜到MIWIFI_SuMang,但是一直“正在进行身份验证”,连不上
27楼  baidu_24405551 2014-12-24 16:50发表 [回复]
楼主你好,按照你的方法在我的环境中试了下,出现了找不到ra0的设备,看上面的评论好像我是第一个碰到的。
我的系统是ubuntu12.04,用的是小度wifi,在rtusb_dev_id.c中添加了设备的id,编译加载都没问题,但是找不到ra0或者类似的设备。dmesg的消息如下,能帮忙看下吗。
Re:  baidu_24405551 2014-12-24 16:55发表 [回复]
[plain]  view plain   copy
  1. [ 1953.855741] usb 1-1.1: USB disconnect, device number 3  
  2. [ 1953.855840] rtusb_disconnect: unregister usbnet usb-0000:00:1a.0-1.1  
  3. [ 1953.855847] RtmpOSNetDevDetach(): RtmpOSNetDeviceDetach(), dev->name=ra0!  
  4. [ 1953.859715] ---> RTMPFreeTxRxRingMemory  
  5. [ 1953.859734] <--- RTMPFreeTxRxRingMemory  
  6. [ 1953.859791]  RTUSB disconnect successfully  
  7. [ 1956.392255] usb 1-1.2: new high-speed USB device number 5 using ehci-pci  
  8. [ 1956.495194] usb 1-1.2: New USB device found, idVendor=2955, idProduct=1001  
  9. [ 1956.495199] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3  
  10. [ 1956.495201] usb 1-1.2: Product: 802.11 n WLAN  
  11. [ 1956.495204] usb 1-1.2: Manufacturer: MediaTek  
  12. [ 1956.495206] usb 1-1.2: SerialNumber: 1.0  
Re:  baidu_24405551 2014-12-24 16:54发表 [回复]
[plain]  view plain   copy
  1. [ 1956.495705] === pAd = ffffc9000562e000, size = 895992 ===  
  2. [ 1956.495705]  
  3. [ 1956.495808] <-- RTMPAllocTxRxRingMemory, Status=0  
  4. [ 1956.495905] <-- RTMPAllocAdapterBlock, Status=0  
  5. [ 1956.495908] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x8  
  6. [ 1956.495909] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x4  
  7. [ 1956.495910] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x5  
  8. [ 1956.495912] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x6  
  9. [ 1956.495913] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x7  
  10. [ 1956.495914] RTMP_COM_IoctlHandle():pAd->BulkOutEpAddr=0x9  
  11. [ 1956.496518] NVM is EFUSE  
  12. [ 1956.496522] Endpoint(8) is for In-band Command  
  13. [ 1956.496524] Endpoint(4) is for WMM0 AC0  
  14. [ 1956.496526] Endpoint(5) is for WMM0 AC1  
  15. [ 1956.496527] Endpoint(6) is for WMM0 AC2  
  16. [ 1956.496528] Endpoint(7) is for WMM0 AC3  
  17. [ 1956.496530] Endpoint(9) is for WMM1 AC0  
  18. [ 1956.496531] Endpoint(84) is for Data-In  
  19. [ 1956.496533] Endpoint(85) is for Command Rsp  
Re:  宿莽_csdn 2014-12-29 22:22发表 [回复]
回复baidu_24405551:lsusb的log贴出来看看?
这里主要是查看小度wifi是否插上了电脑。。
26楼  pengchy88 2014-12-08 10:18发表 [回复]
博主帮忙看看下面这个问题,不胜感激!!

求助:腾讯全民wifi在centos 7上的配置-有限的访问权限
http://www.cncentos.com/forum.php?mod=viewthread&tid=4179&fromuid=9267
25楼  pengchy88 2014-12-04 16:47发表 [回复]
CentOS 7下,没有/etc/default/isc-dhcp-server这个文件,创建一个也不行。第三步走不通。ra0无法启用啊。
楼主对CentOS7有办法吗?

======================
3.编辑 sudo vim /etc/default/isc-dhcp-server
为 INTERFACES="ra0"
Re:  pengchy88 2014-12-08 08:36发表 [回复]
回复pengchy88:现在ra0可以启动了,而且在客户端也能搜到miwifi_sumang的信号,但是连不上去,网络无法识别,出现“有限的访问权限”
24楼  SunHeat 2014-11-26 13:30发表 [回复]
在Ubuntu 14中运行work的时候出现错误:
ERROR: Module mt7601Usta is not currently loaded

编译貌似没有错误。有很多warning在stderr上。

Linux的虚拟机。主机是Win 7 但是没法直接用,ICS被域策略禁止了,ping也有问题没法用Connectify,所以挂了虚拟机用Linux试试……
Re:  宿莽_csdn 2014-11-27 12:55发表 [回复]
回复SunHeat:仔细看博客的 输出结果解析
这个error log 是没有关系的。。。
23楼  Rememberautumn 2014-11-17 20:58发表 [回复]
找到wifi了但是链接不上
22楼  panzer8161979 2014-11-10 12:18发表 [回复]
跪谢楼主
Re:  宿莽_csdn 2014-11-13 20:30发表 [回复]
回复panzer8161979:不用谢,你也用你的力量,继续帮助别人,即可。
21楼  cosophy 2014-10-30 09:45发表 [回复]
$ sudo dhcpd3 ra0
Can't create PID file /var/run/dhcpd.pid: Permission denied.

怎么处理啊楼主
Re:  宿莽_csdn 2014-11-13 20:29发表 [回复]
回复cosophy:你没发现我的也是permission denied 吗??
木有关系的。童鞋。。
关键是dhcp是否起作用。
20楼  JerseyGood 2014-10-14 15:10发表 [回复]
正常使用了一天
后来貌似有硬件冲突,机器会突然黑屏,然后就只有关机再开机了。不知道LZ有遇到过这问题么

linux 14.04
Re:  宿莽_csdn 2014-11-13 20:28发表 [回复]
回复JerseyGood:14.04 是有当机的情况。。。
未有时间去解决。。请自己解决。。
如可以,解决完回来告诉我
19楼  hj_18 2014-10-04 14:39发表 [回复]
好吧,我刚才的脚本有个小bug,在拿回了我的 3ds ll 后测试了一遍,发现好像 iptables 也要重设,这是最后的版本

[plain]  view plain   copy
  1. #! /bin/bash  
  2.   
  3. lsmod |grep mt7601Uap  
  4. if [ $? -eq 1 ]; then  
  5.     modprobe rtutil7601Uap  
  6.     modprobe mt7601Uap  
  7.     modprobe rtnet7601Uap  
  8. fi  
  9.   
  10. #set ip  
  11.   
  12. ifconfig |grep ra0  
  13. if [ $? -eq 1 ]; then  
  14.     ifconfig ra0 up  
  15.     if [ $? -eq 0 ]; then      
  16.   
  17.         ifconfig ra0 192.168.199.1  
  18. #dhcp the network  
  19.     ps aux |grep dh[c]pd  
  20.     if [ $? -eq 0 ]; then  
  21.         killall -TERM dhcpd  
  22.     fi  
  23.         dhcpd ra0  
  24. #make if forward work from eth0  
  25.         echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward  
  26.         iptables -t filter -F  
  27.         iptables -t nat -F  
  28.         iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
  29.     fi  
  30. fi  
Re:  hj_18 2014-10-10 18:50发表 [回复]
[plain]  view plain   copy
  1. #! /bin/bash  
  2.   
  3. lsmod |grep mt7601Uap  
  4. if [ $? -eq 1 ]; then  
  5.     modprobe rtutil7601Uap  
  6.     modprobe mt7601Uap  
  7.     modprobe rtnet7601Uap  
  8. fi  
  9.   
  10. #set ip  
  11.   
  12. ifconfig |grep ra0  
  13. if [ $? -eq 1 ]; then  
  14.     ifconfig ra0 up  
  15. fi  
  16.   
  17. ifconfig ra0 192.168.199.1  
  18. #dhcp the network  
  19. ps aux |grep dh[c]pd  
  20. if [ $? -eq 0 ]; then  
  21.     killall -TERM dhcpd  
  22. fi  
  23. dhcpd ra0  
  24. #make if forward work from eth0  
  25. iptables -t nat -L |grep MASQUERADE  
  26. if [ $? -ne 0 ]; then  
  27.     echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward  
  28.     iptables -t filter -F  
  29.     iptables -t nat -F  
  30.     iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
  31. fi  
Re:  hj_18 2014-10-10 18:52发表 [回复]
回复hj_18:这回差不多了,不管是开机时插着还是中途拔下再插上,都可以连接。
Re:  hj_18 2014-10-12 12:11发表 [回复]
不对,还是要重设防火墙的
[plain]  view plain   copy
  1. #! /bin/bash  
  2.   
  3. lsmod |grep mt7601Uap  
  4. if [ $? -eq 1 ]; then  
  5.     modprobe rtutil7601Uap  
  6.     modprobe mt7601Uap  
  7.     modprobe rtnet7601Uap  
  8. fi  
  9.   
  10. #set ip  
  11.   
  12. ifconfig |grep ra0  
  13. if [ $? -eq 1 ]; then  
  14.     ifconfig ra0 up  
  15. fi  
  16.   
  17. ifconfig ra0 192.168.199.1  
  18. #dhcp the network  
  19. ps aux |grep dh[c]pd  
  20. if [ $? -eq 0 ]; then  
  21.     killall -TERM dhcpd  
  22. fi  
  23. dhcpd ra0  
  24. #make if forward work from eth0  
  25. echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward  
  26. iptables -t filter -F  
  27. iptables -t nat -F  
  28. iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
Re:  宿莽_csdn 2014-10-12 14:46发表 [回复]
回复hj_18:兄弟
你进群了吗?
QQ群(随身WiFi_Linux_Ap)389615079
你是哪位id?
我还没吸收你脚本。。
当然你可以在github上fork
重新修改。。
Re:  hj_18 2014-10-13 05:29发表 [回复]
回复宿莽_csdn:额,扣扣?等我开下virtualbox 先,说来用扣扣的时候都在vm下,汗一个。
Re:  hj_18 2014-10-13 05:31发表 [回复]
回复hj_18:我的qq是白菜心
Re:  宿莽_csdn 2014-10-13 14:18发表 [回复]
回复hj_18:看到你“白菜心”
另外QQ可以wine一个2013年的用用。。
Re:  宿莽_csdn 2014-10-07 12:18发表 [回复]
回复hj_18:兄弟,相当不错~~请加
QQ群(随身WiFi_Linux_Ap)389615079
我得重新修改脚本。。望指教~
Re:  hj_18 2014-10-10 10:05发表 [回复]
回复宿莽_csdn:这个脚本还是有点问题的,主要是在开机的时候因为分区没有加载所以不能运行,然后在插入wifi盘启动时,还是要重新设置 iptables 的,我还在继续测试,准备今晚再试试。
18楼  zzyxzz 2014-10-03 21:35发表 [回复]
您好,我用您的方法能连上AP但是不能访问网络呢。不知道是什么原因。
Re:  hj_18 2014-10-04 08:05发表 [回复]
回复zzyxzz:我修改了 /etc/udev/rules.d/70-persistent-net.rules ,加上
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="148f", ATTR{idProduct}=="760b", RUN+="/path/to/my/script"

这里的 "/path/to/my/script" ,就是我下面的脚本,把楼主的修改了一下,主要是检测了模块是否已加载,和重启 dhcpd ,我初步试了试,发现要是拔下这块卡,再接上的话,还是要加载网卡和重启 dhcpd 才能连接。
#! /bin/bash

lsmod |grep mt7601Uap
if [ $? -eq 1 ]; then
modprobe rtutil7601Uap
modprobe mt7601Uap
modprobe rtnet7601Uap
fi

#set ip

ifconfig |grep ra0
if [ $? -eq 1 ]; then
ifconfig ra0 up
if [ $? -eq 0 ]; then 

ifconfig ra0 192.168.199.1
#dhcp the network
ps aux |grep dh[c]pd
if [ $? -eq 0 ]; then
killall -TERM dhcpd
fi
dhcpd ra0
#make if forward work from eth0
iptables -t nat -L |grep MASQUERADE
if [ $? -eq 1 ]; then
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
fi
fi
fi
Re:  hj_18 2014-10-04 08:18发表 [回复]
回复hj_18:呃,回复的楼层不对啊,udev 的脚本本来是想回复楼主的。另外我发现这个驱动好像只支持 wpa tkip 不支持 wpa aes ,我的 3ds ll 就是这个问题,选择了 aes 的都连不上。
Re:  hj_18 2014-10-04 08:32发表 [回复]
回复hj_18:我看了 rt2807ap.dat 发现里面确实列举了两种加密模式,但我的 3ds ll 就是不能以 aes 的方式连接,也许要换一下顺序试试。
Re:  zzyxzz 2014-10-06 21:51发表 [回复]
回复hj_18:我设置成TKIP或者AES都不行,都是可以连接miwifi但是不能访问网络
Re:  hj_18 2014-10-10 10:10发表 [回复]
回复zzyxzz:这我也不清楚,但是我在用了自己写的脚本后,插入 wifi 盘试的时候发现 dhcpd 和 iptables 都要重新设置和启动才行,不知道你的问题是不是处在 dhcpd 的服务上了。
Re:  hj_18 2014-10-10 10:16发表 [回复]
回复hj_18:但是我用 3ds ll 看的时候,连接 ap 还是能行的。我痛苦的地方在于,在 xp 下用雷凌的原厂驱动也好,360的驱动也好,都是用 AES 加密的才行,tkip 的不行,而 linux 下正好倒过来。同一块 wifi 卡,居然在 windows 和 linux 下各只能用不同的一种加密连接,可谓奇葩。
Re:  hj_18 2014-10-04 07:58发表 [回复]
回复zzyxzz:我不清楚问题的原因,不过这是我的 ifconfig ,3ds ll 不在身边,所以数据包是零。
ra0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.1 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::2605:fff:fe15:4bd3 prefixlen 64 scopeid 0x20<link>
ether 24:05:0f:15:4b:d3 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Re:  zzyxzz 2014-10-03 21:39发表 [回复]
回复zzyxzz:我把ifconfig的结果贴了出来,不知道是否有帮助,谢谢
Re:  zzyxzz 2014-10-03 21:38发表 [回复]
回复zzyxzz:ra0 Link encap:Ethernet HWaddr 8c:be:be:1b:95:8e 
inet addr:192.168.199.1 Bcast:192.168.199.255 Mask:255.255.255.0
inet6 addr: fe80::8ebe:beff:fe1b:958e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:495 errors:0 dropped:0 overruns:0 frame:0
TX packets:29 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000 
RX bytes:41348 (41.3 KB) TX bytes:7721 (7.7 KB)
Re:  zzyxzz 2014-10-03 21:38发表 [回复]
回复zzyxzz:lo Link encap:Local Loopback 
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1119 errors:0 dropped:0 overruns:0 frame:0
TX packets:1119 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 
RX bytes:547878 (547.8 KB) TX bytes:547878 (547.8 KB)
Re:  zzyxzz 2014-10-03 21:37发表 [回复]
回复zzyxzz:eth0 Link encap:Ethernet HWaddr 00:1a:a0:ae:c6:39 
inet addr:129.12.185.185 Bcast:129.12.185.255 Mask:255.255.255.0
inet6 addr: fe80::21a:a0ff:feae:c639/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8044 errors:0 dropped:0 overruns:0 frame:0
TX packets:2955 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000 
RX bytes:2422944 (2.4 MB) TX bytes:653811 (653.8 KB)
Interrupt:16
Re:  宿莽_csdn 2014-10-07 12:32发表 [回复]
回复zzyxzz:借问兄弟。
你家是用有线 eth0 上网吗?
我遇到过adsl上网,要设置成ppp0 才可以。。。
Re:  zzyxzz 2014-10-08 18:17发表 [回复]
回复宿莽_csdn:我也是用etho0学校网络直接上网,不需要拨号。感觉很奇怪,AP的无线网络也是有的,电脑也能通过eth0上网,就是不知道为什么miwifi和eth0没连接上,请问楼主有什么建议么?
Re:  宿莽_csdn 2014-10-09 16:06发表 [回复]
回复zzyxzz:我也没有太多经验,最好实地考察下。。
入了群否?试试问问大伙~
17楼  hj_18 2014-10-03 09:09发表 [回复]
我在开机脚本中自动加载了 miwifi_work.sh 中的内容,我是把它复制到了 rc.local 中的。但是,如果我开机的时候没有插这个 wifi 盘,那就会有一串出错信息。
怎么能做到即插即用呢?是要检测网卡是否存在吗?
Re:  hj_18 2014-10-03 13:41发表 [回复]
回复hj_18:嗯,现在开始看 udev 的规则怎么写了,多年不弄都忘记了。
Re:  宿莽_csdn 2014-10-07 11:39发表 [回复]
回复hj_18:Hi,你搞定任天堂了吗?
我最近国庆回老家,没有什么网络,没有及时回复。。
你们最近如何?
我看你 @zzyxzz 说了很多,看了有些小晕~我得理理~~
csdn的回复不是很好,问题一般的都不知道如何按顺序看。。
16楼  hj_18 2014-10-02 09:32发表 [回复]
我用的是 slackware-current 自己编译的内核 3.13.1,在运行了 miwifi_build.sh 后,出现这样的错误:
mt7601u-master/src/os/linux/../../os/linux/rt_linux.c:1844:11: 错误:‘struct net_device’没有名为‘wireless_handlers’的成员
pNetDev->wireless_handlers = pDevOpHook->iw_handler;
^
然后我修改了内核的 .config 加入了 CONFIG_WIRELESS_EXT,重新编译内核,也是出现了一样的错误。
然后我 menuconfig 了内核,加入 device driver 中 wireless lan 和 ralink 驱动支持,一样出错,请问会不会是有什么必要的头文件没有包含?
Re:  hj_18 2014-10-02 11:38发表 [回复]
回复hj_18:嗯,效果拔群,可以用 3dsll 来联网对战了。
Re:  宿莽_csdn 2014-10-02 20:17发表 [回复]
回复hj_18:高手啊~~~
Re:  hj_18 2014-10-02 09:51发表 [回复]
回复hj_18:嗯,上网搜了下,现在在内核中加入 ieee 802.11 for host ap 来试试。
Re:  hj_18 2014-10-02 10:01发表 [回复]
回复hj_18:嗯,编译通过了。
Re:  宿莽_csdn 2014-10-07 17:09发表 [回复]
回复hj_18:我前段时间解决 没有wireless_handlers成员的方法,不是用重新编译内核的方法,直接将config.mk
将HAS_OSABL_OS_STA_SUPPORT=y‍ 改成 HAS_OSABL_OS_STA_SUPPORT=n
因为我们使用AP,不需要STA的功能。
可以屏蔽出错的那段代码

当然,兄弟是高手,直接编译内核。。。
15楼  yurenchen 2014-10-01 03:13发表 [回复]
改了下ssid和密码,
再用发现 在 手机连接wifi时 ubuntu 14 直接崩了,
switch back to text console, 各 tty 和 桌面 都切换不了了...

ubuntu 14.04 x64

OTZ...
Re:  宿莽_csdn 2014-10-07 17:15发表 [回复]
回复yurenchen:64位的版本,我没有试过。。
你系统崩掉,有留下啥信息不?
例如 kernel crash 的信息。。
拍个图片。。?
我新建了个群,看看大伙能否解决你问题?
随身WiFi_Linux_Ap (389615079)
Re:  yurenchen 2014-10-08 20:19发表 [回复]
回复宿莽_csdn:(⊙v⊙)嗯,谢谢,我上传了 崩溃时的截图:https://img-my.csdn.net/uploads/201410/08/1412770741_1101.jpg具体日志我需要再找一下..
14楼  yurenchen 2014-10-01 02:30发表 [回复]
ubuntu14.04 使用 gcc4.4 编译 加载驱动时报错 
Unknown symbol mcount (err 0) 
换成 gcc4.8 编译 安装完成, 正常工作,android手机已连上.

严重强烈感谢博主~
13楼  Lun 2014-09-30 15:14发表 [回复]
可不可以写一个龙芯2F笔记本下的小米wifi驱动或者360wifi2的驱动啊,感激不尽
Re:  宿莽_csdn 2014-10-07 17:22发表 [回复]
回复Lun:兄弟,你龙芯笔记本用啥系统,编译出什么错??帖个log?内核是多少??
12楼  tanyang 2014-09-30 10:48发表 [回复]
在树莓派中操作,错误如下,请指点一下QAQ
[plain]  view plain   copy
  1. ra0: ERROR while getting interface flags: No such device  
  2. Error: Module mt7601Usta is not currently loaded  
  3. ERROR: could not insert 'rtutil7601Uap': Exec format error  
  4. ERROR: could not insert 'mt7601Uap': Exec format error  
  5. ERROR: could not insert 'rtnet7601Uap': Exec format error  
  6. ra0: ERROR while getting interface flags: No such device  
  7. SIOCSIFADDR: No such device  
  8. ra0: ERROR while getting interface flags: No such device  
  9. Internet Systems Consortium DHCP Server 4.2.2  
  10. Copyright 2004-2011 Internet Systems Consortium.  
  11. All rights reserved.  
  12. For info, please visit https://www.isc.org/software/dhcp/  
  13. Wrote 0 leases to leases file.  
  14.   
  15. No subnet declaration for ra0 (no IPv4 addresses).  
  16. ** Ignoring requests on ra0.  If this is not what  
  17.    you want, please write a subnet declaration  
  18.    in your dhcpd.conf file for the network segment  
  19.    to which interface ra0 is attached. **  
  20.   
  21.   
  22. Not configured to listen on any interfaces!  
  23. 1  
Re:  宿莽_csdn 2014-09-30 14:47发表 [回复]
回复tanyang:兄弟,这个版本是给PC运行的。。
树莓派,你得重新配置makefile.inc,然后再编译。。

现在的Makefile.inc 是
#PLATFORM: Target platform
PLATFORM = PC

你可以看看这个链接
http://blog.csdn.net/q1256872588/article/details/16870065

从log看,是你的内核驱动地址,你要配置一下。。
不然加载的时候都找不到驱动。。。
解决了这个,再解别的后面的问题。。谢
11楼  JerseyGood 2014-09-29 11:05发表 [回复]
Ubuntu 14.04 LTS 成功~
感谢!
10楼  haoyayade 2014-09-23 19:04发表 [回复]
不专业了我,对不住了博主。因为14.04里面没有/var/log/messages这个文件,所以我只能拍下来。这是我屏幕打印出来的信息的链接 http://blog.csdn.net/haoyayade/article/details/39502417。
Re:  宿莽_csdn 2014-09-23 20:37发表 [回复]
回复haoyayade:暂时看不出原因。。
找到相关的链接
http://forum.ubuntu.org.cn/viewtopic.php?t=456228

另外,我想问,你用STA 的驱动还是AP的?
你可以模仿第一个链接,打印相关的log
出来给大家看看。。。
9楼  seiyaaa 2014-09-09 16:32发表 [回复]
引用“sumang_87”的评论:回复seiyaaa:我的也是ubuntu12.04
这个驱动直接运行就可以...

好用了,我上周直接下载的zip代码编译还不好使的,这次换成git clone下来编译成功了,多谢
正好研究下这个编译过程学习下
8楼  jiahao5586 2014-09-04 09:02发表 [回复]
我是小白,这个方法是不是换个发行版就不通用了?就像第三步,配置dhcp3-server,我用的fedora 20,命令根本不支持,不知道该怎么往下进行了。
Re:  宿莽_csdn 2014-09-05 20:25发表 [回复]
回复jiahao5586:其实我也是linux小白,还只是会用ubuntu,不过,fedora,都是用yum 来 代
替 apt-get你可以尝试下,另外,你可以搜索 下fedora如何进行 dhcp server的配置。。

尝试下,跨过一个又一个的坎。。你就会慢慢变成非小白。。
7楼  seiyaaa 2014-09-01 20:43发表 [回复]
遇到这个问题咋解决
$ sudo ./miwifi_build.sh 
....
make[1]: *** No rule to make target `clean'. Stop.
make: *** [clean] Error 2
removed `src/os/linux/Module.symvers'
Re:  宿莽_csdn 2014-09-01 21:31发表 [回复]
回复seiyaaa:其实问题,不在最后几行,是前面出得错。。
你是怎么运行脚本的?
你系统是什么?
log请贴多一些。。
Re:  seiyaaa 2014-09-02 19:12发表 [回复]
引用“sumang_87”的评论:回复seiyaaa:其实问题,不在最后几行,是前面出得错。。
你是怎么运行...

系统是ubutu12.04,我修改TARGET=LINUX和另外一个,然后$ sudo ./miwifi_build.sh ,有qq沟通么?解决后我再来贴出咋解决的
Re:  宿莽_csdn 2014-09-03 01:02发表 [回复]
回复seiyaaa:我的也是ubuntu12.04
这个驱动直接运行就可以,不用修改。。
我已经测试过。。至于Q,我已经在下面回复了N遍,
其实你可以看到的
6楼  qq_20240163 2014-08-30 22:16发表 [回复]
小度WiFi成功,稍微修改了下rtusb_dev_id.c
Re:  宿莽_csdn 2014-08-30 22:39发表 [回复]
回复qq_20240163:另外,如果可以的话,你发下你的id给我,
或rtusb_dev_id.c 文件给我,我更新下代码
Q 603074587
后面的同学用到小度wifi也会方便些。。谢谢。。

或者你可以github上修改代码,Pull Request,
thx
Re:  宿莽_csdn 2014-08-30 22:29发表 [回复]
回复qq_20240163:谢谢测试,我之前用糯米版的小度wifi怎么都搞不定~~
我暂时只能说,我的糯米版的有问题。。
5楼  sole1230 2014-08-30 20:34发表 [回复]
请问‘如果这步骤没有问题,可以不用看分割线下面文字“是指不出现输出结果解析里的内容吗?
Re:  sole1230 2014-08-30 20:36发表 [回复]
回复sole1230:就是我按你说的一步步来最后出现输出结果解析里的内容,也可以搜到MiWiFi_SuMang,手机可以链接但无法上网
Re:  宿莽_csdn 2014-08-30 22:34发表 [回复]
回复sole1230:你是否更改了,eth0 为你的常用网卡。。
eth0 是我的有线网卡。。

另外,请发送ifconfig信息给我。。
如果仍然不能解决问题。。我想办法。
用teamviewer 帮你看看。。。
或者请加Q 603074587
4楼  zimingjushi 2014-08-15 14:57发表 [回复]
多谢了~搞定了 360WIFI Ubuntu 12.04
Re:  宿莽_csdn 2014-08-15 22:54发表 [回复]
回复zimingjushi:不用谢,也幸好,你是ubuntu12.04
之前有个14.04的好像编译不过,我还没给他们想到办法。。

也同时谢谢你测试360WIFI,虽然我理论上知道是可以。。。
3楼  maikemicle 2014-08-12 18:56发表 [回复]
用你的方法成功驱动 360wifi 2 (kubuntu 14.04) 做ap,
就是想了解下细节东西,原版驱动DPA_MT7601U_LinuxAP_3.0.0.0_beta_20130514.tar.bz2编译之后结合 dhcp iptables 工具没有出现热点,请问要做那些修改了, 能给点线索吗?
Re:  haoyayade 2014-09-15 11:15发表 [回复]
回复maikemicle:我按照博主的教程在ubuntu14.04下也成功驱动360wifi做AP,但是时不时出现 “Kernel panic - not syncing: Fatal exception in interrupt”的情况。好像说是mt7601Usta这个驱动出现问题。请问有什么解决方法吗?
Re:  宿莽_csdn 2014-09-20 16:22发表 [回复]
回复haoyayade:兄弟,我只想说,以后回复问题,请按楼层
按顺序回复,一回上,一回下。让人看得辛苦
这种情况未遇到过。。
而且panic后,你没有把log贴出来。
我怎么看。。有木有 堆栈呢~~~
Re:  宿莽_csdn 2014-08-13 13:39发表 [回复]
回复maikemicle:你可以去看我的github对这个驱动的修改。。
https://github.com/eywalink/mt7601u/commits/master

我不是基于原版驱动来修改。。原版驱动有个大问题,就是压根没有ap的模块代码,我是在另一个大神有ap代码上,开了宏,再修改代码。。。
Re:  maikemicle 2014-08-14 08:31发表 [回复]
回复宿莽_csdn:是我脚本没混了,现在我想通过dhcp + iptables 看直接给本本做热点能不能?
Re:  宿莽_csdn 2014-08-14 09:11发表 [回复]
回复maikemicle:我估计直接用dhcp + iptables,前提是你的笔记本网卡已经变成ap。
其实有别的一些方案(hostapd),支持本身网卡直接生成ap
但是也要看网卡本身是否支持nt80211协议。。
如我的笔记本网卡intel51xx官方说支持,但是实际上却不成功
Re:  maikemicle 2014-08-13 23:13发表 [回复]
回复宿莽_csdn:thanks,!! 今天在笔记本上弄 ra0 一直无法启动,/etc/default/isc-dhcp-server INTERFACES="wlan0" 才成功,想启动下原本的无线网卡(稍稍改了下,work 脚本),结果启动的还是ra0,奇怪
Re:  宿莽_csdn 2014-08-15 22:52发表 [回复]
回复maikemicle:那你是成功了,还是没成功???
2楼  frankskidd 2014-08-10 10:32发表 [回复] [引用] [举报]
您好,请问:
rtutil7601Uap、mt7601Uap和rtnet7601Uap驱动在哪里下载?木有找到哇。。。
Re:  宿莽_csdn 2014-08-10 11:08发表 [回复] [引用] [举报]
回复frankskidd:谢谢你的反馈~~
如果你编译完后,
请看下 src/os/ 下有没有那三个文件。。
我稍后看下脚本和代码。。是否有问题。。
Re:  frankskidd 2014-08-19 22:54发表 [回复]
回复宿莽_csdn:谢谢,在os/linux目录下找到mt7601Uap,木有找到rtutil7601Uap和rtnet7601Uap。会不会是系统原因?我的是Fedora 20 在步骤三执行yum install dhcp3-server 提示没有找到该包,执行 yum install dhcp 提示已安装dhcp, /etc/dhcp目录下也木有dhcpd.conf。求大神帮忙哈!
Re:  宿莽_csdn 2014-08-21 14:39发表 [回复]
回复frankskidd:1.请发一个编译的log,到我邮箱,谢谢。。
[email protected]
2.dhcp,你得查查fedora下的dhcp配置,
自己完成那部分就可以了,跟ubuntu可能会有出入的。。
Re:  宿莽_csdn 2014-08-10 11:58发表 [回复] [引用] [举报]
回复宿莽_csdn:您好,我已经修改了脚本的bug(添加了make install )1.你可以更新miwifi_build.sh文件2.你也可以在自己在miwifi_build.sh后再与运行 make install ps:运行前记得sudo这样驱动会加载到系统的驱动目录这时再运行 miwifi_work.sh应该没有问题了。。麻烦测试下。。
1楼  落叶行健 2014-07-29 17:53发表 [回复]
不错哦,支持分享



版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hktkfly6/article/details/72886753

智能推荐

P问题、NP问题、NPC问题、NP hard问题-程序员宅基地

文章浏览阅读4.1w次,点赞50次,收藏268次。图论算法摘要1. 图的概念图一个图(graph) G=(V,E)G=(V,E)G=(V,E) 由顶点(vertex)集 VVV 和边(edge)集 EEE 组成。每一条边就是一个点对 (a,b),a,b∈V(a,b),a,b∈V(a,b),a,b∈V。有时候也把边叫做弧(arc)。有向图如果点对(a,b),a,b∈V(a,b),a,b∈V(a,b),a,b∈V是有序的,那么图就是有向的..._npc问题

【UE4 C++】大规模人群绕行避让的最优解DetourCrowdAIController如何开启_detour crowd-程序员宅基地

文章浏览阅读7.6k次,点赞8次,收藏24次。目录问题阐述与解决效果RVO Avoidance与Detour Crowd AI Controller的区别如何使用Detour Crowd AI Controller蓝图C++弃用的写法新版写法(也很简便)问题阐述与解决效果在项目存在大规模寻路人群时,很容易出现两个角色的寻路路径相冲突,就会造成这种互斥现象。使用AI ControllerUE4为此..._detour crowd

《信息系统安全》课后习题答案(陈萍)_信息系统安全第二版课后答案-程序员宅基地

文章浏览阅读1.1w次,点赞22次,收藏146次。《信息系统安全》教材(作者:陈萍,张涛,赵敏)的课后习题答案_信息系统安全第二版课后答案

Ajax跨域问题_ajax请求跨域-程序员宅基地

文章浏览阅读3.2k次,点赞3次,收藏13次。ajax 是不能跨域。那么怎么解决前端发送请求的跨域问题呢。超详细,1、设置响应头、2、通过jsonp 3、通过调用jQuery封装的jsonp 4、httpclient 5、nginx_ajax请求跨域

HTML5+CSS期末大作业:个人网站设计——响应式个人简历介绍网页(5页) HTML+CSS+JavaScript_响应 期末 作业-程序员宅基地

文章浏览阅读2.9w次,点赞68次,收藏453次。HTML5+CSS期末大作业:个人网站设计——响应式个人简历介绍网页(5页) HTML+CSS+JavaScript 期末作业HTML代码 学生网页课程设计期末作业下载 web网页设计制作成品常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 军事、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他 等网页设计题目, A+水_响应 期末 作业

python matplotlib显示图片_python 用PIL Matplotlib处理图像的基本操作-程序员宅基地

文章浏览阅读1.4k次。python 用PIL Matplotlib处理图像的基本操作_jupyter 显示matplotlib图片完全

随便推点

JAVA java学习(16)——————javaweb主流框架介绍(小结)_javaweb框架-程序员宅基地

文章浏览阅读993次。Java Web开发的用到的框架之多简直令人发指,而且因为版本的更新换代导致的问题也是层出不穷。然而这也是Web技术不断演化的结果,要么选择接受,要么引领节奏。原来常用的Javaweb框架是SSH(Struts + Spring + Hibernate)后来随着Spring的强大以及Struts漏洞上的等等问题,演变成为了Spring + SpringMVC + Hibernate/Mybatis。互联网这块比较常见的是Mybatis。再后来也慢慢演变为了Springboot + Mybatis。1. _javaweb框架

和我一起写lua - 确认操作系统-程序员宅基地

文章浏览阅读294次。最近写的lua脚本需要运行在多个平台,因而一些平台相关的属性必须区别设置。如路径分隔符。在lua中,没有找到相关判断操作系统的函数。因此相关设置一直手工设置,增加了环境配置的时间。 在luarocks模块中,有一个luarocks.site_config模块(一个lua文件),其安装时便设定了操作系统类型。因此我们可以从这个模块获取操作系统:示例:require "..._lua判断操作系统

广度优先搜索算法及其MATLAB实现_广度优先算法可行路径matlab-程序员宅基地

文章浏览阅读6.2k次,点赞6次,收藏39次。摘要广度优先搜索算法(又称宽度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。其别名又叫BFS,属于一种盲目搜寻法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。(来自百度百科)算法思想1.对图中的任..._广度优先算法可行路径matlab

微信和支付宝相关支付业务场景介绍_支付宝的应用场景-程序员宅基地

文章浏览阅读1.1w次,点赞5次,收藏38次。支付宝 当面付 条码支付 应用场景:商家使用扫码设备,扫描用户支付宝钱包上的条码/二维码,完成收款。支付流程:API列表: 接口名称 描述 API地址 alipay.trade.pay 统一收单交易支付接口 https://docs.op..._支付宝的应用场景

iphone隐藏底条_iPhone12隐藏底部横条方法 iPhone12怎么隐藏底部小白条-程序员宅基地

文章浏览阅读7.7k次。iPhone12怎么隐藏底部小白条?很多iPhone 12用户反馈在看手机或者玩游戏的时候,屏幕底部的小白横条非常碍眼,但是又不知道怎么隐藏掉,所以小编今天整理了下iPhone12隐藏底部横条方法,帮大家一键隐藏底部横条,一起来看看吧!iPhone12隐藏底部横条方法:利用“引导式访问“功能。打开 iPhone “设置”-“辅助功能”,下拉找到“引导式访问”并开启: 在使用该功能之前,建议仔细阅..._iphone玩王者荣耀怎么把下面那个横条去掉

深度Linux 安装英伟达闭源驱动,deepin20 安装英伟达闭源驱动-程序员宅基地

文章浏览阅读550次。第一步、安装深度的“显卡驱动器”在deepin v20 中默认没有显卡驱动管理器,需要命令行安装,命令如下(刚开始一直出错,当我第一次打开应用商店,就可以安装了,好神奇):sudo apt install deepin-graphics-driver-manager安装深度的“显卡驱动器”,切换到因特尔默认驱动,然后重启两次,确认切换成功后,进行下一步。第二步、卸载英伟达开源驱动如果刚刚安装好系统..._linux终端命令安装显卡驱动是闭源的吗

推荐文章

热门文章

相关标签