软路由相关教程
iKuai安装AdGuard
- 安装 Docker
登录爱快云,点击 插件应用 找到 插件市场

图1)
图2)
图3)再次进入 插件管理,会出现 docker 图标。

图4)- 分区

图5)| 磁盘 | 显示物理磁盘标识及容量 |
|---|---|
| 挂载路径 | 绑定业务时设置的磁盘名称,类似 Windows 中磁盘盘符 |
| 分区名称 | 磁盘分区标识,如 nda1 表示为 nda 磁盘的第一个分区 |
| 分区类型 | 类型包含主分区、逻辑分区以及未格式化分区 |
| 分区大小 | 对应磁盘分区的容量大小,单位自动换算 |
| 绑定业务 | 系统配置及系统日志分区为固定分区并标识为黄色;自定义分区可绑定5类业务,分别为普通存储、有余繁星、缓存加速、行为记录和钉钉闪传 |
- 创建 AdGuard 文件夹
创建文件夹是为了方便文件管理。
例如:我创建了一个 docker_home 文件夹,我把它用来存放 docker。

图6)在 adguard 目录中,创建 workdir 目录和 confdir 目录。(安装 adguard 镜像时用来设置安装目录)

图7)- 开启 Docker

图8)
图9)填写镜像库 URL 的地址(因为目前 docker 镜像地址被封,所以我用的是手动上传镜像文件的方式),如果你是用拉取镜像的方式,填一个你能访问的地址。

图10)- 获取 AdGuard 镜像
找一台服务器,运行 docker pull adguard/adguardhome 命令拉取镜像。

图11)执行 docker save -o adguardhome adguard/adguardhome:latest 命令保存 docker 镜像为 .tar 文件。
|
|
你在哪个目录执行 docker save -o adguardhome adguard/adguardhome:latest 命令, .tar 文件就保存在那个目录,将.tar 文件下载下来即可。
|
|
- 配置 Docker
6.1 配置 Docker 网络

图12)IPv4 地址随意填,但是 IPv4 网关要跟着 IPv4 地址一起变。
例如:
- IPv4 地址:xxx.xxx.xxx.0/24
- IPv4 网关:xxx.xxx.xxx.1

图13)发现没有 IPv6,F12 打开控制台,将 style="display: none;" 删除掉。

图14)我设置的是 fd32::/64,你们也可以设置其他的,比如 fe00::/64 等,但是不要设置 fe80::/64。

图15)6.2 上传镜像
在 系统设置 > 磁盘管理 > 文件管理 中上传自己的镜像。

图16)
图17)
图18)
图19)粘贴地址后,点击确认。

图20)6.3 创建容器

图21)容器配置
- 容器名称:随便,我这里使用
adguard - 内存占用(M):一般为
256 512 1024 2048(根据自己的需要配置,我这里使用1024) - 选择镜像文件:
adguard/adguardhome:latest - 选择网络接口:刚刚配置的,我这里是
doc_1(如果配置的名称是cfbk他会加上doc_,变为doc_cfbk) - IPv4地址:我在接口管理中设置的是
192.168.10.0/24,那么选一个同网段的地址,填192.168.10.10 - IPv6地址:我在接口管理中设置的是
fd32::/64,那么选一个同网段的地址,填fd32::2,fd32::1已经作为网关使用了,不填也可以,会自动分配 - 开机自启:选择上(要不爱快
dns设置上docker容器不启动,那dns解析不到东西就上不了网了)

图22)| 源路径 | 目标路径 |
|---|---|
自己设置的路径,我的是 /docker/Docker/docker_home/adguard/workdir |
/opt/adguardhome/work |
自己设置的路径,我的是 /docker/Docker/docker_home/adguard/confdir |
/opt/adguardhome/conf |
查看是否已启用

