|
本帖最后由 pcslide 于 2024-4-22 14:51 编辑
lz小白一枚,之前觉得openwrt太复杂没功夫折腾,无耐厂商都已经转到openwrt,最近入一个中国移动rax3000m,折腾下看openwrt能否满足个人需求。因为是从padavan转过来的,主要要实现的是usb挂ssd,局域网文件共享,iptv转播到手机平板,远程文件访问。现在说下遇到的问题和我是如何解决的,诸位就当一笔记,希望抛砖引玉。
先说下,使用的固件是大佬237176253(MeIsReallyBa · GitHub)的CMCC RAX3000M/ASR3000 无线高功率固件。有些问题是共性的,比如苹果设备断网的问题,移动官方固件就存在,解决方法也就一样;有些问题可能会随固件和硬件不同,则希望对大家会有一点点启发。
(顺带一提,大佬的这版固件有集成ntfs3文件驱动,插上u盘,通过有线网络共享文件的读写可以跑满千兆。所以这方面没必要局限于用lean大大的固件。)
下面文中使用成对使用“”符号的,如没有特意说明,都是为了强调这里是参数,在实际使用时只需要填写“”号内侧的内容
1.wifi断网、卡壳的问题有多种,成因也不同,现在分类介绍原因和应对
1.1 苹果设备在wifi信号差的地方可能出现有信号但断网
这个应该是官方闭源驱动的兼容问题,就算你用官方的出厂固件一样会遇到,解决方法很简单,就是关掉自动频道选择,把整个wifi频段的首频道作为设置频道。举例,你打算用一个80mhz的频段,占用频道52-64,你就需要在频道设置里选52。我再举一个会造成问题的不当设置,比如你打算用满160mhz频段,占用频道36-64,你在频道设置里选64,这样设,苹果设备在信号不好的地方就有可能出现有信号但断网。
1.2 (苹果设备)在漫游协议802.11r下频繁切换造成的显示连接、实际断网
解决方案是关闭r漫游协议
1.3 设备长时间休眠后,ipv6断网,虽然系统显示ipv6地址还在,但实际无法联通,表现是部分消息收不到,重新打开类似淘宝这种支持ipv6的app会卡很久
这个问题因为比较隐蔽,op刚开始只是觉得设备唤醒后网络变得很卡,但测速又是正常的。表面成因是,设备休眠前ipv6正常,部分app就会优选ipv6网络,休眠中不知道什么时候ipv6就断了,此时如果哪个app消息依赖ipv6就收不到,重新唤醒后部分app无法侦测到ipv6
已经断网的事实,就会出现各种卡顿断网故障。
解决方案甲,在无线设置里把ul ofdma关闭后,部分设备ipv6断网问题就大幅度改善。
解决方案乙,请尝试 在无线设置里关闭ul mu-mimo,启用TWT。
解决方案丙,点击 网络-》接口-》设备 在br-lan上 关闭多播查询器(详情参见iptv部分),在有网桥端口特定选项得其他设备上(比如 rax0),把多播路由设到学习,这样ipv6断网就没以前那么频繁。
解决方案丁,确认wifi加密方式选定在“wpa2/wpa3”这档,然后把有问题的设备上之前记住的wifi连接删掉再重新连接。(经过git上某大侠提示,op测试发现,部分带wifi6安卓设备当使用wpa2加密方式时会发生ipv6断网)
op完成以上四步后,所有设备没有再断过ipv6。还有断网问题的朋友,有能力的,请到git交友平台 反馈
2.加载移动硬盘后,之前windows下拷入的中文名文件不显示,而通过路由器拷入的中文名文件放到windows下名字显示成乱码:
这个问题是因为路由器加载文件系统时没有正确设置utf8编码。因为我的硬盘分区是ntfs格式,使用ntfs3作为文件系统驱动,加载时增加 “-o iocharset=utf8”的参数,或者在luci网页的挂载选项里填入“iocharset=utf8”。(你也可以查阅mount命令和你要加载的文件系统的手册,来看你需要什么其他的加载参数,比如使用ntfs3加载ssd硬盘,你可以在luci挂载选项里填“iocharset=utf8,discard” ,来同时支持utf8和自动trim)
3.给网页管理界面luci增加英文界面切换选项:
理由是中文界面上的部分说明和用语可能不准确,我有时需要切换到英文参考下。登录到路由器的/etc/config目录,修改文件luci,在config internal 'languages'下面增加一行,内容是option en 'English'
4.使用msd_lite或udpxy进行iptv转播时卡顿:
(注意,我的设备运行msd_lite,且通过lan口连接上级光猫作为ap使用,固件带的是交换机子系统,所有lan口都属于交换机。如果你的设备作为路由使用,或者固件使用DSA子系统,你可以根据我的方法去尝试各种配置,但不保证有效。)
luci网页界面=》网络=》接口=》设备
找到网桥设备,通常名字是br-lan,配置=》高级设备选项
依次启用,IGMP嗅探,多播支持 这几个选项(视情况关闭多播查询器。同一子网只需要一个多播查询器,如果你把设备当ap用,上联的光猫通常开了多播查询器。)
5.作为ftp服务器的vsftpd的启用和用户权限问题:
这里有几个要点。首先,不要启用本地用户,因为本地用户(实际指openwrt系统下的用户)登录后可以访问到设备根目录,容易误操作,隐患较大。其次,ssh登录到路由器,输入“passwd ftp”给系统已经内置的ftp账户设置密码,否则,后面的虚拟用户无法登录。最后启用虚拟用户,虚拟用户只存在在vsftpd里,要注意虚拟用户名不要和openwrt下的用户同名,以免不必要的问题。你可以设置不同虚拟用户对应的目录根位置,这里文件umask默认022,你可以根据个人情况改成比如000。
6.ftp客户端文件时间怎么总是差了几小时?
请在luci界面把系统时区设置成UTC。
那为什么设置成东八区就不行呢?因为vsftpd默认告诉客户端的时间就是当地时间,而部分ftp客户端自作聪明把它当作是UTC,然后又往上多加了8个小时。
7.DHCP的灵活配置
在luci界面的dhcp配置实际有诸多限制,请活用Dynamic Host Configuration Protocol (DHCP) and Bootstrap Protocol (BOOTP) Parameters (iana.org)和[OpenWrt Wiki] DHCP and DNS examples
比如你可以在luci界面里的dhcp选项框里填入“3,192.168.1.254”来指定三方网关,或者填入“6,223.5.5.5”来指定dns服务器。你也可以通过uci set dhcp或者直接修改dnsmasq.conf给不同的用户分组,每组可以指定不同的网关配置。
8.网络共享设置(附挂载指南)
为了照顾不熟悉linux的用户,先说如何通过luci管理页挂载硬盘
先通过ssh登录确定系统正确识别到硬盘(用 disk -l 或 lsusb,另外用lsusb -t 查看usb速率是否正常。lsusb可在luci界面 系统=》软件包 里安装)
在luci界面 系统=》挂载点 找到 “配置存储设备挂载到文件系统中的位置和参数”栏 点添加,依次 勾选启用,在uuid栏选定你要挂的硬盘,然后填写挂载点(比如 “/mnt/sda1”)
先不急点保存,再在高级设置里的挂载选项中填入“iocharset=utf8”(这是为了更好支持中文),再勾选文件系统检查(虽然现在ntfs3不支持这个功能),然后点保存,再应用。
对于打算用匿名登录的,只需到 luci界面 =》服务网络共享,在共享目录栏填写路径和名称,勾选 可浏览和允许匿名用户就完成了,下面的内容可以掠过。
对于需要密码验证登陆的,请继续》》》
在luci界面 系统=》软件包 里安装 ksmbd-utils,然后ssh登录,输入 “ksmbd.adduser --add 你想创建的用户名”,系统会提示你输入两次密码确认,这样你就创建了ksmbd内的用户。
接下去回到luci界面,勾选强制 root(意思是,刚才创建的ksmbd用户登录时,ksmbd将以系统root用户身份来操作文件),这里特别注意把“允许用户”框框空着不要填乱七八糟的东西。
配置完的状态应该如下图
现在你可以用刚才创建的ksmbd账户登录共享文件夹了。(这边只介绍最基本设置,其他花式操作参见/etc/ksmbd/configuration.txt 和GitHub - namjaejeon/ksmbd-tools: ksmbd kernel server userspace utilities)
当然此时你可能需要输入路由器ip地址方式来访问共享文件夹,如果你对此不满意或者windows经常提示多个用户同时访问的错误,请继续看。
首先确定wsdd2这个包已经安装了,然后用ssh登录路由器执行 “chmod ugo+x /etc/rc.local”,再到 系统=》启动=》本地启动脚本 添加 “sleep 90” 和 “/etc/init.d/wsdd2 restart”两行内容如图,保存以后重启路由器,片刻后就能在网上邻居里看到你的路由器了。(这样做的原理是,网上邻居发现依赖wsdd2,可系统启动wsdd2时,ksmbd还没准备好,所以我们在路由器启动完成后再重启wsdd2一次,让它真起作用) (注:需要在手机平板电视的设备上自动发现共享目录的,可以尝试安装ksmbd-avahi-service,因为那些设备可能需要DNS-SD来找到共享设备,这里不展开,op没有需要也没尝试过)
接下去讲samba读写性能优化(如果你用电脑访问,用默认设置就可以,不需要优化,此处针对性能较差的移动端文件管理器)
在编辑模板里把 smb2 max read/write/trans 都增加到1024K, cache 都改成yes,如图
通过有线从rax3000m的U盘下载文件时,浏览互联网慢或者打不开?
此时你遇到的是千兆网的瓶颈、下载从rax3000m的U盘大量文件时,建议使用ftp,并在vsftp(ftp 服务器)设置中的虚拟用户列表里找到正在使用的的用户,点 编辑 , 修改最大传输速率130000000,这样下载速度限制在100MB/s,留了几十兆带宽足够上网了。
通过无线下载rax3000m的nvme固态盘文件,路由器死机或重启?
这是因为nvme固态盘耗电非常高,而rax3000m主板本身供电余量较少,就算你配5A的电源也没用,最容易的解决方法就是限制无线频宽到40mhz(这样wifi部分用电就少了,余量可以用到nvme盘上。同样的思路,你可以用两个无线路由器,一个做ap或路由,另一个关闭无线和nat做纯nas,这样不会供电不足)
异常断电重启后,看不到共享盘?
异常断电,共享盘被标记为脏盘,系统默认不会自动加载。建议使用文件系统对应的系统修复工具扫盘后再加载。对于暂时没有对应文件系统工具的,比如ntfs3驱动,建议将盘移到电脑上跑一遍修复工具,若受条件限制,则可选择在磁盘加载选项里加上force参数,但是这样做有数据损坏的风险。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|