S905x3盒子Openwrt&Armbian

发布于 2021-03-27  2,376 次阅读


Openwrt

Openwrt源自F大固件:

[2020-10-18]★46+o版, S905x3、N1、贝壳云、我家云等op固件 - 斐讯无线路由器以及其它斐迅网络设备 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)

[2021-01-31] 52+、52+O S905x3(含x2)、S922x、贝壳云、我家云、微加云等OP固件 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)

[2021-03-21] 55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件 - OPENWRT专版 - 恩山无线论坛 - Powered by Discuz! (right.com.cn)

截至目前,部分X96_Max+刷入新主线uboot由于硬件体质问题,出现软砖。可使用旧的uboot刷+o版本固件,或者动手能力强的可对主板进行部分改造。

chmod 777 install-to-emmc.sh
./install-to-emmc.sh

luci-app-jd-dailybonus

GitHub - jerrykuku/luci-app-jd-dailybonus: Luci for JD dailybonus Script

安装依赖

opkg update  
opkg install node wget lua

如果更新ipk后无法获取二维码

rm -rf /tmp/luci-indexcache /tmp/luci-modulecache/*

打开https://bean.m.jd.com/使用手机号登录(cookie有效时间更长),按F12进入审查元素,Network-bean.m.jd.com-Headers-cookie找到cookie,会有很长的一段数字+字母,全部复制下来,粘贴到京东签到服务Cookie里

Armbian

从Openwrt刷入Armbian依然源自F大+o固件。

到U盘Boot分区根目录中根据机器型号修改uEnv.txt中相关dtb信息。

chmod 777 install-to-emmc.sh
./install-to-emmc.sh
nano /etc/network/interfaces
#修改eth0地址后CTRL+X保存并退出
reboot
install-docker.sh

开启网卡的混杂模式

ip link set eth0 promisc on
#删除macvlan
docker network rm macnet
#查看网络
docker network ls

Docker镜像加速

国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,例如:

科大镜像:https://docker.mirrors.ustc.edu.cn/

网易:https://hub-mirror.c.163.com/

阿里云:https://<你的ID>.mirror.aliyuncs.com

七牛云加速器:https://reg-mirror.qiniu.com

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):

{
  "registry-mirrors": [
    "https://mirror.baidubce.com",
    "https://docker.io",
    "https://hub-mirror.c.163.com",
    "https://registry.hub.docker.com",
    "https://registry-1.docker.io"
  ]
}

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://hub-mirror.c.163.com/"]
}
EOF

之后重新启动服务:

systemctl daemon-reload
systemctl restart docker

拉取opwrt镜像

docker pull piaoyizy/openwrt-aarch64

创建 Docker 虚拟网络

虚拟网络名称为macnet,驱动为macvlan模式,将 subnet 192.168.50.0/24修改为你自己主路由的网段,geteway 192.168.50.1修改为你自己的主路由网关

docker network create -d macvlan --subnet=192.168.50.0/24 --gateway=192.168.50.1 -o parent=eth0 macnet

启动 OpenWrt 容器

docker run --name=OpenWrt --restart always -d --network macnet --privileged piaoyizy/openwrt-aarch64:latest

查看docker运行中的容器

获取CONTAINER ID,如d4c415aa45d9

docker ps -a

修改OpenWrt容器的IP地址

进入容器命令行,d4c415aa45d9为上一步获取到的CONTAINER ID

docker exec -it d4c415aa45d9 /bin/bash
vi /etc/config/network

修改文件如下 将option ipaddr 192.168.50.11改为你想作为旁路网关的空闲地址。我的网段为192.168.50.x,共享地址为192.168.50.11

config interface 'loopback'                                                                                                                                                                                                                                                                                                                                                                                                                                                      
        option ifname 'lo'                                                                                                                                                                                                                                                                                                                                                                                                                                                       
        option proto 'static'                                                                                                                                                                                                                                                                                                                                                                                                                                                    
        option ipaddr '127.0.0.1'                                                                                                                                                                                                                                                                                                                                                                                                                                                
        option netmask '255.0.0.0'                                                                                                                                                                                                                                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
config globals 'globals'                                                                                                                                                                                                                                                                                                                                                                                                                                                         
        option ula_prefix 'fdcf:f404:63c5::/48'                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
config interface 'lan'                                                                                                                                                                                                                                                                                                                                                                                                                                                           
        option type 'bridge'                                                                                                                                                                                                                                                                                                                                                                                                                                                     
        option ifname 'eth0'                                                                                                                                                                                                                                                                                                                                                                                                                                                     
        option proto 'static'                                                                                                                                                                                                                                                                                                                                                                                                                                                    
        option ipaddr '192.168.50.11'                                                                                                                                                                                                                                                                                                                                                                                                                                            
        option netmask '255.255.255.0'                                                                                                                                                                                                                                                                                                                                                                                                                                           
        option ip6assign '60' 

ESC

:wq
/etc/init.d/network restart

同网关下,浏览器输入http://192.168.50.11/即可访问opwrt

做旁路由在 网络-防火墙-自定义规则 中加入

iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

Love is merely a madness.