OpenWRT浅尝 / 基于RAVPower-WD009便携路由文件宝的旁路网关配置

前言

近期由于个人需求,需要一台OpenWRT设备实现一些功能。所以本文主要还是为了自己后期维护/折腾留底做参考,毕竟OpenWRT这种设备只要配置完后就会到角落呆着(最多会进行重启),这后续万一有什么问题再想去折腾恢复,很多细节记不住就有点麻烦

需求分析

设备需要有的一些功能:

  • 从外网进行内网设备管理/服务访问
  • 从内网进行日常存储/关键备份
  • 24小时待命,低功耗下载
  • V了解资本主义P共产主义万岁N【建设中】

手头的设备

由于【垃圾佬穷】钱包问题,没有选择新购置一台设备,而是从已有设备身上着手,手头刚好有一台闲置设备RAVPower-WD009便携路由文件宝(RAVPower这个牌子可能比较耳熟,旗下主要产品是电源,不知道为啥会出一个这个设备)。我当初购买就是图它功能多,颜值高,支持USB-C充电,目前官网已经找不到这玩意儿了

在这里插入图片描述

它采用了MediaTek MT7628NN硬路由方案,具体参数如下:

  • CPU: 单核 32位 580MHz MIPS24KEc架构
  • RAM:64MB
  • ROM: 16MB Flash
  • 无线: MT7610E射频芯片,WIFI5
  • 有线:: 百兆以太网口 x 1
  • 拓展能力:SD卡插槽 x 1,USB-A 2.0 x 1
  • 其他:可当充电宝,支持USB-C充电

重点是OpenWRT官方竟然对这款设备有支持,这意味我可以投入开源社区的怀抱,而不用面对官方的RAV-FileHub客户端(用着其实还行,但又不是很行),设备可自定义程度更高,更能满足用户多变的需求

在这里插入图片描述

设备相关的一些操作和知识,官方有给出,我在这里记录一下

  • 进入TFTP模式:设备运行任意固件,关机状态下,按住reset键开机,松开开机键,直到地球灯常亮(同时松开reset键)即可。此模式可进行固件更新操作
  • OpenWRT重置操作:设备运行OpenWRT固件,开机状态下,按住reset键,直到地球灯开始闪烁,等待自动重启开机即可。重置后,设备会处于【出厂状态】,无线默认关闭,仅可使用网线连接,默认后台地址192.168.1.1

家庭网络拓扑图

在这里插入图片描述
具体设备和参数如下:

  • 智能网关(光猫+路由+网关/主路由)
    有线:一个光纤口,一个千兆WAN口,四个千兆LAN网口
    无线:2.4GHz Master
  • 旁路网关(本文主角)
    有线:一个WAN/LAN口
    无线:双模2.4GHz/5GHz Master/Client
  • 台式工作站(主力机)
    有线:一个千兆网口

正常情况,如果设备的性能足够强,接口足够多,其实可以当作主路由来使用,此时上图中所有有线/无线网络服务均由主路由提供,此时的性能是最好的,所有设备都处于全双工的模式

碍于RAVPower-WD009不能作主路由的位置,可以将其作旁路网关附加到已有的网络,提供拓展的功能。旁路网关功能的使用有两种方式:

  • 通过配置主路由,使得所有设备流量都经过旁路网关,这种模式旁路网关的要求较高,整体网络速度还受限于旁路网关
  • 通过修改上网终端的网关配置,自由选择流量是否要经过旁路网关,这种模式比较灵活,本文使用这种模式

在各种场景下,上网的流量分配应该做到如下

  • 主路由有线访问外网:上行流量直接到达主路由,下行流量直接到达设备
  • 主路由无线访问外网:上行流量直接到达主路由,下行流量直接到达设备
  • 旁路网关资本主义访问外网:上行流量经过旁路网关,再发送到主路由,下行流量不经过旁路网关,直接发送到设备
  • 旁路网关无线访问内网服务(内网服务由旁路网关提供):上行流量直接到达旁路网关,下行流量直接到达设备
  • 旁路网关无线访问内网服务(内网服务由旁路网关提供):上行流量直接到达旁路网关,再由旁路网关到达主路由,下行流量到达主路由后,转发给旁路网关,再转发到设备

旁路网关配置

OpenWRT固件选择

文章发布时最新版本:23.05(刷入后死机)
选择刷入版本:22.03.5
更多固件相关可以到OpenWRT官方支持页面

OpenWRT固件刷入

设备进入TFTP模式,PC同设备通过网线连接,PC配置IPv4(参数如下,地址10.10.10.x,子网掩码255.255.255.0,网关10.10.10.1,更新完后记得还原),浏览器输入10.10.10.128即可进入TFTP固件更新界面,界面中只有两个操作上传固件/固件更新,上传OpenWRT固件,执行固件更新操作,更新完成后设备会自动重启进入出厂状态

旁路网关配置流程

