worldqiuzhi

如何优雅的让 BT, PT 不走代理

  •  
  •   worldqiuzhi · Feb 20, 2023 · 38701 views
    This topic created in 1360 days ago, the information mentioned may be changed or developed.

    用的 openclash ,威联通 NAS

    已知方式: 1.给 NAS IP 配置黑名单 -- 但我上面还有其他服务要使用代理

    2.openclash 只开 80 443 等常用端口 --担心各种设备出现各种网络问题

    3.使用 Bridge 或 Macvlan 给下载容器另开一个 IP 配置黑名单 --Container Station 容器工作站不支持图形化配置 Macvlan

    4.添加 tracker 域名 收藏的站多 而且担心某天某站更改了 tracker 域名 ban 号

    46 replies  •  2024-08-24 17:36:17 +08:00
    yunyuyuan
    yunyuyuan
    Feb 20, 2023
    1
    同问,我的下载机是 linux ,不知道 vlan 咋配置
    z7356995
    z7356995
    Feb 20, 2023 via Android
    2
    我是搞了两台 nas ,蜗牛的那时便宜只要 300 不到,用来挂 pt,另外一台群晖
    z7356995
    z7356995
    Feb 20, 2023 via Android
    3
    所以给 nas ip 配了黑名单
    Puteulanus
    Puteulanus
    Feb 20, 2023
    4
    3.使用 Bridge 或 Macvlan 给下载容器另开一个 IP 配置黑名单 --Container Station 容器工作站不支持图形化配置 Macvlan

    用虚拟机跑(
    Jirajine
    Jirajine
    Feb 20, 2023❤️1
    5
    这太简单了,你给服务器额外配置一个 IP 地址,然后从 bt 软件里选择绑定这个 IP 地址,再为这个 IP 地址配置规则就行了。
    kylelau
    kylelau
    Feb 20, 2023❤️1
    6
    1. https://github.com/blackmatrix7/ios_rule_script/blob/master/rule/Clash/PrivateTracker/PrivateTracker.yaml
    有规则,但不完善,很多新站没有

    2. 通常 clash 规则最后兜底走代理,但只要你前面的规则足够完善,兜底可以只配置 DST-PORT 22 、80 、443 等个别端口走代理,其他端口直连,这样不光 bt ,其他软件也可以防止误走代理

    3. 使用 - SRC-PORT,54321,DIRECT 指定 bt 软件的端口出栈全部直连,这似乎是最优雅的方式?
    xd880616
    xd880616
    Feb 20, 2023
    7
    我的默认就不走代理,IP 白名单,也设置了 NAS IP 除外
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 20, 2023
    8
    @kylelau
    第 1 条 我在考虑要不要配置 怕覆盖不全或者换了不能及时更新
    第 2 条 我不怕其他软件误走,而是怕其他软件被误拦截 很多软件和设备不是只走 80 443 出了问题都不好排查
    第 3 条倒是足够优雅 不过我现在端口都是随机的 有时候大流量好像容易封端口 倒是可以尝试放开端口段和随机端口断匹配
    lin559671
    lin559671
    Feb 20, 2023 via iPhone
    9
    我解决这种问题就是搞个无限流量的代理,直接治好了各种焦虑症
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 20, 2023
    10
    @lin559671 不担心流量 主要担心 ban 机场号或者 pt 号
    honeyjuice
    honeyjuice
    Feb 20, 2023
    11
    末尾改成
    - PROCESS-NAME,aria2c,DIRECT
    - PROCESS-NAME,BitComet,DIRECT
    - PROCESS-NAME,fdm,DIRECT
    - PROCESS-NAME,NetTransport,DIRECT
    - PROCESS-NAME,qbittorrent,DIRECT
    - PROCESS-NAME,Thunder,DIRECT
    - PROCESS-NAME,transmission-daemon,DIRECT
    - PROCESS-NAME,transmission-qt,DIRECT
    - PROCESS-NAME,uTorrent,DIRECT
    - PROCESS-NAME,WebTorrent,DIRECT
    - PROCESS-NAME,aria2c,DIRECT
    - PROCESS-NAME,fdm,DIRECT
    - PROCESS-NAME,Folx,DIRECT
    - PROCESS-NAME,NetTransport,DIRECT
    - PROCESS-NAME,qbittorrent,DIRECT
    - PROCESS-NAME,Thunder,DIRECT
    - PROCESS-NAME,Transmission,DIRECT
    - PROCESS-NAME,transmission,DIRECT
    - PROCESS-NAME,uTorrent,DIRECT
    - PROCESS-NAME,WebTorrent,DIRECT
    - PROCESS-NAME,WebTorrent Helper,DIRECT
    - PROCESS-NAME,v2ray,DIRECT
    - PROCESS-NAME,ss-local,DIRECT
    - PROCESS-NAME,ssr-local,DIRECT
    - PROCESS-NAME,ss-redir,DIRECT
    - PROCESS-NAME,ssr-redir,DIRECT
    - PROCESS-NAME,ss-server,DIRECT
    - PROCESS-NAME,trojan-go,DIRECT
    - PROCESS-NAME,xray,DIRECT
    - PROCESS-NAME,hysteria,DIRECT
    - PROCESS-NAME,UUBooster,DIRECT
    - PROCESS-NAME,uugamebooster,DIRECT
    - "DST-PORT,80,\U0001F41F 漏网之鱼"
    - "DST-PORT,443,\U0001F41F 漏网之鱼"
    - "DST-PORT,22,\U0001F41F 漏网之鱼"
    - MATCH,DIRECT

    即可
    fortynine
    fortynine
    Feb 20, 2023❤️1
    12
    @honeyjuice 路由器上的 openclash 无法获取到下面设备的程序名称
    ymmud
    ymmud
    Feb 20, 2023
    13
    bt 单独地址
    wwbfred
    wwbfred
    Feb 20, 2023
    14
    开两张网卡,BT 软件单独绑定一张,然后在网关单独给它写策略。
    alne
    alne
    Feb 20, 2023 via Android
    15
    改成白名单代理呗
    wolonggl
    wolonggl
    Feb 20, 2023
    16
    个人经验, 用的是 v2raya 透明代理模式,修改 v2raya 启动脚本,配置只代理 80/443 常见端口的,
    bt/pt 通常都是高端口应用
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 20, 2023
    17
    @wolonggl 关键不止 bt pt 用高端口啊 别的应用也有用高端口的 如果出了问题 排查都不好排查
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 20, 2023
    18
    @wwbfred 是开容器的网卡 还是系统的网卡
    ettwz
    ettwz
    Feb 20, 2023
    19
    之前弄规则总是会漏 最后还是物理隔离... OpenClash 做旁路 单独开个虚拟机挂 BT/PT 直接指向主路由
    huihuilang
    huihuilang
    Feb 20, 2023
    20
    我用了旁路由,需要代理的手动设置网关,NAS 之类的不走旁路由,保证不会有侧漏
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 20, 2023
    21
    @huihuilang 关键我不是旁路由的事 我 nas 也需要走代理 只是个别应用( BT PT )不想走代理
    montoyaf
    montoyaf
    Feb 20, 2023 via iPhone
    22
    不要用 clash 了,hello world 同样也可分流,设置仅代理常用端口即可
    skies457
    skies457
    Feb 20, 2023 via Android
    23
    有些 bt 软件可以设置 dscp ,理论上可以在路由器上靠这个来分流
    skies457
    skies457
    Feb 20, 2023 via Android
    24
    当然为了省事我选择 nas 直接做旁路由 hhhh 直接用 systemd 的 cgroup 筛选流量
    mhqschen
    mhqschen
    Feb 20, 2023
    25
    @Jirajine #5 想问下怎么额外配置一个 IP 地址?
    goodryb
    goodryb
    Feb 20, 2023
    26
    搞个虚拟机跑 pt 、bt ,IP 过滤
    dingwen07
    dingwen07
    Feb 20, 2023 via iPhone
    27
    搭一个 Hyper-V 虚拟机,只分配外部网卡进去
    farah9
    farah9
    Feb 20, 2023 via iPhone
    28
    不是可以不代理本地流量么
    MYDB
    MYDB
    Feb 20, 2023 via iPhone
    29
    macvlan 不就是最优解吗,没有图形化页面也不是什么大事吧
    J4rod
    J4rod
    Feb 20, 2023
    30
    @honeyjuice - MATCH,DIRECT 正解,不走 BT
    basncy
    basncy
    Feb 20, 2023
    31
    新建一个用户, id 设为 1010, 用此用户运行 bt 软件 iptables 按用户 id 过滤 -m owner --uid-owner 1010 -j RETURN
    参考 android 的按应用代理.
    Tink
    Tink
    Feb 20, 2023
    32
    openclash 可以根据端口代理呀
    Liku
    Liku
    Feb 20, 2023 via iPhone
    33
    搞个 routeros 想实现挺容易的
    artee
    artee
    Feb 20, 2023
    34
    ```
    script:
    shortcuts:
    nas: (src_ip == '192.168.1.20' or 'ds716' in host) and dst_port > 5000

    rules:
    - SCRIPT,nas,DIRECT
    ```

    最简单的办法不是用脚本实现么,我设置 nas 上 `5000` 以上的端口都直连,基本上就没下载流量走代理了
    piku
    piku
    Feb 21, 2023 via Android
    35
    上面说用 routeros 挺容易实现,我有不同意见。
    首先可以肯定,国内的上传下载流量是不可能过代理的。到服务器的流量一般是 cf 的,过不过代理其实无所谓。入站(上传)由于标记问题回包不会过代理。
    所以要解决的其实是从国外的 ip 下载的流量。要不就一刀切,高位端口全部直连。要不就只能做包过滤应用识别,要不就从 bt 软件禁了国外 ip ,只从国内下载
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 21, 2023
    36
    @artee 这个配置了不行 自定义规则里配置 有时候提醒我 unsupported type SCRIPT 有时候可以成功 但还是不能直连 我看 issue 说 端口控制无法控制你连接别人的端口
    honeyjuice
    honeyjuice
    Feb 21, 2023 via Android
    37
    @fortynine 那就只需要最下面几行 特定端口走代理即可
    artee
    artee
    Feb 21, 2023
    38
    @worldqiuzhi 我不确定你怎么用的,我的 clash 配置是手写的,不是用 openclash 合成出来的,模式选 fake-ip 增强,完全没有问题,如果你需要控制连接对方的端口,增加 `src_port` 的条件就好了。官方的[wiki]( https://github.com/Dreamacro/clash/wiki/Clash-Premium-Features#script-shortcut) 里面写得非常清楚
    TerranceL
    TerranceL
    Feb 21, 2023
    39
    passwall 有个 BT 分流规则,里面判断标准是是 bittorrent 协议
    opengg
    opengg
    Feb 21, 2023 via Android
    40
    docker 不是可以建 network 吗,让容器独占一个 ip ,然后 ip 策略呗?
    http://shareinto.github.io/2017/07/10/docker-ip/
    Jirajine
    Jirajine
    Feb 21, 2023
    41
    @mhqschen 手动随便选个同网段的 ip 地址配置上去就行。
    bbsingao
    bbsingao
    Feb 24, 2023
    42
    刚好我有 qnap nas ,container station 是支持 macvlan 的。
    我专门起了一个 ip 来运行 gitlab ( container )。
    worldqiuzhi
    worldqiuzhi
    OP
    Feb 24, 2023
    43
    @bbsingao 我用了 macvlan 但配置的 ipv6 pt 网站上没显示 速度也不太行 换回规则了
    Karmylr
    Karmylr
    Aug 4, 2023
    44
    换 v2raya ,创建一个直连的端口,然后 bt 客户端设置使用代理下载,填创建的端口
    vicq
    vicq
    Mar 22, 2024
    45
    pt 的 tracker 大部分都是常用端口,汇报的时候全走代理了
    stc4672544
    stc4672544
    Aug 24, 2024
    46
    tun:
    enable: true # 启用 tun
    stack: system # tun 模式堆栈,可用值:system/gvisor/mixed
    dns-hijack: # dns 劫持,将匹配到的连接导入内部 dns 模块,不书写协议则为 udp://
    - any:53
    auto-route: true # 自动设置全局路由,可以自动将全局流量路由进入 tun 网卡
    auto-detect-interface: true # 自动选择流量出口接口,多出口网卡同时连接的设备建议手动指定出口网卡
    exclude-uid:
    - 177169 #transmission UID (核心配置)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4580 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 153ms · UTC 01:30 · PVG 09:30 · LAX 17:30 · JFK 20:30
    ♥ Do have faith in what you're doing.