Landscape 流

配置分流

文档地址:landscape flow

问题

每一组 flow 流规则都必须要一个兜底 dns 规则。如果没有兜底配置,那么所有流量都会被拒接。

1、与 sing-box 结合使用

GitHub地址:SagerNet/sing-box

文档地址:sing-box 官方文档

1.1、编写docker compose文件

可以参考下面sing-box compose 文件,只需要替换成自己的节点信息即可。

sing-box compose 文件 https://github.com/roukaixin/docker-software/blob/main/standalone/sing-box/docker-compose.yaml card image

1.1.1、获取容器的启动命令

方法一:通过 dockerfile 文件获取

通过 sing box dockerfile 文件可以知道 ENTRYPOINT 命令是 sing-box

2025-10-18_19-50001.png

方法二:通过 pull 下来镜像信息获取

使用 docker pull ghcr.io/sagernet/sing-box 下载 docker 镜像

1.1.2、下载接应程序

通俗来讲,接应程序就是用来负责转发流程。

通过releases地址下载接应程序。

2025-10-18_20-02002.png

问题

需要根据容器来下载不同的redirect_pkg_handler

1.1.3、编写容器启动脚本

start.sh

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
#!/bin/bash

sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
apk update
apk add --no-cache libgcc libelf

ip rule add fwmark 0x1/0x1 lookup 100
ip route add local default dev lo table 100

/app/server/run.sh /app/server &
/app/redirect_pkg_handler &

wait

run.sh

1
2
3
#!/bin/bash

sing-box -D "${1}/sing-box" -c "${1}/sing-box/config.json" run &

start.sh放到app/目录下,run.sh放到app/server/目录下,把sing-box配置文件放到app/server/sing-box/目录下。

信息

如果目录不存在,使用mkdir去创建

配置好这些之后,在 compose 文件中去挂载app/目录到容器中的/app/目录下并启动容器。

1.1.4、创建 flow

2025-10-18_20-10003.png

配置当前出口为sing-box容器

2025-10-18_20-13004.png

配置入口,可以配置lan口下的所有id地址,也可以根据自己需要去配置。

信息

我的软路由的lanip192.168.5.1,所以我设置为192.168.5.0/24用来匹配所以ip地址

2025-10-18_20-15005.png

配置dns规则

根据需要选择要代理的地址,需要注意需要创建一条兜底的DNS并出口指向默认流

2025-10-18_20-20007.png

2025-10-18_20-19006.png

2、与 mihomo 结合使用

信息

等有时间再去研究一下怎么使用


相关内容

0%