以OpenWRT默认出厂状态,主路由IP 192.168.1.1,子网掩码255.255.255.0/网段192.168.1.x为配置基础

  • PC仅和设备通过网线连接(不要通过无线网卡等连接其他网络),IPv4不要有其他配置(注意TFTP模式时改动过此配置,如出现不能访问,还原IP/DNS自动获取即可),访问192.168.1.1,进入OpenWRT控制台LUCI图形界面
  • 进入网络-接口配置界面,配置LAN为以下参数
    常规设置:IP获取协议为静态地址,IP地址为192.168.1.x(x=2~254,此地址为网关自身访问地址,注意不要同其他设备的IP冲突),如192.168.1.8;子网掩码为255.255.255.0(确保和自身主路由在同一网段);默认网关地址为192.168.1.1(一般都为主路由的IP地址);广播地址为192.168.1.255
    高级设置:使用自定义的DNS服务器,服务器地址为192.168.1.1(使用主路由充当DNS服务器)
    DHCP服务器:勾选忽略此接口(不在这个接口提供DHCP服务,避免和主路由IP分配策略冲突),IPv6设置中,RA服务、DHCPv6,NDP代理共三个选项,全部设置为禁用
  • 进入网络-防火墙配置界面,配置以下参数
    常规设置:关闭SYN-flood防御,关闭LAN相关的IP动态伪装(如果关闭后出现不能正常上网,可以重新启用)
  • 重启设备,将旁路网关LAN口和主路由的LAN口是用网线连接即可

旁路网关的使用

以下操作需要通过SSH连接到设备IP后进行,操作基本为安装功能插件、更改配置文件等

前置工作

国内源替换

# 替换国内源
sed -i 's_downloads.openwrt.org_mirrors.tuna.tsinghua.edu.cn/openwrt_' /etc/opkg/distfeeds.conf
# 更新国内源
opkg update

中文化支持

opkg install luci-i18n-base-zh-cn luci-i18n-opkg-zh-cn luci-i18n-firewall-zh-cn

添加SD卡槽支持

opkg install kmod-sdhci kmod-sdhci-mt7620

添加USB存储支持

opkg install kmod-usb-core kmod-usb-storage kmod-usb-storage-uas kmod-usb2

添加多种文件系统支持

opkg install kmod-fs-ext4 e2fsprogs swap-utils kmod-fs-exfat exfat-mkfs ntfs-3g kmod-fs-vfat kmod-fs-msdos

添加存储设备分区/挂载工具

opkg install fdisk block-mount

存储拓展(插入SD卡的情况)

# 【此操作会格式化SD卡,并将其分为两个分区】
# SD卡 /dev/mmcblk0
# swap分区(拓展内存) /dev/mmcblk0p1 
# ext4分区(拓展外存) /dev/mmcblk0p2

# 手动将SD设备分区
fdisk /dev/mmcblk0

# 格式化swap分区,开启swap分区
mkswap /dev/mmcblk0p1
swapon /dev/mmcblk0p1

# 格式化ext4分区,重新挂载/overlay
mkfs.ext4 /dev/mmcblk0p2
mount /dev/mmcblk0p2 /mnt ; tar -c /overlay -cvf - . | tar -c /mnt -xf - ; umount /mnt
mount /dev/mmcblk0p2 /overlay

# 配置挂载信息开机启动
block detect > /etc/config/fstab
sed -i s/option$'\t'enabled$'\t'\'0\'/option$'\t'enabled$'\t'\'1\'/ /etc/config/fstab

日常存储/关键备份

安装Syncthing,一款开源免费的分布式文件同步工具。可以实现手机处于内网环境时,指定文件夹文件同步(例如相册,工作文件等)
在这里插入图片描述
图片中的远程设备代表着手机,文件夹代表着需要同步的文件夹

软件安装

opkg install syncthing

安装完成后,Syncthing会出现无法自启动的问题,网上很多教程都是直接删除官方的init.d脚本,重新写新的启动脚本但其实问题很简单

# 只要修改/etc/init.d/syncthing官方启动脚本中的一行
vim /etc/init.d/syncthing

# 以下内容在编辑状态中操作
[ "$enabled" -gt 0 ] || return 0 #注释掉这一行即可,应该是一些向后兼容的配置导致的

# 重启应用,并开机启动
/etc/init.d/syncthing enable && /etc/init.d/syncthing restart

PC访问旁路网关8384端口,可以通过后台进行管理

设备IP:8384

内网穿透

使用DDNSTO远程控制提供的动态域名服务,实现内网穿透
在这里插入图片描述
软件安装

# 下载脚本,并运行。如果默认脚本出错,可以执行我修改后的命令
cd /tmp; wget --no-check-certificate http://fw.koolcenter.com/binary/ddnsto/openwrt/install_ddnsto.sh; cd ..
# 正常运行
ash /tmp/install_ddnsto.sh
# 安装出错运行
sed -i 's/$?/"1"/' /tmp/install_ddnsto.sh && ash /tmp/install_ddnsto.sh

软件使用
可以参考DDNSTO官方教程,官方写的很详细

24小时待命下载器

借助老牌的下载工具Aria2+AriaNG,加上DDNSTO内网穿透可以实现远程下载
在这里插入图片描述
软件安装

opkg install aria2 ariang

软件使用
网上已经有很多aria2+ariang配置教程,只要搭配DDNSTO的aria2配置教程食用即可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值