欢迎来我的个人网站查看原文
小米wifi设置外网访问文件
最近闲在家里没什么事,折腾一下家里的wifi,先说一下基本情况:
- 设备:小米wifi3,可外接一个USB设备
- 目标:能实现外网访问USB设备上的文件,实现上传下载
- 应用:家里的智能盒子可以局域网访问USB设备文件,从而实现我远程上传电影家长在家直接观看
基本步骤
注意:刷入开发者版本之后的路由器会失去保修,所以在保修期内的小伙伴请谨慎尝试
确认IP为公网IP
首先登陆miwifi.com(局域网内会自动解析为路由的后台管理地址),查看当前的IP地址,确定是否为公网地址(常见的如10.x.x.x,192.168.x.x这种就属于内网地址,只能内网访问)。
假如发现自己的地址是内网地址,那么就需要打电话给运营商申请换为公网地址,常见的理由就是家里装监控需要之类的。注意有的运营商会偷换概念,说固定地址需要拉专线,加钱之类的话,注意我们要的是公网地址不是固定地址(当然不差钱的话直接上固定地址是最好的),公网地址是不需要加钱的。当初签合约的时候本来就没有规定是内网地址,只是由于IPv4的地址紧缺,所以有的运营商会给你分配内网地址以节省资源。
牢记,换公网地址是免费的!免费的!
设置DDNS
获得了公网地址之后你会发现家里的IP实际上是在经常变化的,这就是之前说的固定地址和非固定的区别。IP地址动态变化的话对于我们访问来说十分麻烦,所以这里还需要设置一下DDNS(Dynamic Domain Name Service)。DNS大家都知道,就是把一个域名解析到一个静态的IP地址上面,而DDNS其实就是动态DNS,把一个固定的域名解析到一个动态的IP地址上面(具体原理可以大致理解为IP地址每次变化都会给域名解析提供商发送一条消息,然后他们就会将域名解析到新的IP地址上面)。
小米路由本身就支持4个DDNS的服务商:
- 花生壳
- 公云
- Dyndns
- No-ip
后面装了插件之后还可以支持"阿里云DDNS"。
这里我选用的是花生壳,基础版本免费就可以了。基本流程如下:“注册登录花生壳 —> 控制台 —> 域名(壳域名)”,记住壳域名,然后切换到小米路由后台管理界面配置DDNS:
- 用户名和密码输入花生壳的账户
- 主机名称输入壳域名
- 状态检查5分钟,强制更新24小时(这两个参数可以根据自己的需求进行修改)
如何检测是否成功
小米路由管理界面显示“连接正常”一般就已经成功解析了,这时候可以尝试使用host
指令验证一下,打开terminal(linux或者mac),输入host <你的壳域名>
,看看输出的IP地址是否为你家宽带当前的IP地址即可。
刷入开发者版本
万事俱备只欠东风,现在我们将路由器刷为开发者版本并开启SSH,这样才能装各种各样的插件。首先登录路由管理界面,查看路由当前系统版本:
如图,如果已经是开发者版本则可以跳过该部分,如果是稳定版,请继续往下看。访问这个地址,如下图所示,切换到ROM界面。
找到自己符合自己路由的开发版系统,下载下来。
然后回到路由管理界面,“常用设置 —> 系统状态 —> 手动升级 —> 选取刚下载的rom包”然后升级,等待路由重启升级完毕后,就可以正式开始折腾了!
开启SSH功能
系统升级为开发者版本之后,我们就可以着手安装SSH插件了,访问这个地址就可以看到你的账号绑定的路由设备和对应的root密码(记住这个密码)。
下载工具包,然后按照官网安装流程:
- 请将下载的工具包bin文件复制到U盘(FAT/FAT32格式)的根目录下,保证文件名为
miwifi_ssh.bin
; - 断开小米路由器的电源,将U盘插入USB接口;
- 按住reset按钮之后重新接入电源,指示灯变为黄色闪烁状态即可松开reset键;
- 等待3-5秒后安装完成之后,小米路由器会自动重启,之后您就可以尽情折腾啦 :)
路由重启之后,Linux/Mac直接打开terminal,Windows可以下载一个putty;输入ssh 192.168.31.1
或者ssh miwifi.com
,并输入之前记录的root密码。正常情况下,就会看到雷总金句"Are u OK"了。
如果ssh提示密码错误,很可能是没有使用root账户登录,可以使用该指令ssh miwifi.com -l root
指定账户名称。
安装插件
确保能SSH连接上路由器之后,我们就可以着手安装各种各样的插件了,这里我们使用MixBox这款插件管理器(是旧款Monlor Tools
的升级版)。根据官网教程,可以使用如下命令一键安装
sh -c "$(curl -kfsSl https://cdn.jsdelivr.net/gh/monlor/mbfiles/install.sh)" && source /etc/profile &> /dev/null
安装成功之后,命令行里面输入mixbox
就可以打开插件管理界面
然后根据提示,安装httpfile
插件,即可使用网页管理路由器外接U盘里面的文件,外网情况下可以使用前面配置的域名进行访问。至此,实现了所有功能,以后家长想看什么电影电视剧我都可以直接远程上传到家里的wifi上面了。
注:如果想查看外接U盘的路径可以用这个指令df -h
还有很多其他的插件,有兴趣的同学可以自行安装来玩耍。