如果 n1 盒子的版本>2.22,使用 adb 连接 n1,执行以下命令进行降级,否则跳过该步骤。
- 打开 adb,连接网线和电脑在一个网段,点三下打开 adb。
- 设置设备使用 fastboot
ip=192.168.1.8
adb connect ${ip}
adb shell reboot fastboot
如果不确定设备是否连接上,可以通过下面命令查看电脑连接的设备。
fastboot devices
- 使用 fastboot 刷入低版本的固件。
fastboot flash boot ./boot.img
fastboot flash bootloader ./bootloader.img
fastboot flash recovery ./recovery.img
fastboot reboot
!!! 执行完命令后,重启盒子,发现显示的版本和原来的一样,其实已经成功刷入了低版本的固件,可以开启 u 盘启动。
- 设置 n1 u 盘启动
ip=192.168.1.8
adb connect ${ip}
adb shell reboot update
- 连接 n1 的 wifi
- ssid: Phicomm_n1
- password: password
- 打开浏览器访问
openwrt
的设置页面- http://192.168.1.1
- user: root
- password: password
- 执行安装到 eMMC 命令安装 openwrt 到 n1。
刚刚开机可能没有准备好入口,等一下就有了。
旁路由的意思就是通过路由表的配置,让主路由的流量都过一次旁路由,然后旁路由做一层网关处理流量。
before:
主机 -> 主路由 -> internet
after:
主机 -> 旁路由 -> 主路由 -> internet
- 首先配置旁路由的路由策略。
- 配置 dhcp 服务器强制网段下的机械都使用旁路由的 dhcp,配置网段内的流量都打到旁路由。
3,xxx.xxx.xxx.xxx 表示 dhcp 下的设备的路由为 192.168.1.254
6,xxx.xxx.xxx.xxx 表示 dhcp 下的设备的 dns 为 192.168.1.254
- 配置接口使用的物理端口
- 配置接口使用防火墙
- 配置防火墙规则
iptables -t nat -I POSTROUTING -j MASQUERADE
- 重启
n1
,重新连接 wifi,让设备使用n1
的 dhcp 服务。
因为内网规则比较复杂,使用 clash 配置规则降低复杂度。n1 的 openwrt 固件里面带有 openclash,直接点启动就好。
注意配置 clash 的订阅网址。
配置 dns
启动成功的样子
配置好 clash 的规则需要配置 n1 进行「透明代理」。
# 透明代理 到 clash
iptables -t nat -N clash
# 保留地址、私有地址、回环地址 不走代理
iptables -t nat -A CLASH -d 0.0.0.0/8 -j RETURN
iptables -t nat -A CLASH -d 10.0.0.0/8 -j RETURN
iptables -t nat -A CLASH -d 127.0.0.0/8 -j RETURN
iptables -t nat -A CLASH -d 169.254.0.0/16 -j RETURN
iptables -t nat -A CLASH -d 172.16.0.0/12 -j RETURN
iptables -t nat -A CLASH -d 192.168.0.0/16 -j RETURN
iptables -t nat -A CLASH -d 224.0.0.0/4 -j RETURN
iptables -t nat -A CLASH -d 240.0.0.0/4 -j RETURN
# 清空 ipset 集合
ipset destroy
ipset create chinalist hash:net
# 国内白名单
iptables -t nat -A clash -m set --match-set chinalist dst -j RETURN
# 其他流量走透明代理
iptables -t nat -A clash -p tcp -j REDIRECT --to-ports 7892
iptables -t nat -A PREROUTING -p tcp -j clash
关于上文使用到的资源都在:
- 链接: https://pan.baidu.com/s/1zvKTtCdcNdjwnYjjCywkNw 提取码: bd5t