V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rkonfj
V2EX  ›  分享创造

[Go] 开源了另一个 P2P 网络开发库

  •  1
     
  •   rkonfj · 283 天前 · 2106 次点击
    这是一个创建于 283 天前的主题,其中的信息可能已经有所发展或是发生改变。

    地址: https://github.com/rkonfj/peerguard

    这是另一个 P2P 网络开发库。作为不可靠的传输层协议,可以开发更有意思的应用层应用。
    同时,代码树中有基于三层 TUN 设备实现了一个功能简单的 [ P2P-VPN ] 示例程序 pgcli vpn

    特性:

    • 简洁架构
    • 极高的 NAT(防火墙) 穿越成功率,并支持失败时回退到 websocket
    • 完全的 ipv4/ipv6 双栈支持
    • 很容易入手的 API (开发者)
    • 端到端加密
    • 跨平台
    • 完全开源

    发帖意图:

    1. 我热爱开源,希望大家点点 star ,支持支持。谢谢
    2. 特性中有提到极高的穿越率,这是基于理论并加少量测试得出的。更希望大家能帮忙测试测试,特别是 Tailscale,WireGuard 等 VPN 软件的使用者能参与测试(我有测试过深圳联通、电信)
    第 1 条附言  ·  283 天前
    可以在 2 台机器上运行 VPN ,快速组网:
    pgcli vpn -s wss://synf.in/pg —ipv4 100.68.0.1/24

    pgcli vpn -s wss://synf.in/pg —ipv4 100.68.0.2/24
    14 条回复    2024-05-29 20:14:15 +08:00
    hahaha121
        1
    hahaha121  
       283 天前
    不是特别明白怎么个部署方式?文档是否可在完善下?
    1423
        2
    1423  
       283 天前
    1. 基本用例做一个 tcp 隧道或者 http proxy 更容易上手吧
    2. peermap 服务器自己撸, 有没有对比过用 libp2p
    3. VS https://github.com/chenjia404/p2ptunnel 如何
    gongquanlin
        3
    gongquanlin  
       283 天前   ❤️ 1
    已 star
    rkonfj
        4
    rkonfj  
    OP
       283 天前 via iPhone
    @hahaha121 可以看看附言快速组网。服务器德部署后面出更详细文档。:)
    rkonfj
        5
    rkonfj  
    OP
       283 天前 via iPhone
    @1423 好的,谢谢。有空了,我来加相关代码和对比数据。
    zrlhk
        6
    zrlhk  
       282 天前
    看好这个用 wss 做中间协商协议的,对服务节点要求降低了,比 n2n 要轻快
    建议能否用 cf 的 worker 做中间服务,这样 p2p 会及其方便
    lozzow
        7
    lozzow  
       281 天前   ❤️ 1
    感觉是个好东西呢
    rkonfj
        8
    rkonfj  
    OP
       281 天前
    @zrlhk 好主意
    GeekGao
        9
    GeekGao  
       280 天前   ❤️ 1
    赞, 代码写的挺简洁
    sbilly
        10
    sbilly  
       268 天前   ❤️ 1
    挺不错的,关注 +1
    sbilly
        11
    sbilly  
       264 天前
    @1423 p2ptunnel 基于 go-libp2p 本身感觉是面向文件共享,新建连接速度感觉比较慢。

    https://github.com/chenjia404/p2ptunnel/blob/master/README.zh-CN.md#%E8%BF%9E%E6%8E%A5

    > 连接可能需要几秒到 1 分钟,连接成功后,会输出 Listening tcp 127.0.89.0:3389 -> 3389
    tivizi
        12
    tivizi  
       252 天前   ❤️ 1
    在用了,很稳
    kevin100702
        13
    kevin100702  
       212 天前
    没办法打洞的情况下透过服务器中转吗?
    rkonfj
        14
    rkonfj  
    OP
       212 天前 via iPhone
    @kevin100702 是的。而且服务器中转时仍然是端到端加密。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2171 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:56 · PVG 08:56 · LAX 16:56 · JFK 19:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.