OpenWrt旁路由
一、ImmortalWRT系统及其安装
openwrt的一个分支,有好的软件源。
- luci-theme-argon(更换主题)
- luci-i18n-ttyd-zh-cn(获得terminal)
- 上网工具(选择打开其一即可)
- luci-app-openclash
- luci-i18n-passwall-zh-cn
- luci-i18n-homeproxy-zh-cn
二、旁路由设置
2.2 旁路由原理
本质是终端的网关设置:设置为主路由就不经过旁路由;设置为旁路由就经过旁路由,在旁路由上可以增加软件包或者一些其他的hook来封装原始数据包。
旁路由连接到主路由的lan口,这样一个网段内就有两个DHCP服务了。关闭主路由的DHCP服务,打开旁路由DHCP服务,那么其他接入的终端就从旁路由获取IP信息。DHCP获取到网关是DHCP服务器的IP,也就是旁路由的ip地址。这样,所有终端访问外网的流量先到网关(旁路由),旁路由再到它的网关(主路由),最终到互联网。
2.2 设置分流规则
- 配置规则。
网络 → 接口 → 编辑lan → DHCP服务器 → 高级设置 → DHCP选项,添加规则1
2
3
4tag:direct,3,10.0.0.1 # 3,指的是设置网关;direct是标签,可以随便写
tag:direct,6,10.0.0.1 # 6,指的是设置DNS
tag:proxxy,3,10.0.0.2
tag:proxxy,6,10.0.0.2 - 利用规则。
网络 → DHCP/DNS → 静态地址分配 → 选择终端,添加标签
2.3 大部分终端走主路由,少部分终端走旁路由
设置规则为:
1 | tag:!proxy,3,10.0.0.1 |
!
:不是proxy标签的,网关和dns为主路由(10.0.0.1),标签为proxy的是默认的旁路由(10.0.0.2)。所以,只要指定走旁路由的终端
的标签为proxy。
2.4 防火墙设置
一定要把网络 → 防火墙 → 区域 → lan-wan(入站、出站、转发)
的IP地址动态伪装
给选上。不然网关为旁路由的终端无法上网,即使在旁路由上可以正常访问百度等外网。和主路由类型有关系:主路由是openwrt的话,不打开也没关系。
另外,网络 → 防火墙 → 常规设置中的丢弃无效数据包
这个选项不能勾选,不然网关为旁路由的终端不能上网。因为数据包出去的时候经过旁路由,但是响应回来的时候,都不经过旁路由,无法完成握手。
三、相关概念
- 固件版本分EXT4和SQUASHFS,他们之间什么联系与区别?还分FACTORY和SYSUPGRADE,他们之间又是什么关系?
SYSUPGRADE用于保留设置的升级,提供的是增量更新;FACTORY是完整映像,用于首次刷机。SQUASHFS和EXT4都是文件系统,SQUASHFS有一个layout层,可以恢复出厂设置。
十、TODO:
- 什么是layout层?
- 用refus写入的系统只占用了很小的磁盘?为什么没有使用全部的磁盘空间?要是自己mount分区,是mount到哪个分区?
- 什么是动态伪装?