我的N1是去年入手的,当时花了100多吧,一直用来当旁路由,很稳定,性能也够用,最近闲来无事,想把N1刷成ARMBIAN服务器安装docker拉取openwrt镜像,之前玩客云就是这样玩的,顺便对比下性能有什么差距!

先看下斐讯N1的配置:

  • Amlogic S905D Cortex-A53
  • RAM:2GB,ROM:8GB
  • USB 2.0*2
  • HDMI *1
  • RJ45千兆 *1

这矿渣产品素质真是不错啊,有个千兆网卡挺好的,斐讯可惜了,做路由器挺好的企业,盒子做工也很好,大厂出品,比运营商送的盒子好多了。

N1直刷版OpenWrt

flippy大佬维护的OpenWrt固件
https://www.right.com.cn/forum/thread-4076037-1-1.html

OpenWrt刷机过程就不说了,网上教程也很多,不重复造轮子了,只要刷过一次激活了U盘启动,就可以先把固件镜像等刷到U盘里,然后插入N1的USB接口启动了,之后可以写入EMMC也可以U盘启动。

SSH登录,写入emmc命令如下:

./inst-to-emmc.sh

固件刷恩山大佬flippy维护的,一直在更新,感谢!

N1刷入ARMBIAN系统

GitHub Armbian发布页
https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/README.cn.md

Armbian(中文名:岸边) 系统是基于 Debian/Ubuntu 而构建的专门用于 ARM 芯片的轻量级 Linux 系统。Armbian 系统精益、干净,并且 100% 兼容并继承了 Debian/Ubuntu 系统的功能和丰富的软件生态,可以安全稳定地运行在 TF/SD/USB 及设备的 eMMC 里。

我也在网盘备份了,可以直接下载!

U盘写入armbian的镜像

打开写入镜像工具,把镜像写入U盘!

N1启动armbian系统

U盘要插入N1外侧的usb接口,通电、SSH登录,然后更改默认密码

twemoji-1f53b选择shell方式,我选了1

twemoji-1f53b

armbian系统写入emmc

armbian-install

选择第一个N1的代码101,然后存储方式选择ext4写入成功后!

twemoji-1f53b

拔掉U盘,重新通电,SSH登录armbian系统!

Win10&Mac命令(打开cmd或者终端):ssh root@192.168.xx.xx

第一步:换Debian源(为了能更新系统)

nano /etc/apt/sources.list                                    

复制下面代码

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

鼠标右键粘贴   Ctrl + x 保存退出

更新armbian内核:

apt-get update  是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。

armbian-update

等待代码拍完,到此,armbian准备完毕!

安装docker环境

安装docker命令:

apt install docker.io
twemoji-1f53b

选Y安装完成后 docker -v 查看下版本,确认安装成功!

docker常用命令

  1. 查看运行的容器:docker ps
  2. 停止容器:docker stop OpenWrt
  3. 删除容器:docker rm OpenWrt
  4. 删除网络:docker network rm xxxx
  5. 重启容器:docker restart OpenWrt

安装OpenWrt镜像

OpenWrt镜像地址
https://hub.docker.com/r/buddyfly/openwrt-aarch64

打开网卡混杂模式

ip link set eth0 promisc on

创建docker的虚拟网络(可用docker network ls查看已创建了哪些)

docker network create -d macvlan --subnet=192.168.100.0/24 --gateway=192.168.100.1 -o parent=eth0 macnet   

名称为macnet,macvlan模式,将100.x修改为你自己主路由的网段】

拉取OpenWrt镜像

docker pull buddyfly/openwrt-aarch64

开启openwrt容器:

docker run --name openwrt --restart always -d --network macnet --privileged buddyfly/openwrt-aarch64:latest
twemoji-1f53b

路由器后台看不见openwrt的IP地址,默认网段是:192.168.99.2,需要修改为你的网段。进入容器:

docker exec -it openwrt /bin/sh

编辑网络配置:

nano /etc/config/network

twemoji-1f53b修改成你的网段 Ctrl+x 保存退出

twemoji-1f53b

重启网络

/etc/init.d/network restart

路由器后天找到openwrt地址,登录即可

默认密码:password,默认ip:192.168.99.2(修改成你的IP)

旁路由设置:

  • IP网关设置成主路由
  • 桥接 默认,如果是直刷版,取消桥接
  • 关闭DHCP服务器、关闭IPV6
  • 添加自定义的防火墙规则:iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

原理: 上网电脑的网关设为旁路由IP,网络包先发到N1的op,op会把该网络包经过加工后转发给主路由, 但转发前需要把网络包的源地址伪装成自己的,这样主路由返回的网络包也会先返回到旁路由,再 从旁路由返回上网电脑。如果不伪装,则主路由的返回包直接返给电脑了,路由不能闭合,结果就 是旁路由一直在等返回包而等不到,造成大量的TCP连接不能关闭,最终结果是网络卡顿或是彻底 不通。

N1盒子OpenWrt性能测试

测试之前,社长感觉直刷应该性能强点吧,毕竟armbian系统也要吃点资源的?客观环境啥的都一样,跑一个油管4K和speedtest测速,具体如何,开始吧!

直刷版OpenWrt性能

twemoji-1f53b油管分数:稳定在10万左右,最高13万多,CPU最高占用率15%!

twemoji-1f53b

twemoji-1f53bspeedtest分数:测了好几次,最高338Mbps,CPU占用率最高45%

twemoji-1f53b

docker版OpenWrt性能

twemoji-1f53b油管分数:10万左右,最高14万,CPU占用率最高20%

twemoji-1f53b

speedtest分数:好几次都是460Mbps以上,CPU最高26%

twemoji-1f53b

这个结果是出乎意料了。ARMBIAN系统下N1当旁路由才是正确的打开方式吗?跟预想的完全不一样,搞不懂是为什么。

总结一下

斐讯N1作为18年的矿渣产品,到今天还是有一战之力的,在各种大神的开发的固件下,为家庭网络尽了一份力。功耗极低,2到3瓦,被动散热,做工好,单网口(旁路由、旁网关)设备感觉没有比N1更适合的产品了,直刷OpenWrt简单点,也包含docker功能,想要玩服务器ARMBIAN折腾一点,性能更强一点!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。