Lunatic1
V2EX  ›  Android

clash 或 sub 中的流量请求记录的功能是怎么实现的?

  •  
  •   Lunatic1 · May 8, 2021 · 15750 views
    This topic created in 2006 days ago, the information mentioned may be changed or developed.

    最近在用 clash for android 或者 sub 时因为流量请求记录或者日志功能做调试很方便就想研究一下这个功能如何实现的,但是这两个 APP 好像都不开源,有大佬知道如果实现吗?
    如果不借助代理模式只在 android 中的 fk 中做类似的功能是不是也要做类似代理的流量监控的方式?

    g80wtO.jpg

    11 replies  •  2021-05-08 16:57:09 +08:00
    Helsing
    Helsing
    May 8, 2021 via iPhone
    1
    我记得是用的一个 VPN 接口,另外 Clash for Android 是开源的:

    https://github.com/Kr328/ClashForAndroid
    yov123456
    yov123456
    May 8, 2021
    2
    这个是 clash core 做的 看 clash core 的代码吧
    GoLand
    GoLand
    May 8, 2021
    3
    TUN/TAP,虚拟网卡
    Trim21
    Trim21
    May 8, 2021
    4
    @Helsing #1 只是有仓库 不开源
    Helsing
    Helsing
    May 8, 2021 via iPhone
    5
    @Trim21 #4
    估计是最近移除,可能是要在 Google play 上正式版了,你可以看旧的 commit 是有代码的
    rammiah
    rammiah
    May 8, 2021 via Android
    6
    clash 接管域名解析,内部有 DNS 和 rDNS 模块
    ethusdt
    ethusdt
    May 8, 2021
    7
    了解过 iOS 下的大致实现逻辑, iOS 下有 NetworkExtension, 三种代理方法:

    - 网络层 API
    - 传输层 API
    - 应用层 API

    大部分都是采用应用层 API, 所有应用层网络请求都可以接管, 如果应用走系统代理(当然应用可以通过一些方法绕过系统代理), 它的请求就可以被捕获到, 所以会有记录, 也可以被处理. 你可以沿着下面这个链接看一下相关的 API:

    https://developer.apple.com/documentation/networkextension/neappproxytcpflow/1406311-readdata
    ysc3839
    ysc3839
    May 8, 2021 via Android
    8
    @Helsing 不是最近了,印象中几个月前 Clash for Android 就改为闭源的了。
    newmlp
    newmlp
    May 8, 2021
    9
    既然人家都接管你所有流量了,能分析出请求域名很正常,即使是 https 加密,请求域名是加密不了的
    wanguorui123
    wanguorui123
    May 8, 2021
    10
    VPN 代理层
    AoEiuV020
    AoEiuV020
    May 8, 2021
    11
    clash for android 以前是开源的,我这有个 fork,
    https://github.com/AoEiuV020/ClashForAndroid
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4746 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 403ms · UTC 09:17 · PVG 17:17 · LAX 01:17 · JFK 04:17
    ♥ Do have faith in what you're doing.