图23)- 配置 AdGuard
默认端口是 3000,导航栏输入 192.168.10.10:3000 访问。
7.1 常规设置
- 用 AdGuard【家长控制】服务:如果家中有尚未成年的孩子,建议开启,屏蔽成人内容。
- 强制安全搜索:在
Bing、Google、Yandex、YouTube等网站上强制使用安全搜索,屏蔽NSFW内容。

图40)7.2 DNS 设置

图24)上游DNS服务器

图25)
|
|
- 负载均衡:使用加权随机算法来选择最快的服务器,也就是随机选择一个上游
DNS服务器中的一个进行解析请求,哪个延迟低就更偏向于用哪一个。 - 并行请求:同时请求所有上游 DNS 服务器,取最快给出的响应结果,所以解析速度很快。在上游
DNS服务器设置合理的情况下属于万金油方案,解析速度和访问速度都很快。所以也非常适合上游DNS服务器连接延迟大和不稳定的情况。 - 最快的
IP地址:同时请求所有上游DNS服务器,在所有响应结果中选出延迟最低且可用的IP。因为要等待所有上游DNS服务器响应结果,而且还要测试IP延迟及可用性,所以解析速度会很慢。只适合上游DNS服务器延迟特别低且网络非常稳定的场景,否则实际使用中可能会遇到首次打开网页非常慢,甚至可能打不开,要多刷新几次。再者低延迟IP不一定速度就快,还要看实际负载情况,所以这个方案的实际可用性是最差的。
Bootstrap DNS服务器
Bootstrap DNS 服务器(引导 DNS 服务器)的作用只是解析上游 DoT/DoH 技术 DNS 服务器的域名,所以这里需要填写使用 UDP 协议的传统 DNS 服务器 IP 地址。
前两个优先选择自己本地运营商 DNS
|
|
测试上游 DNS -> 应用

图26)DNS服务配置
- 速度限制:0
- 使用 EDNS :前面提及的上游
DNS服务器都是支持EDNS (ECS)的,它有助于获取到更合适的CDN节点,建议勾选。 - 使用 DNSSEC : 用于效验
DNS记录的签名,防止 DNS 缓存被投毒,建议勾选。勾选后会在日志页面请求列显示小绿锁图标。 - 禁用 IPv6 :丢弃
IPv6的DNS查询。在本地网络和网站都支持IPv6会优先使用IPv6去访问网站,但目前IPv6的建设还处于初级阶段,大多数地区的IPv6网络体验都一般。还有一些代理软件对IPv6支持不佳。如果对此没有特殊需求,那么直勾选即可,这样既不影响BT软件连接IPv6网络,又可以优先使用IPv4来上网。如果只有IPv4,那么是否勾选没有区别。

图27)DNS缓存配置
TTL (Time To Live):存活时间,放在 DNS 解析中意为一条域名解析记录在 DNS 服务器中的存留时间,单位是秒。
正常情况下 TTL 默认 0 即可,即从上游 DNS 服务器获取 TTL 值。如果你所部署的网络环境到上游 DNS 服务器的延迟比较高,那么可以适当增加 TTL 值,让缓存更持久,短时间内请求同样域名的解析会直接从缓存中读取,实现秒解析。不过 TTL 值不宜过大,不然会导致记录不能及时更新,结果是网站无法正常打开。目前多数域名的 TTL 值普遍在 300 以内。

图28)7.3 DNS 封锁清单
过滤规则地址:https://github.com/sbwml/halflife-list
- anti-AD 命中率最高列表 https://cdn.jsdelivr.net/gh/privacy-protection-tools/anti-AD@master/anti-ad-easylist.txt
- 合并自乘风视频广告 https://cdn.jsdelivr.net/gh/sbwml/halflife-list@master/ad.txt

图29)- DHCP 和 DNS 设置
DNS 地址设置为 AdGuard 的地址。

图30)
图31)首选 DNS 地址写 AdGuard 的地址,如果在创建容器的时候设置了 IPV6 地址,就用哪个地址,备选 DNS 地址设置一个公共的作为备用。

