V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
monkeyWie
V2EX  ›  编程

大佬们,求开发一个类似 SSTap 的软件的思路

  •  
  •   monkeyWie · 2022-02-18 14:40:55 +08:00 · 2216 次点击
    这是一个创建于 798 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的理解是创建一个虚拟网卡,然后接管三层流量的转发,有没有什么关键字或者开源项目我去看一看。

    10 条回复    2022-02-20 14:53:31 +08:00
    Aceycli
        1
    Aceycli  
       2022-02-18 14:49:09 +08:00
    我记得 sstap 就是开源的吧
    XiLingHost
        2
    XiLingHost  
       2022-02-18 15:18:05 +08:00
    看看 TUN 和 TAP
    mason961125
        3
    mason961125  
       2022-02-18 15:23:14 +08:00
    虚拟网卡的实现可以直接用 https://github.com/WireGuard/wintun
    Buges
        4
    Buges  
       2022-02-18 15:53:08 +08:00 via Android
    最简单的就是 tun2socks
    monkeyWie
        5
    monkeyWie  
    OP
       2022-02-18 16:54:06 +08:00
    @Aceycli 不是开源的
    monkeyWie
        6
    monkeyWie  
    OP
       2022-02-18 16:54:29 +08:00
    @XiLingHost @Buges @Buges
    谢谢,正在看 tun2socks
    z960112559
        7
    z960112559  
       2022-02-18 17:28:36 +08:00
    heiher
        8
    heiher  
       2022-02-19 23:19:09 +08:00 via Android
    tunnel to socks ,如果使用 lwip 实现 tcp 流重组,关键部分是让 lwip 支持绑定侦听整个地址空间,正好做过一个,自认为代码还算清晰,供参考:

    lwip: https://github.com/heiher/lwip
    tcp bind all: https://github.com/heiher/lwip/commit/7d1d2d9549aa31d560049b0e1a10255488e4e94f
    udp bind all: https://github.com/heiher/lwip/commit/7b341df481499a19be825f6720fbe57272860996

    socks5-tunnel: https://github.com/heiher/hev-socks5-tunnel
    monkeyWie
        9
    monkeyWie  
    OP
       2022-02-20 11:10:05 +08:00
    @heiher 谢谢大佬,但是有点看不懂,是不是需要自己实现一个迷你的 TCP/UDP 协议栈来处理啊
    heiher
        10
    heiher  
       2022-02-20 14:53:31 +08:00 via Android
    @monkeyWie 是需要协议栈,可用现成的,比如 lwip ,还需要做一些修改以支撑侦听整个地址空间。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2902 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 14:20 · PVG 22:20 · LAX 07:20 · JFK 10:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.