[转载]PT站 避免走科学流量passwall的一些网络配置
家里的网络一直是 openwrt+passwall+unraid+qbittorrent 做下载管理,在 m-team 和 zmpt 的网页上,每次看到接入 ip 有时候是本地网络,有时候又是代理,一直也没太关注,直到突然最近 m-team 判定为盒子,于是仔细设置一下网络。
问题在哪
1、 qbittorrent 的 Host 网络。unraid 上通过 docker 安装的 qbittorrent,容器开通的是 host 网络,因为 host 可以直接使用 upnp,虽然网上对安全性差一点,不过 Host 有更好的网络效率。这就导致 qbittorrent 的设置页面有很多的网络接口和 Ip 地址,服务端识别到很多的 IP,可能某次调整网络的时候,直接走了代理,就判定盒子了。
2、Tracker 服务器很多。以前因为手动在 m-team 上下载过种子,有时候 ipv4,有时候 ipv6,有时候 m-team 访问不了还换过域名,导致 Tracker 地址五花八门。如果 passwall 没有逐一配置过所有的域名,可能就一不小心,部分种子上报就走了代理。
处理方式-Bridge
1、Tracker 服务器统一,这里可以先用工具,把所有 Tracker 替换成一个同一地址。qBWebUI标签批量替换 tracker
2、修改 docker 的网络接入,从 Host 改为 Bridge。改完之后,qbittorrent 的设置页面,应该只有本地 IP 了,虽然性能可能差一点,不过这种绝对安全,愿意折腾的可以试用 macvlan。
3、qbittorrent 固定一个端口,docker 开放这个端口,然后 openwrt 上配置这个固定端口的转发,内外网统一就好了,因为 upnp 用不上了。
4、passwall 配置的直连列表,把可能的域名都加进去
m-team.cc
m-team.io
tracker.m-team.io
tracker.m-team.cc
v6tracker.m-team.io
zmpt.cc
5、规则管理里面,Sing-Box/Xray 分流规则,添加一条 QB 的规则,协议勾选 bittorrent ,优先级放到最高。
基本做完上面的操作,就可以确保 qb 所有相关访问都不会走代理了,馒头后台就只有 1 个 IP 了。
处理方式-macvlan
使用 Bridge 的好处就是简单,但是会存在一个问题,就是 qb 上,访问的请求很多会变成路由器的内网地址,例如:192.168.11.1,因为端口转发过来,qb 识别不到链接用户的真实 ip 了。所以改成 macvlan,会更合适一些
1、先确定一下自己的 网卡是否支持混杂模式,一般不是太旧的机器,太旧的内核,大概率是支持的,具体可以自行按照自己的网卡型号搜索
2、在 unraid 的 docker 设置中,自定义网络类型改为 macvlan
3、进入 unraid 的命令行,创建一个 macvlan 网络,如下图:
docker network create -d macvlan --subnet=192.168.11.0/24 --gateway=192.168.11.1 --ipv6 --subnet=fe80::/64 --gateway=fe80::8859:f2ff:fe3e:dec8 -o parent=br0 qbnet
4、修改 qb 的网络,为 qbnet。
5、至此,再开启 UPnP,基本就可以了。
20240505 更新
使用一段时间后,还是会有未知流量导致识别错误问题,将 passwall 替换成 passwall2 就正常了。具体设置如下:
添加 BT 规则
首先添加 BT 的分流规则,只勾选 bittorrent 即可。
添加白名单
在 China 规则里,添加几个 PT 站点的域名。
domain:m-team.cc
domain:m-team.io
domain:zmpt.cc
更新 Tracker 上报
qbittorrent 中,修改端口号,选择所有种子全部上报一次,至此,两个站都正常了。