图35)- IPV6 / ACL 规则
9.1 iKuai 开启 IPV6

图32)点击 确定 后,过一会就会有 IPV6 地址。

图33)在 wan 口有 IPV6 地址后,下面的 lan 口也会有 IPV6 地址。

图34)9.2 开启 ACL 规则(对自己的内网实现基本的防护)
第一条规则:禁止所有外网的 IPV6 访问
- 方向:转发,转发就是
wan口转到lan口,外面的数据从wan口进来,转发到lan口,我们把这个方向阻断 - 连接方向匹配:原始方向,也就是直接从
wan口进来的

图36)
图37)第一条规则会导致内部的 IPV6 无法访问外部,所以需要建立第二条规则,让内部的 IPV6 访问外部。
原理:先建立一条规则全部阻断,其次如果再建立允许规则的话,允许规则的权限是要大于阻断规则的。
第二条规则:允许内部的 IPV6 访问外部
- 连接方向匹配:关闭,代表对方向没有什么要求

图38)
图39)Glinet搭建内网脚本服务器
访问 https://github.com/wukongdaily/gl-inet-onescript/discussions

图41)
|
|
对于 MT3000/2500/6000 (ssh 连接到路由器内,在路由器内执行)
|
|
对于 be3600 (ssh 连接到路由器内 在路由器内执行)
|
|
在执行脚本前,先检查时区和版本

图42)查看 高级设置,没有装 LuCI 的,先装一下 LuCI

图43)
图44)安装 iStoreOS 风格化

图45)安装个性化 UI 辅助插件

图46)
图47)GL-MT 3000插件
- 配置软件源
系统 - 软件包 - 配置OPKG
|
|
最好同时只用一个,我在使用时,同时配置多个,搜索
iptables-mod-socket搜不出来,最后只保留了一个软件源,就搜出来了
- 下载 iSotreOS
在筛选器中输入 luci-app-store

图48)
图49)- 获取安装包
地址:https://github.com/AUK9527/Are-u-ok/tree/main/apps

图50)- 安装

图51)
图52)
图53)安装缺少的依赖

图54)
图5)- 添加订阅

图56)Opnsense
物理机安装
System architecture选择amd64Select the image type选择dvd(iso)Mirror Location选择Peking University,即北京大学镜像站。

图57)使用 Ventory 制作启动盘
小主机有 4 个网口,分别是 ETH0、ETH1、ETH2、ETH3,将光猫网线插入 ETH3 作为 WAN 口。

图58)
图59)
图60)会自动跑一段代码

图61)
|
|

图62)
|
|

图63)
|
|

图64)
|
|

图65)
|
|

图66)
图67)
图68)确认安装的硬盘,两个选项,一个是物理机,一个是 Ventory 的制作启动盘。

图69)
图70)
图71)
图72)
图73)
|
|

图74)基本设置
- 光猫出来的线 -> 小主机
ETH3 - 小主机
ETH0-> 电脑网口
控制面板 -> 网络和 Internet -> 网络和共享中心 -> 以太网

图75)
图76)
图77)
图78)
|
|

图79)设置语言为简体中文

图80)添加接口、网桥
添加接口 igc1、igc3

图81)
|
|

图82)
|
|

图83)
|
|

图84)
图85)
图86)
图87)
|
|

图88)添加防火墙
|
|

图89)DHCP

图90)
图91)
|
|

图92)修改电脑网络IPV4为自动

图93)LAN 口绑定网桥
将网线从 ETH0 拔出插入到 ETH1
访问 http://192.168.8.1 进入 web 管理页面
把 LAN 口的 DHCP 关闭

图94)
|
|

图95)
图96)把 LAN 口桥接上

图97)PPPoE 拨号
|
|

图98)
图99)流量分析
安装 Redis 和 os-ntopng 插件

图100)
图101)
图102)
图103)访问 3000 端口自动路由到 3090,用户名和密码是 admin

图104)
图105)