n1小钢炮搬家记

本文最后更新于:2024年9月16日 下午

一、搬迁之前的准备工作

  • 事先了解搬迁地的网关地址和子网掩码
  • 进入小钢炮后台 System-Network,选择 use Static IP,填入ip地址、网关地址,然后保存
  • 如果搬迁地没有登录路由或交换机后台的权限,上一步不要选择 use DHCP,不然就捞不到小钢炮的ip了

二、搬迁后遇到的各种麻烦及解决办法

  • 搬迁地的网段为172.17.0.0/16,和docker0网段冲突

    直接表现就是已建好的容器不能访问了,因此修改docker0网段为172.100.0.0/16

    修改文件 /etc/docker/daemon.json 为以下内容:

    1
    2
    3
    4
    5
    6
    7
    8
    {
    "storage-driver": "overlay2",
    "registry-mirrors": ["https://hub-mirror.c.163.com",
    "https://registry.aliyuncs.com",
    "https://registry.docker-cn.com",
    "https://docker.mirrors.ustc.edu.cn"],
    "default-address-pools":[{"base":"172.100.0.0/16","size":24}]
    }
  • docker版本的openwrt更换新版本以后,ssrplus总是无法启动或者谷歌连接测试不通

    经过百般搜索,看到这样一句话:

    选 仅常用端口(不走P2P流量到代理) 就无法启动。

    改为全部端口就可以启动了

  • openwrt里面的passwall显示谷歌连接测试失败

    解决办法:在高级设置里面,找到TCP 转发端口,将常用改为全部,再来测试就正常了

  • 关于docker版本的openwrt安装版本

    由于n1的架构是aarch64,所以在docker hub中搜索arm64架构的openwrt版本才可以安装

    先后尝试了

    unifreq/openwrt-aarch64 最高尝试到r20.10.20版本可以正常使用

    buddyfly/openwrt-aarch64

    sulinggg/openwrt 版本多,界面美化好,n1可使用registry.cn-shanghai.aliyuncs.com/suling/openwrt:armv8

  • 小钢炮自带的transmission提示错误,无法启动

    解决办法:进入 Apps-Transmission-Extra Settings 找到 rpc whitelist 添加新的本地网段

  • 关于n1无法ping通openwrt容器

    由于openwrt容器采用的是网卡混杂模式macvlan,宿主机与容器之间的网络连接是隔绝的,但是多个混杂模式之间的网络是可以相互访问的,只要在宿主机上再建立一个macvlan,然后修改路由表,使数据经由宿主机下的macvlan传输到容器内的macvlan即可。

    • 环境:

      宿主机eth0:172.17.18.18/16

      openwrt容器:172.17.18.22/16

    • 解决:以下操作均在 宿主机 中,不是在Docker容器中

      新增一个叫mynet的macvlan接口

      1
      ip link add mynet link eth0 type macvlan mode bridge

      为该接口分配ip

      1
      ip addr add 172.17.18.222 dev mynet

      启用名称为mynet的macvlan

      1
      ip link set mynet up

      修改路由表,使宿主机172.17.18.18/16到Openwrt容器172.17.18.22/16的通信全部由mynet中转

      1
      ip route add 172.17.18.22 dev mynet

      该问题解决参考了https://mopo-blog.ddnsfree.com/2021/02/23/n1-eth0-macvlan/


n1小钢炮搬家记
https://andyppang.github.io/2022/10/04/n1小钢炮搬家记/
作者
PL
发布于
2022年10月4日
许可协议